Книга «Using & Managing PPP» посвящена протоколу PPP (Point to Point Protocol) - ключевой технологии организации удаленного подключения к Internet. Чтобы понять, насколько важен PPP, достаточно сказать, что каждый, кто, покупает карточку доступа к Internet от MMT или «МТУ-Информ» или заключает договор на подключение Dial-Up с Internet-провайдером просто обречен на использование этого протокола. Если у пользователя Dial-Up не устанавливается соединение с сервером или он не может получить доступ за пределами сети провайдера, лицезрея на экране компьютера ошибки протокола соединения, то эта книга для него. Если администратор сети настраивает сервер удаленного доступа или подключает свою локальную сеть к сети провайдера, то он просто должен прочитать эту книгу.
Книга состоит из шестнадцати глав и двух приложений, в которых подробно и основательно излагаются как теоретические основы протокола, так и его практические реализации для различных программно-аппаратных платформ.
В первой главе автор излагает исторические аспекты вопроса и вводит читателя в мир обмена данными в компьютерных сетях. Здесь рассматривается возможность сопряжения ПК друг с другом и способы подключения терминалов к так называемым центральным компьютерам. Отдельно упоминаются такие пакеты как Kermit, Xmodem, Ymodem и Zmodem, а также сеть ARPANET, отмечающая сегодня свое тридцатилетие. Упоминаются также и сети X.25. Отдельный раздел посвящен роли и значению протокола SLIP на ранних стадиях развития Internet.
Как логическое продолжение исторического экскурса автор преподносит протокол PPP. При этом он перечисляет, какие задачи этот протокол позволяет решить гораздо успешнее, чем его предшественники: мультиплексирование сетевых протоколов, настройку соединений, детектирование ошибок, компрессию и коррекцию ошибок, настройку межсетевых соединений (автоматическое получение адресов), аутентификация. Далее разбираются основы межсетевого обмена и традиционная модель OSI. Впрочем, так начинается любая книга по сетевым технологиям, однако вступление достаточно лаконично и ориентировано главным образом на то, чтобы показать место PPP в стеке сетевых спецификаций и роль этого протокола как средства обмена данными поверх последовательных соединений.
Вторая глава - разбор тонкостей работы последовательных интерфейсов, для которых собственно и был разработан протокол PPP. Автор подробно разбирает спецификацию RS232, понятия DTE (Data Terminal Equipment), DCE (Data Communication Equipment), форматы данных при обмене через последовательные порты, контроль потоков данных (Flow Control) и т.п. Особый раздел отведен обсуждению сигналов управления модемами. Для каждого сигнала приводится его краткое описание и примерная реализация их отображения.
Отдельно в книге рассмотрен вопрос настройки драйверов работы с портами. Значительное внимание уделено Unix-решениям. Так для команды STTY приводятся возможные параметры, с которыми она может исполняться в конкретных условиях эксплуатации. Специальный раздел отведен модемам - приводится схема взаимодействия модема с последовательным портом и с другим модемом. Очень популярно разобраны команды настройки модема. Протоколы модуляции и демодуляции обсуждаются автором в сравнении друг с другом. В таком же ключе разбираются и протоколы коррекции ошибок и сжатия данных.
После столь фундаментального ликбеза автор в третьей главе приступает к обсуждению собственно протокола PPP. Здесь обсуждаются не подробности работы, а общие принципы функционирования обмена данными при PPP. Специально подчеркивается, что PPP - это не только протокол для межсетевого обмена в рамках TCP/IP сетей, но и средство для инкапсуляции других протоколов межсетевого обмена. Фазы работы протокола выделены в отдельный раздел, и представлены ясной и простой диаграммой взаимосвязи. Особо ценно в ней то, что все фазы обмена трактуются в терминах опций настройки и иллюстрируются трассами отладочной информации - пользователь или администратор может использовать эту информацию в качестве справки. Глава заканчивается разделом о том, чего PPP не обеспечивает. Часто это информация бывает для пользователя и администратора не менее ценной, чем информация о возможностях и позволяет не тратить сил и ресурсов на выжимание из протокола возможностей, нереализуемых в принципе.
Радует, что в четвертой главе, посвященной стеку TCP/IP автор не стал излагать истины, кочующие из одной книги O?Reilly в другую, а сосредоточился на специфике PPP в рамках стека.
В пятой главе речь идет о специфике настройки PPP для работы с различным оборудованием и системным программным обеспечением - любители сравнительных таблиц найдут здесь богатую пищу для размышлений. В зависимости от назначения автор выделяет различные типы коммуникационного оборудования, классифицируя его по функциям: серверы удаленного доступа, маршрутизаторы, Unix-серверы, и ПК. Кроме аппаратуры анализу подвергается и прикладное программное обеспечение, которое обсуждается с позиции настройки, управления и отладки PPP-соединения. Большое внимание уделено реализациям протоколов аутентификации.
Начиная с шестой главы, читатель имеет дело с сугубо практической информацией. Здесь дано описание реализаций PPP в различных программно-аппаратных платформах: Linux, Solaris, Windows 3.1/95/98 и NT, рассматривается возможность использования PPP для подключения хоста к удаленной сети. Для каждой программно-аппаратной платформы обсуждается вопрос установки и настройки модулей PPP. Особое внимание стоит обратить на тот момент, когда автор приводит примеры настройки ядра ОС для работы PPP - эту тонкую и ответственную процедуру приходится выполнять на большинстве Unix-платформ. После этого автор концентрирует внимание читателя на командах установки соединения по коммутируемой линии.
Седьмая глава посвящена организации работы сервера удаленного доступа в различных операционных системах, в каждой из которых имеются свои специфики настройки последовательных портов и модемов. Для большинства популярных ОС автор приводит свои примеры и указывает на возможные проблемы и пути их решения. Особое внимание уделается настройкам интерфейсов и взаимодействию с модулями стека TCP/IP.
Восьмая глава посвящена сетевым архитектурам, которые могут включать в себя PPP: Proxy Arp, Split Subnet, Unnubered, PPP в подсетях, мультипортовые PPP и подсети. Для каждой из перечисленных архитектур поясняется ее назначение, особенности применения, реализации в различных ОС и способы применения в ее рамках PPP. Далее приведено описание настроек сервера PPP и порядка сопряжения PPP с другими протоколами стека TCP/IP. Подробные рекомендации даются для каждой из перечисленных ранее ОС. PPP и другие протоколы рассматриваются в контексте их сопряжения и возможности передачи информации с одного интерфейса на другой. Наиболее интересным здесь является описание Proxy ARP, статической и динамической маршрутизации.
Девятая глава посвящена маршрутизации PPP соединений. Автор обращает внимание на отличие в организации шлюза на базе Ethernet и PPP, указывая на множество «подводных камней», ожидающих администратора корпоративной сети при настройке таких шлюзов. Материал главы иллюстрируется таблицами маршрутизации для различных конфигураций системы.
Отдельную главу автор отвел для обсуждения вопроса взаимодействия с сервером доменных имен. Такое внимание обусловлено двумя проблемами: возможностью предоставления полноценного доступа к сети для пользователей, которые динамически получают IP-адреса, а также многообразием службы доменных имен в ОС от Microsoft. Справедливо указывается на определенные сложности с каноническими именами для PPP шлюзов и получением имен по обратным зонам. Многие проблемы, возникающие при использовании PPP и DNS, являются проблемами настройки информационных сервисов Internet. Администратор должен учитывать такой поворот дел и стремиться к тому, чтобы настройки минимально влияли на работу пользователей сети. Дистрибутив PPP обычно снабжается стандартными файлами настройки PPP-соединений, однако всегда существуют ситуации, когда администратор должен учесть локальную специфику и изменить стандартные настройки.
Главы 11 и 12 содержат практические рекомендации по настройкам PPP и PPP-авторизации с использованием протоколов PAP (Password Authentication Protocol) и CHAP (Challenge Handshake Authentication Protocol). Даются разъяснения по поводу активного и пассивного PPP, динамического определения скоростей обмена данными, установкой соединения по требованию, постоянного соединения и восстановления соединения в случае работы по коммутируемой линии.
Глава 13 описывает общие принципы построения защищенных сетей, а глава 14, посвященная виртуальным частным сетям, прекрасно демонстрирует тот факт, что PPP может обслуживать любое соединение типа «точка-точка».
Важнейшим вопросом для любого сетевого администратора является проблема поиска и устранения неисправностей - этому посвящена 15 глава книги. Материал изложен «от печки» - сначала разбираются все проблемы интерфейсов, затем настройки модемов, затем протоколы контроля состояния физического соединения и далее, вплоть до процедур проверки наличия TCP/IP соединения.
Книга завершается обзором возможностей и спецификаций, которые появились за последнее время или ожидаются индустрией с минуту на минуту. Большого практического интереса видимо этот раздел не представляет, но для полноты представления о возможностях PPP прочитать его все же следует. Особую ценность представляют из себя приложения, которые можно использовать просто в качестве справочника по спецификации PPP.
Книга «Использование и администрирование PPP» - это редкий случай удачного совмещения общей информации о технологии с подробными инструкциями по ее эксплуатации. Без всякого сомнения книга будет полезно широкому кругу читателей.