Linux PPP HOWTO
Robert Hart, hartr@interweft.com.au
v3.0, 31 March 1997
--------------------------------------------------
Translated by Ilgiz Kalmetev (2:5011/36.6@fidonet)
--------------------------------------------------
Этот документ рассказывает как подключить ваш Linux PC к серверу PPP, как
использовать PPP для того, чтобы связать две LAN вместе и предлагает один
из методов настройки вашего компьютера с Linux в качестве сервера PPP.
Документ также предлагает помощь по отладке неработающих PPP соединений.
Авторские права
Этот документ распространяется под GPL (GNU Public License).
Распространение
Этот документ отсылаться по мере обновления в comp.os.linux.answers
Также он доступен в формате HTML на:
· Linux Howto Index <http://sunsite.unc.edu/mdw/linux.html#howto>
· PPP-HOWTO <http://www.interweft.com.au/other/ppp-howto/ppp-howto.html>
Другие форматы (SGML, ASCII, postscript, DVI) доступны на
<ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats>.
Так как sunsite.unc.edu обычно сильно загружен, пожалуйста, пользуйтесь
соответствующими зеркалами.
Подтверждения
Огромное число людей помогло мне в подготовке этого документа. Специальная
благодарность Al Longyear за непосредственное руководство по PPP (если здесь
имеются ошибки, то они не оттуда), Грэг Ханкинс (ведущий системы Linux Howto)
и Debi Tackett (MaximumAccess.com) за множество полезных предложений по стилю,
упорядочению содержания, логичность и ясность объяснений.
В заключение, благодарю всех тех людей, которые контактировали со мной по емайл и
предлагали комментарии. Как и для всех авторов HOWTO, удовлетворение от помощи
всем - эта та плата, которую мы получаем и ее нам достаточно. Написанием этого
HOWTO я возмещаю свой маленький долг, который я - и все другие пользователи
Linux - должны людям, которые пишут и поддерживают выбранную нами ОС.
1. Введение
PPP (Point to Point Protocol -- протокол точка-точка) - это механизм для
создания и запуска IP (Internet Protocol) и других сетевых протоколов на
последовательных линиях связи - будь это прямая последовательная связь
(по нуль-модемному кабелю), связь поверх telnet или модемная
связь по телефонным линиям (и, конечно, по линиям ISDN).
Используя PPP, вы можете подключить ваш Linux PC к PPP серверу и получить
доступ к ресурсам сети, к которой подключен сервер (почти) так, как будто
вы подключены непосредственно к этой сети.
Также вы можете настроить ваш Linux PC как PPP сервер, чтобы другие
компьютеры могли звонить на ваш компьютер и получать доступ к ресурсам
вашего локального PC и/или вашей сети.
Так как PPP - это двухточечная система, то вы можете использовать PPP
соединение между двумя Linux PC для связи двух сетей (или для связи
локальной сети с Internet), создавая глобальную сеть (Wide Area Network --
-- WAN).
Самое основное различие между соединениями PPP и Ethernet состоит, конечно,
в скорости - стандартное соединение Ethernet работает с максимальной
теоретической скоростью 10 Мб/сек (Мб/сек - миллион бит в секунду), в то
время как аналоговые модемы работают на скоростях до 56 кб/сек (кб/сек -
тысяча бит в секунду).
Также, в зависимости от типа соединения PPP, могут возникать некоторые
ограничения в использовании некоторых приложений и сервисов.
1.1. Клиенты и серверы
PPP строго двухточечный протокол; (технически) нет различий между
машиной, которая дозвонилась, и машиной, которая приняла звонок. Однако,
для наглядности, полезно рассматривать это соединение с точки зрения
архитектуры "клиент-сервер".
Когда вы звоните на сайт, чтобы установить соединение PPP, вы - клиент,
а машина, к которой вы подключаетесь - сервер.
Когда вы настраиваете вашу машину с Linux для приема и обработки звонков
с соединением по PPP, вы устанавливаете PPP сервер.
Любой Linux PC может быть и PPP сервером и клиентом одновременно,
Если у вас есть больше одного последовательного порта (и модема, если нужно).
Как говорилось выше, реальных различий между клиентами и серверами
в отношении соединения PPP нет.
Этот документ машину, которая инициирует звонок (которые дозваниваются),
считает клиентом, а машину, которая отвечает на звонок, проверяет личность
звонящего (с помощью имени пользователя, пароля и, возможно, других
механизмов), считает СЕРВЕРОМ.
Использование PPP в качестве клиента, чтобы подключить одну или более
машин к Интернет, вероятно, то, что интересует большинство тех людей,
которые используют свои Linux PC как клиенты.
Процедура, описанная в этом документе позволит вам установить и
автоматизировать ваше соединение с Интернет.
Этот документ также предоставит вам руководство по установке вашего Linux PC
в качестве PPP сервера, и по связыванию двух LAN вместе (с полной
маршрутизацией) с использованием PPP (это часто характеризуется как
установление WAN-связи).
1.2. Различия между дистрибутивами Linux
Имеются много различных дистрибутивов Linux, и все они имеют их собственные
характерные особенности и способы выполнения вещей.
В частности в Linux (и Unix) имеются два различных способа запуска компьютера,
конфигурации интерфейсов и т.д.
Это стили инциализации BSD и System V. Если вы почитаете некоторые группы новостей
Unix, то вы обнаружите религиозную войну между сторонниками этих двух систем.
Если вам нравится такой сорт развлечений, то можете позабавиться этой игрой,
тратящей ресурсы Сети, присоединяйтесь!
Наиболее распространены следующие дистрибутивы:
· Slackware
который использует инициализацию BSD
· Red Hat (и вышеупомянутая ассоциация Caldera)
который использует инициализацию SysV (хотя в немного другой форме)
· Debian
который использует инициализацию SysV
Инициализация BSD обычно хранит файлы инициализации в /etc/... , это файлы:
______________________________________________________________________
/etc/rc
/etc/rc.local
/etc/rc.serial
(и возможно другие файлы)
______________________________________________________________________
С недавнего времени, некоторые схемы инициализации системы BSD используют
каталог /etc/rc.d... для хранения файлов запуска, а не помещают их в /etc.
Инициализация System V хранит файлы инициализации в каталогах под /etc/... или
/etc/rc.d/... и в этих подкаталогах:
______________________________________________________________________
drwxr-xr-x 2 root root 1024 Jul 6 15:12 init.d
-rwxr-xr-x 1 root root 1776 Feb 9 05:01 rc
-rwxr-xr-x 1 root root 820 Jan 2 1996 rc.local
-rwxr-xr-x 1 root root 2567 Jul 5 20:30 rc.sysinit
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc0.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc1.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc2.d
drwxr-xr-x 2 root root 1024 Jul 18 18:07 rc3.d
drwxr-xr-x 2 root root 1024 May 27 1995 rc4.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc5.d
drwxr-xr-x 2 root root 1024 Jul 6 15:12 rc6.d
______________________________________________________________________
Если вы попробуете проследить, где действительно настраиваются ваш ethernet
интерфейс и связанные с ним сетевые маршруты, то вам надо будет просмотреть
эти файлы, чтобы найти команды, которые делают это.
1.3. Инструментальные средства конфигурации PPP, специфичные для дистрибутивов
На некоторых инсталляциях (например Red Hat и Caldera), имеется PPP система
работы по телефонной линиии, настроенная для X Windows. Этот HOWTO не
раскрывает эти дистрибутивные специфические инструментальные средства. Если у
вас есть проблемы с ними, войдите в контакт с непосредственно дистрибьюторами!
Для пользователей Red Hat 4.x, теперь имеется Red Hat PPP-TIP
<http://www.interweft.com.au> в области ресурсов Linux и также на Red Hat
Software <http://www.redhat.com> в области поддержки.
2. IP адреса
Каждое устройство, которое соединяется с Интернет, должно иметь собственный,
уникальный IP адрес. Они назначаются централизованно соответствующей
полномочной организацией каждой страны.
Если вы подключаете локальныю сеть (LAN) к Internet, вы ДОЛЖНЫ использовать
IP адрес из назначенного вашей сети диапазона адресов компьютеров и устройств,
которые составляют вашу локальную сеть. Вы НЕ МОЖЕТЕ взять такие IP адреса,
какие вам захотелось и использовать их при соединении с другими LAN
(уже не говоря о Интернете). В худшем случае просто ничего не будет работать
вообще и может вызывать общий бардак, когда ваш 'захваченный' IP адрес
начнет конфликтовать с другим компьютером, который уже использует IP
адрес, который вы выбрали с бухты-барахты.
Пожалуйста, заметьте, что IP адреса, используемые в этом докумение (с
некоторыми исключениями) принадлежат диапазону 'адресов неподсоединенных
сетей', которые зарезервированы для использования в сетях, неподключенных к
Internet.
Имеются IP адреса, которые специально выделены LAN, которые не соединяются с
Интернетом. Вот эти адреса:
· Один адрес сети класса A
10.0.0.0 (сетевая маска 255.0.0.0)
· 16 адресов сетей класса B
172.16.0.0 - 172.31.0.0 (сетевая маска 255.255.0.0)
· 256 адресов сетей класса C
192.168.0.0 - 192.168.255.0 (сетевая маска 255.255.255.0)
Если для вашей локальной сети не было выделено пространство IP адресов
специальной организацией вашей страны, то вам надо использовать для ваших
машин один из приведенных выше сетевых адресов.
Эти адреса никогда не должны использоваться в Internet.
Однако, они могут использоваться для локальной сети ethernet на машине, которая
соединяется с Интернетом. Это потому, что IP адреса фактически назначены
сетевому интерфейсу, не компьютеру. Так, ваш интерфейс ethernet может
использовать 10.0.0.1 (например), а когда вы подключаетесь к Интернет, используя
PPP, вашему PPP интерфейсу сервером будет назначен другой (допустимый) IP
адрес. Ваш PC будет связан с Интернет, а другие компьютеры вашей LAN - нет.
Однако, при использовании Linux и возможности IP Masquerade (также известный
как трансляция сетевых адресов NAT) с помощью Linux и программного обеспечения
ipfwadm, вы можете соединить вашу LAN с Интернет (с некоторым ограничением
услуг), даже если вы не имеете допустимых IP адресов для машин вашего ethernet.
Для подробной информации как это сделать см. IP Masquerade mini-HOWTO по адресу
<http://sunsite.unc.edu/mdw/HOWTO/mini/IP-Masquerade>
Для большинства пользователей, которые подключают одиночную машину к поставщику
услуг Интернета через PPP, получение IP адреса (или более точно, сетевого
адреса) не нужно.
Если вы желаете соединить маленькую LAN с Интернет, многие поставщики услуг
Интернет (ISP) могут обеспечить вас выделенной подсетью (специфической
последовательностью IP адресов) из их существующего IP адресного пространства.
В качестве альтернативы, используйте IP Masquerading.
Для пользователей, которые соединяют отдельный PC с Интернет через ISP,
большинство поставщиков использует динамическое назначение IP адреса. То есть
как часть процесса соединения, PPP сервис, с которым вы входите в контакт,
сообщит вашей машине, какой IP адрес надо использовать для связи с помощью PPP
интерфейса в течение текущего сеанса. Этот номер не обязательно будет таким же
при последующем соединении с вашим ISP.
С динамическими IP адресами, вам не назначается один и тот же IP адрес
при каждом сеансе соединения. Это имеет значение для серверных приложений
на вашей Linux машине вроде sendmail, ftpd, httpd и т.д. Эти услуги основаны
на той предпосылке, что компьютер, предлагающий обслуживание, доступен по тому
же самому IP адресу все время (или по крайней мере тому же самому полностью
квалифицированному имени области - FQDN - и что DNS доступен).
Ограничения обслуживания из-за динамического назначения IP ареса (и способы
работать с ними, когда возможно) обсуждены в документе ниже.
3. Цели этого Документа
3.1. Установка PPP Клиента
Этот документ обеспечивает руководство людям, которые желают использовать Linux
и PPP, чтобы дозвониться до PPP сервера и установить IP соединение, используя
PPP. Предполагается, что PPP уже скомпилирован и установлен на вашей Linux
машине (но кратко раскрываются реконфигурирование/перекомпиляцию вашего ядра
для включения поддержки PPP).
Хотя для установления PPP соединения можно использовать dip (стандартный
способ создания SLIP соединения), сценарии dip вообще-то очень сложны. По этой
причине, этот документ не раскрывает использование dip для установки PPP
соединения.
Вместо этого, этот документ описывает стандартное программное обеспечение Linux
PPP (chat/pppd).
3.2. Связывание двух LAN или LAN c Интернет, используя PPP
Этот документ обеспечивает (основную) информацию о связывании двух
LAN или LAN с Интернет, используя PPP.
3.3. Установка PPP сервера
Вы должны обратить внимание, что имеется несметное число способов установки
Linux PPP сервером. Этот документ описывает один метод, используемый автором
для установки нескольких маленьких PPP серверов (каждый по 16 модемов).
Этот метод, как известно, работает хорошо. Однако необязательно, что он самый
лучший.
3.4. Использование PPP по прямому нульмодемному соединению
Этот документ обеспечивает краткий обзор по использованию PPP для связи двух
Linux PC через нулевой(пустой) модемный кабель. Этим способом также возможно
связать другие OS с Linux. Чтобы это сделать, вы должны будете
проконсультироваться с документацией по операционной системе, которая вас
интересует.
3.5. Этот документ в настоящее время не раскрывает ...
· Компилирование программное обеспечение PPP демона. См. документацию, которая
приходит с версией pppd, который вы используете.
· Соединение и конфигурирование модема в Linux (подробно). См. Serial-HOWTO
и специфическую для модема инициализацию, см. Информацию по установке модема
<http://www.in.net/info/modems/index.html> для информации, которая может помочь
вам сконфигурировать ваш модем.
· Использование dip для создания PPP соединений. Взамен этого используется chat
· Использование socks или IP Masquerade. Имеются прекрасные документы, уже
объясняющие эти два пакета.
· Использование diald для установки автоматизированного соединения. См.
документацию по diald.
· Использование EQL для создания единого канала связи по двум модемным линкам.
· Специфические для дистрибутива методы соединения по PPP (типа инструмента
конфигурации сети Red Hat 4.x). См. дистрибутив для документации по
используемым методам.
· Возрастастающее число инструментальных средств, доступных для автоматизации
установления PPP. См. соответствующую документацию.
4. Версии упомянутого программного обеспечения
В этом HOWTO предполагается, что вы используете ядро Linux 1.2.x с PPP 2.1.2
или Linux 1.3.X/2.0.x и PPP 2.2.
На время написания последняя официальная версия PPP доступного для Linux -
ppp-2.2f. Новая версия (ppp-2.3) - все еще в стадии бета-тестирования.
Возможно использовать PPP 2.2.0 с ядром 1.2.13. Это требует патчей для ядер.
Рекомендуется для пользователей с ядром версии 1.2.13 поставить на ppp-2.2,
поскольку он включает исправления нескольких ошибок и расширения.
Также вы должны обратить особенное внимание на то, что вы не можете
использовать PPP 2.1.2 с ядром Linux версий 2.0.X.
Пожалуйста, обратите внимание, что этот документ не покрывает проблемы,
являющиеся результатом использования загружаемых модулей для ядра Linux 2.0.x.,
пожалуйста, см. kerneld mini-HOWTO и документацию по ядру/модулю 2.0.x (в
Linux 2.0.x исходное каталог /usr/src/linux/Documentation/...).
Поскольку этот документ разработан для помощи новым пользователям, вам строго
рекомендуется использовать соответствующие версию ядра Linux и PPP, про которые
известно, что вместе они работают устойчиво.
5. Другие полезные/важные документы
Советую почитать пользователям:
· документация, которая приходит с PPP пакетом;
· man pppd и man chat;
· Linux Network Administration Guide (NAG); см. The Network Administrators'
Guide <http://sunsite.unc.edu/mdw/LDP-books/nag-1.0/nag.html>
· Net-2/3 HOWTO; см. Linux NET-2/3-HOWTO
<http://sunsite.unc.edu/mdw/HOWTO/NET-2-HOWTO.html>
· документация по ядру Linux, установленная в /usr/src/linux/Documentation,
во время устанавки исходных текстов Linux;
· страница информации по установке модема - см. Информацию по установке модема
<http://www.in.net/info/modems/index.html>
· Превосходные книги Unix/Linux, изданные O'Reilly и Ассоциацией. См.
(O'Reilly and Associates On-Line Catalogue < http://www.ora.com/>). Если вы
плохо знакомы с Unix/Linux, сбегайте (не сходите) к вашему самому близкому
компьютерному книжному магазину и купите их немедленно!
· PPP-FAQ, поддерживаемый Al Longyear, доступный из Linux PPP-FAQ
<ftp://sunsite.unc.edu/pub/Linux/docs/faqs>. Он содержит много полезной
информации в формате вопрос/ответ, что является очень полезным при выяснении,
почему PPP не работает (правильно).
· возрастастающее количество книг по Linux от различных издательств и авторов;
Вы активно поощраетесь проверить ценность этих книг.
Разработка Linux и дистрибутивов имеют стремительную тенденцию развития,
в то время, как выпуск книг в новой редакции (вообще) намного медленнее!
Покупка превосходной книги (и таких много), которая сегодня является устаревшей,
вызовет у новых пользователей значительное беспокойство и расстройство.
Самая лучшая общая отправная точка для Linux документации - домашняя страница
Linux Documentation Project <http://sunsite.unc.edu/mdw/>. HOWTO имеет
тенденцию пересматриваться достаточно регулярно.
Хотя вы можете использовать этот документ для создания вашего соединения PPP без
необходимости читать любой из этих документов, в таком случае вы не будете
понимать, что именно вы делаете! Также вы сможете самостоятельно сформулировать
проблемы (или по крайней мере задавать более интеллектуальные вопросы в группах
новостей comp.os.linux ... или списках почтовой рассылки по Linux).
Эти документы (также как и различные другие, включая RFCS) обеспечивают
дополнительные и более детальные объяснения, чем можно сделать в этом HOWTO.
Если вы соединяете LAN с Интернет, используя PPP, вы должны обладать приемлемым
уровнем знаний о работе с TCP/IP сетями. В дополнение к документам выше вы
найдете много полезного в книгах O'Reilly "Сетевое администрирование TCP/IP" и
"Построение файерволов Интернет"!
5.1. Полезные списки почтовой рассылки Linux
Имеются множество списков почтовой рассылки Linux, которые функционируют как
средство связи между пользователями многих уровней знания. Во что бы то ни
стало подпишитесь на те, что интересуют вас, и contribute your expertise and
views.
Мудрость: некоторые списки специально нацелены на "гуру" и/или
специфические темы. Хотя никто не пожалуется, если вы подписались 'lurk'
(но не отправляете по почте сообщения), но вам наверняка придется выслушать
резкости (если не флейм), если вы отправляете 'чайниковские' вопросы в
несоответствующие списки расылки.
Это - не потому, что гуру ненавидят новых пользователей, а потому, что эти
списки должны обсуждать специальные проблемы специальных уровней сложности.
Во что бы то ни стало подпишитесь на списки, которые предлагают открытую
подписку, но ваши комментарии должны соответствовать теме списка!
Хорошая отправная точка для почтовых списков рассылки Linux -
Linux Mailing List Directory
<http://summer.snu.ac.kr/~djshin/linux/maillist/index.shtml>
6. Краткий обзор того, что должно быть сделано для работы PPP как клиента
Этот документ содержит много информации - и с каждой версией ее объем
возрастает!
Как следствие, этот раздел стремится обеспечить краткий обзор действий, которые
вы должны будете выполнить, чтобы подключить вашу Linux систему к PPP серверу
в качестве клиента.
6.1. Получение/установка программного обеспечения
Если ваш дистрибутив Linux не включает программное обеспечение PPP, то возьмите
его из Linux PPP демона
<ftp://sunsite.unc.edu/pub/Linux/system/Network/serial/ppp/ppp-2.2.0f.tar.gz>.
Это последняя официальная версия на время написания. Однако, вы возьмите в этом
месте последнюю доступную версию (ppp-2.3 находится в стадиии бета на время
написания и должен быть скоро выпущен).
PPP пакет содержит инструкции по компиляции и установке программного
обеспечения, так что это не объясняется в HOWTO!
6.2. Вкомпилированная поддержка PPP в ядре
Linux оперирует PPP двумя частями
· PPP демон упомянутый выше
· ядерная поддержка для PPP
Многие дистрибутив, кажется, по умолчанию обеспечивают встроенный в ядро PPP
в своих ядрах, но другие этого не делают.
Если при начальной загрузке в сообщениях вашего ядра есть что-нибудь вроде
______________________________________________________________________
PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.
______________________________________________________________________
то ваше ядро имеет встроенную поддержку PPP.
Это говорит о том, что вы вероятно захотите скомпилировать ваше собственное
ядро вместо пришедшего с дистрибутивом для обеспечить наиболее эффективное
использование ваших аппартных ресурсов системой. Стоит вспомнить, что ядро не
может быть выгружено из памяти, и потому уменьшение ядра создает преимущества
для машин с ограниченным размером памяти.
Этот документ обеспечивает минимальные инструкции по перестройке ядра в
разделе ``Конфигурированием вашего ядра Linux".
Для подробностей, см. Kernel-HOWTO на Linux Kernel HOWTO
<http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html>
6.3. Получение информации от вашего ISP
Имеется почти бесконечное число способов, которыми PPP сервер может быть
установлен. Чтобы соединиться с вашим ISP (или корпоративным PPP сервером,
чтобы обратиться к вашему intranet), вы должны будете получить информацию о
том, как функционирует PPP сервер.
Поскольку вы используете Linux, вы можете испытать затруднения с получением
исчерпывающей справки от ISP (и работы сайта, основанного на intranet PPP
сервере), которые в большинстве ориентируются на клиентов с MS WINDOWS.
Однако, быстро возрастает число ISP, использующих в своей работе Linux,
- и Linux также проникает в корпоративную среду, так что вам может повезти в
решении ваших проблем.
Раздел ``Получение нужной информации о PPP сервере" рассказывает, что вы
должны узнать о PPP сервере, к которому вы собираетесь подсоединиться - и как
выяснить эту информацию.
6.4. Конфигурирование вашего модема и последовательного порта
Для того чтобы соединиться с PPP сервером и получать наилучшую возможную
скорость передачи данных, ваш модем должен быть правильно сконфигурирован.
Точно так же последовательные порты на вашем модеме и компьютере должны быть
установлены правильно.
Как это сделать рассказывается в разделе ``Конфигурирование вашего модема и
последовательного порта".
6.5. Настройка преобразования доменных имен в IP адрес (DNS)
В дополнение к файлам, которые запускают PPP и выполняют автоматизированный
вход на PPP сервер, есть ряд текстовых конфигурационных файлов, которые
должны быть установлены на вашем компьютере для того, чтобы преобразовать
имена типа www.interweft.com.au в IP адрес, который используется фактически для
установления контакта с этим компьютером. Это файлы:
· /etc/resolv.conf
· /etc/host.conf
Раздел ``Настройка преобразования доменных имен в IP адрес" содержит
подробности по их настройке.
В частности вы не должны запускать сервер имен на вашем Linux PC, чтобы
соединиться с Интернетом (хотя можете захотеть). Все, что вам нужно знать, это
IP адрес как минимум одного сервера имен, который вы можете использовать
(предпочтителен сервер имен одного из ваших ISP).
6.6. PPP и привилегии root
Так как установление связи PPP между вашим компьютером Linux и другим PPP
сервером требует манипуляций с сетевыми устройствами (интерфейс PPP - это
сетевой интерфейс) и таблицей маршрутизации ядра, то pppd требует привилегий
root.
Для подробностей см. раздел ``Использование PPP и привилегии root".
6.7. Проверка PPP файлов вашего дистрибутива и установка опций PPP
Имеется ряд конфигурационных и файлов звонилки, которые должны быть
установлены для работы с PPP. В дистрибутиве PPP имеются примеры, и в этом
разделе показано, какие файлы вы должны иметь:
______________________________________________________________________
/etc/ppp/options
/etc/ppp/scripts/ppp-on
/etc/ppp/scripts/ppp-on-dialer
/etc/ppp/options.tpl
______________________________________________________________________
Вам возможно понадобиться создать некоторые дополнительные файлы в зависимости
от того, что вам нужно от PPP:
______________________________________________________________________
/etc/ppp/options.ttyXX
/etc/ppp/ip-up
/etc/ppp/pap-secrets
/etc/ppp/chap-secrets
______________________________________________________________________
Кроме того, демон PPP может использовать большое количество опций командной
строки, и важно использовать правильные; так что этот раздел проведет вас по
стандартным опциям PPP и поможет выбрать опции, которые вы должны использовать.
Для подробностей см. ``Настройка файлов PPP соединения".
6.8. Если ваш PPP сервер использует PAP (Password Autentificaion Protocol)
Многие ISP и корпоративные PPP серверы используют PAP. Если ваш сервер не
требует для вы использовали PAP (если вы можете регистрировать вручную и
получать стандартную текстовую подсказку входа в систему (логин/пароль), значит
он не использует PAP), то вы можете спокойно проигнорировать этот раздел.
Вместо того для регистрироваться на таком сервере, используя имя
пользователя и пароля когда их ввод запрошен сервером, PPP сервер, использующий
PAP не требует обычного ввода логина/пароля для входа в систему.
Вместо этого информация установления подлинности пользователя идет как часть
протокола управления связи (LCP), который является первым шагом установления
связи PPP.
Раздел ``Если ваш PPP сервер использует PAP (Password Autentificaion Protocol)"
предоставляет информацию о файлах, которые вы должны инсталлировать,
чтобы установить связь PPP, используя PAP.
6.9. Соединение с PPP сервером вручную
При установке основных файлов хорошая идея проверить их, соединившись
(используя minicom или seyon) и запустив pppd на вашем Linux PC вручную.
См. раздел ``Установка PPP соединения вручную" для деталей по этому вопросу.
6.10. Автоматизация вашего PPP соединения
Как только вы сможете войти в систему вручную, вы можете переделать установки
скриптов так для автоматизировать процесс соединения.
Раздел ``Автоматизация ваших соединений - Создание скриптов соединения''
разъясняет установку необходимых скриптов, акцентируя внимание на chat и
создании сценариев входа в систему через PPP сервер.
Этот раздел обсуждает скрипты определения имени/пароля пользователя, а также
написание скриптов для аутентификации PAP/CHAP на сервере.
6.11. Завершение связи
Нужно уметь закрывать работающее соединение.
Это описывается в разделе ``Завершение PPP связи''.
6.12. Если у вас есть проблемы
Многие люди затрудняются установить PPP связь. Разновидностей PPP серверов и
их требований к установке соединения очень много. Точно так же имеется много
опций PPP - и некоторые их комбинации не работают вместе.
К проблемам регистрации и запуска PPP обслуживания также добавляются
проблемы с модемами и фактическими телефонными линиями!
Раздел ``Решение проблем" предлагает некоторую основную информацию об общих
ошибках, как их изолировать и исправить.
Он НЕ ставит своей задачей дать больше, чем только основы. Al Longyear
поддерживает PPP-FAQ, который содержит много подробной информации по этой теме!
6.13. После того, как связь установлена
Как только связь PPP заработает (особенно, как только IP уровень станет
работоспособным), Linux PPP может запускать автоматически (как пользователь
root) скрипт, чтобы выполнить любую функцию, которую вы можете записать для
выполнения в скрипт.
В разделе ``После того, как связь установлена" изложена информация о скрипте
/etc/ppp/ip-up, параметрах, которые он получает от PPP, и как его использовать,
чтобы делать вещи типа скачивания вашего email от вашего ISP, посылки
поставленной в очередь почты и все такое прочее.
6.14. Проблемы со стандартными IP услугами для PPP связи с динамическим
IP адресом
Как отмечено во введении, динамические IP адреса влияют на возможность
работы вашего Linux PC в качестве сервера в Интернет.
Раздел ``Проблемы со стандартными IP услугами для PPP связи с динамическим IP
адресом" обеспечивает информацию о таком влиянии на (основные) услуги и что вы
можете сделать (если что-нибудь можно сделать), чтобы преодолеть это влияние.
7. Конфигурирование вашего Linux Ядра
Для того чтобы использовать PPP, ваше ядро Linux должно быть скомпилировано
с включенной поддержкой PPP. Возьмите исходный текст для вашего ядра Linux,
если у вас его еще нет - он лежит в /usr/src/linux в стандартной файловой
системе Линукса.
Проверьте этот каталог - многие дистрибутивы Linux, устанавливают дерево
исходных текстов (файлы и подкаталоги) в процессе инсталляции.
При загрузке, ваше ядро Linux печатает много полезной информации.
В ней можно найти информацию о поддержке PPP, если ядро включает ее. Чтобы
просмотреть эту информацию, посмотрите ваш файл syslog или используйте
dmesg | less, чтобы отобразить информацию на экране. Если ваше ядро включает
поддержку PPP, вы увидите строки типа
______________________________________________________________________
PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.
______________________________________________________________________
( это для версий ядра Linux 2.0.x).
Исходные тексты ядра Linux могут быть получены по ftp с sunsite.unc.edu или
зеркал.
7.1. Установка исходных текстов ядра Linux
Ниже перечислены краткие инструкции для получения и установки исходных текстов
ядра Linux. Полная информация может быть получена Linux Kernel-HOWTO
<http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html>.
Для того чтобы установить и скомпилировать ядро Linux, вы должны
зарегистрироваться как root.
1. Перейдите в каталог /usr/src : cd /usr/src
2. Проверьте наличие каталога с исходными текстами /usr/src/linux
3. Если у вас нет исходных текстов, то скачайте их с Интернет сайта
<ftp://sunsite.unc.edu/pub/Linux/kernel/v2.0> или ближайшего зеркала.
Если Вы ищете более ранние версии ядра (типа 1.2.X), то они хранятся в каталоге
старого ядра Linux <ftp://sunsite.unc.edu/pub/Linux/kernel/old>.
4. Выберите соответствующее ядро - обычно самое современное доступно для всех.
Отыщите его и поместите исходный tar файл в /usr/src.
Обратите внимание: файл 'tar' - архив - возможно сжатый (так как исходные
тексты ядра Linux это файлы tar), содержащий множество файлов в ряде каталогов.
Это Linux эквивалент DOS'овской утилиты zip, поддерживающая сохранение
структуры каталогов в архиве.
5. Если вы уже имеете установленные исходники Linux, но хотите установить новое
ядро, то вы должны удалить старые исходники. Используйте команду
rm -rf /usr/src/linux
6. Теперь разожмите и извлеките исходники, используя команду
tar xzf linux-2.0.XX.tar.gz
7. Теперь, cd /usr/src/linux и прочитайте файл README. Он содержит превосходное
объяснение о том как настроить и скомпилировать новое ядро. Прочитайте этот файл
(хорошая идея напечатать его и иметь копию под руками, пока вы компилируете,
если у вас не было достаточно времени знать все по этому вопросу).
7.2. Знание ваших аппаратных средств
Вы ДОЛЖНЫ знать то, какие платы/устройства имеются внутри вашего PC, если вы
собираетесь перекомпилировать ваше ядро!!! Для некоторых устройств (типа
звуковых плат) вы должны также узнать различные установки (типа IRQ, адресов
ввода-вывода и пр.).
7.3. Компиляция ядра - ядро Linux 1.2.13
Чтобы начать процесс конфигурации, следуйте инструкциям файла README, чтобы
правильно установить исходники. Вы начинаете процесс настройки ядра командой
make config
Для того, чтобы использовать PPP, вы должны сконфигурировать ядро, чтобы
включить поддержку PPP (PPP требует И pppd, И поддержки PPP в ядре).
______________________________________________________________________
PPP (point-to-point) support (CONFIG_PPP) [n] y
______________________________________________________________________
Ответьте на другие вопросы make config, чтобы согласовать конфигурацию Linux с
аппаратными средствами вашего PC, как вы хотите. Затем продолжите следовать
README, чтобы скомпилировать и установить ваше новое ядро.
Ядро 1.2.13 создает только 4 PPP устройства. Для многопортовой последовательной
платы, вы должны будете отредактировать исходники PPP ядра, чтобы получить
большее количество портов. (См. README.LINUX файл, который приходит как часть
дистрибутива PPP-2.1.2 для подробностей по правке исходных текстов,
которую вы должны сделать).
Обратите внимание: диалог настройки 1.2.13 не позволяет вам идти в обратном
направлении - так если вы допустили ошибку в ответе на один из вопросов в
диалоге make config, выйдите, нажав CTRL-C и начните снова.
7.4. Компиляция ядра - ядра Linux 1.3.x и 2.0.x
Для Linux 1.3x и 2.0.x процесс настройки аналогичен настройке ядра 1.2.13.
Снова следуйте инструкциям файла README, чтобы правильно установить исходники.
Вы начинаете процесс конфигурации ядра командой
make config
Однако, вы также можете выбрать
make menuconfig
Это команда запускает менюоснованную систему настройки с интерактивной справкой,
которая позволяет вам двигаться в обратном направлении и вперед в процессе
конфигурации.
Имеется также настойчиво рекомендуемый интерфейс настройки для X Window System
make xconfig
Вы можете вкомпилировать поддержку PPP непосредственно в ваше ядро или как
загружаемый модуль.
Если вы используете PPP непостоянно, то рекомендуется компилировать PPP
поддержку как загружаемый модуль. При использовании 'kerneld', ваше ядро
автоматически загрузит модуль(и), требуемый для обеспечения поддержки PPP,
когда вы начинаете ваш процесс связи PPP. Это сохраняет ценное пространство
ОЗУ: часть ядра не может быть выгружена из памяти, а загружаемые модули
автоматически удаляются, если не используются.
Чтобы сделать это, вы должны разрешить возможность загрузки модулей:
______________________________________________________________________
Enable loadable module support (CONFIG_MODULES) [Y/n/?] y
______________________________________________________________________
Чтобы добавить поддержку PPP в ядро, ответьте на следующий вопрос:
______________________________________________________________________
PPP (point-to-point) support (CONFIG_PPP) [M/n/y/?]
______________________________________________________________________
Для загружаемого модуля PPP, ответьте M, иначе, для компиляции PPP в ядро,
ответьте Y.
В отличие от ядра 1.2.13, ядро 2.0.x создает PPP устройства на лету по
необходимости и не нужно править источники, чтобы увеличить число доступных PPP
устройств.
7.5. Обратите внимание на PPP-2.2 и /proc/net/dev
Если Вы используете PPP-2.2, вы обнаружите, что побочный эффект создания PPP
устройств 'на лету' в том, что никакие устройства не обнаруживаются, если вы
посмотрите /proc/net, пока устройство не создано запуском pppd:
______________________________________________________________________
[hartr@archenland hartr]$ cat /proc/net/dev
Inter-| Receive | Transmit
face |packets errs drop fifo frame|packets errs drop fifo colls carrier
lo: 92792 0 0 0 0 92792 0 0 0 0 0
eth0: 621737 13 13 0 23 501621 0 0 0 1309 0
______________________________________________________________________
Как только вы запустите одну (или больше) услуг ppp, вы увидите записи типа
(от сервера ppp):
______________________________________________________________________
[root@kepler /root]# cat /proc/net/dev
Inter-| Receive | Transmit
face |packets errs drop fifo frame|packets errs drop fifo colls carrier
lo: 428021 0 0 0 0 428021 0 0 0 0 0
eth0:4788257 648 648 319 650 1423836 0 0 0 4623 5
ppp0: 2103 3 3 0 0 2017 0 0 0 0 0
ppp1: 10008 0 0 0 0 8782 0 0 0 0 0
ppp2: 305 0 0 0 0 297 0 0 0 0 0
ppp3: 6720 7 7 0 0 7498 0 0 0 0 0
ppp4: 118231 725 725 0 0 117791 0 0 0 0 0
ppp5: 38915 5 5 0 0 28309 0 0 0 0 0
______________________________________________________________________
7.6. Общие настройки ядра для PPP
Если вы устанавливаете ваш Linux PC как PPP сервер, вы должны вкомпилировать в
IP поддержку форвардинга. Это также необходимо, если вы хотите использовать
Linux для связывания LAN вместе или вашей LAN с Интернет.
Если вы связываете LAN с Интернет (или связываете вместе две LAN), вы должны
быть подумать о защите. Добавление поддержки IP файервола в ядро - наверняка
ДОЛЖНО БЫТЬ!
Также вам это понадобится, если вы захотите использовать IP masquerade, чтобы
соединить LAN, которая использует любое из вышеупомянутых 'неподключенных'
адресов IP сетей.
Чтобы разрешить IP Masquerade и IP fire walling, вы ДОЛЖНЫ ответить ДА
на первый вопрос в процессе конфигурации:
______________________________________________________________________
Prompt for development and/or incomplete code/drivers (CONFIG_EXPERIMENTAL)?
______________________________________________________________________
Хотя это может звучать немного пугающе для новых пользователей, многие
пользователи активно используют возможности IP Masquerade and IP fire walling
в ядре Linux 2.0.XX без проблем.
Как только вы установили и перезагрузили ваше новое ядро, вы можете начать
конфигурировать и проверять вашу связь(и) PPP.
8. Получение нужной информации о PPP сервере
Прежде, чем вы сможете установить PPP соединение с сервером, вы должны получить
следующую информацию (от службы поддержки системных
администраторов/пользователей PPP сервера):
· номер(а) телефона(ов). Если вы звоните через офисную АТС, то вам также нужен
префиксный номер, который позволит вам звонить наружу - часто это цифры (0)
или (9).
· сервер использует ДИНАМИЧЕСКИЕ или СТАТИЧЕСКИЕ IP адреса?
Если сервер использует СТАТИЧЕСКИЕ IP адреса, то вы должны узнать какой IP
адрес использовать на вашем конце PPP соединения. Если ваш ISP обеспечивает
вас подсетью допустимых IP адресов, вы должны будете узнать IP адреса,
которые вы можете использовать и сетевую маску (netmask).
Большинство поставщиков услуг Интернет использует ДИНАМИЧЕСКИЕ IP адреса. Как
упомянуто выше, это имеет некоторое влияние на то, какими услугами вы можете
пользоваться.
Однако даже если вы используете СТАТИЧЕСКИЕ IP адрес, большинство PPP серверов
никогда (по соображениям безопасности) не позволит клиенту определять IP адрес,
поскольку это - риск взлома. Вы должны знать эту информацию!
· Каковы IP адреса серверов доменных имен ISP?
Должны иметься по крайней мере два, хотя необходим только один.
Здесь может поджидать проблема. PPP установка в MS WINDOWS 95 позволяет
устанавливать адрес DNS как часть процесса установления связи. Так что ваш ISP
(или справочная служба корпорации) может сообщить вам, что вам не нужно знать
IP адрес DNS сервера(ов).
Для Linux, вы нуждаетесь в адресе по крайней мере одного DNS. Linux реализация
PPP не позволяет установку IP адреса DNS динамически во время соединения - и
возможно никогда не позволит.
Обратите внимание: хотя Linux (как PPP клиент) не может принимать адрес DNS от
сервера, это может, действуя как сервер, передать эту информацию клиентам,
используя опцию pppd dns-addr.
· Сервер требует использования PAP/CHAP?
Если дело обстоит так, то вы должны знать ваши "id", и "secret" для
использования при соединении. (Скорее всего они совпадают с вашими именем
пользователя и паролем на вашем ISP).
· Сервер автоматически запускает PPP, или вы должны выдать какие-то команды,
чтобы запустить PPP на сервере после регистрации?
Если вы должны выдать команду, чтобы запустить PPP, то что это за команда?
· Сервер Windows NT Microsoft и, если так, он использует систему MS PAP/CHAP?
Многие корпоративные LAN, кажется, используют этот метод усиления защиты
MS WINDOWS NT .
Тщательно обратите внимание на эту информацию - вы собираетесь ее использовать!
9. Конфигурирование вашего модема и последовательного порта
Вы должны удостовериться, что ваш модем правильно установлен и что вы знаете, с
каким последовательным портом он соединен.
Помните:
╖ DOS com1: = Linux /dev/cua0 (и /dev/ttyS0)
╖ DOS com2: = Linux /dev/cua1 (и /dev/ttyS1)
итд
Также стоит запомнить, что, если вы имеете 4 последовательных порта, то на
стандартном PC com1 и com3 совместно используют IRQ4, а com2 и com4 совместно
используют IRQ3.
Если вы имеете устройства на стандартных последовательных портах, которые
совместно используют IRQ с вашим модемом, то у вас будут проблемы. Вы
должны удостовериться, что ваш последовательный порт модема находится на
собственном, уникальном IRQ. Многие современных последовательных плат (и
последовательные порты на материнской плате лучшего качества) позволяют вам
менять IRQ последовательных портов.
Если у вас ядро Linux 2, то вы можете проверить "задействованные" IRQ,
используя команду cat /proc/interrupts, которая выведет примерно вот что:
______________________________________________________________________
0: 6766283 timer
1: 91545 keyboard
2: 0 cascade
4: 156944 + serial
7: 101764 WD8013
10: 134365 + BusLogic BT-958
13: 1 math error
15: 3671702 + serial
______________________________________________________________________
Видно, что последовательные порты занимают IRQ4 (мышь) и IRQ15 (постоянная
модемная PPP связь с Интернетом. (Имеется также последовательный порт на com2,
IRQ3 и com4 находится на IRQ14, но поскольку они незадействованы, то они не
обнаружены).
Предупреждение: Вы должны знать, что вы делаете, если вы собираетесь поиграться
с вашими IRQ! Вы должны не только отрыть ваш компьютер, вытащить платы и
поиграть с джамперами, но и должны знать какие IRQ используются для каждого
кстройства. В моем случае, компьютер оборудован только SCSI внешними
устройствами, так что я могу отключить на материнской плате IDE интерфейсы,
которые обычно используют IRQ14 и 15!
Также не забудьте, что, если на вашем PC загружаются другие операционные
системы, изменение IRQ может привести к тому, что OS не сможет загружаться
правильно - или вообще не загрузится!
Если вы назначаете вашему последовательному порту не обычное IRQ, то вы
должны сообщить Linux, какое IRQ какой порт использует. Это делается
программой setserial и лучше всего выполнять это как часть процесса начальной
загрузки в rc.local или rc.serial, который вызывается из rc.local, или как часть
инициализации SysV. Для машины, рассмотренной выше, используются команды
______________________________________________________________________
/bin/setserial -b /dev/ttyS2 IRQ 11
/bin/setserial -b /dev/ttyS3 IRQ 15
______________________________________________________________________
Однако, если вы используете динамически загружаемые по требованию процесса
kerneld модули serial, то вы не можете установить один раз и забыть IRQ и
т.д во время начальной загрузки. Это потому, что при выгрузке модуля serial
Linux забудет про специальные установки.
Итак, если вы загружаете модуль serial по требованию, то вы должны будете
переконфигурировать IRQ и т.д при каждой загрузке модуля.
9.1. Примечание, касающееся последовательных портов и возможностей
быстродействия
Если вы используете высокоскоростной (внешний) модем (14,400 кбит или выше), то
ваш последовательный порт должен успевать обрабатывать трафик, причем модем
особенно производителен при использовании алгоритмов сжатия данных.
Для этого требуется, чтобы ваш последовательный порт использовал современный
UART (Универсальный Асинхронный Приемопередатчик) типа 16550(A). Если вы
используете старую машину (или старую последовательную плату), то возможно,
что ваш последовательный порт имеет только 8250 UART, который может вызвать
у вас значительные проблемы при использовании с высокоскоростным модемом.
Используйте команду
setserial -a /dev/ttySx
чтобы Linux вывел вам тип UART, который у вас установлен. Если у вас нет UART
типа 16550A, то купите новую последовательную плату (она стоит менее $50).
Когда вы приобретаете новую плату, удостоверьтесь, что вы можете на ней
менять IRQ!
Обратите внимание: первые версии микросхем 16550 UART имели ошибку. Это было
быстро обнаружено, и был выпущен исправленный вариант микросхемы - 16550A UART.
Относительно небольшое число дефектных микросхем однако вошло в обращение.
Маловероятно, что вы столкнетесь с одной из них, но вы должны посмотреть, точно
ли у вас стоит 16550A, особенно на последовательных платах некоторого года
изготовления.
9.2. Имена последовательных портов
Исторически, Linux использовал для исходящих звонков устройства cuaX и
устройства ttySx для входящих звонков.
Код ядра, который требовал это был изменен в версиях ядер 2.0.x, и вы должны
теперь использовать ttySx и для исходящих, и для входящих звонков. Я полагаю,
что имена устройств cuaX могут совсем исчезнуть в будущих версиях ядра.
9.3. Конфигурирование вашего модема
Для PPP вы должны будете сконфигурировать ваш модем правильно - чтобы сделать
это ПРОЧТИТЕ РУКОВОДСТВО ПО ВАШЕМУ МОДЕМУ! Большинство модемов приходит с
фаюричной настройкой по умолчанию, в которой определены опции, требуемые для
PPP. Минимальная конфигурация определяет:
· Аппаратное управление потоком данных (RTS/CTS) (&K3 на многих Hayes модемах)
Вы должны проверить другие установки (в стандартных командах Hayes):
· E1 Command/usr/src/linux-2.0.27/include/linux/serial.h Эхоотображение ВКЛ
(требуемый для работы chat)
· Q0 Отчет по кодам результата (требуемый для работы chat)
· S0=0 Автоответ ВЫКЛ (если вы не хотите, чтобы модем брал трубку)
· &C1 Обнаружение несущей (Carrier Detect) ВКЛ только после соединения
· &S0 Готовность данных (DSR) всегда ВКЛ
· (в зависимости) Data Terminal Ready
Имеется сайт, предлагающий установки модемов для разнообразных типов модемов,
<http://www.in.net/info/modems/index.html>, который может помочь вам в этом.
Также неплохо бы исследовать, как функционирует последовательный интерфейс
между вашим компьютером и модемом. Наиболее современные модемы позволяют
фиксировать скорость последовательного интерфейса, позволяя изменять скорость на
интерфейсе телефонной линии до наивысшего возможного (для взаимодействия
локального и удаленного модема) значения.
Это известно как операция разбиения скорости. Если ваш модем поддерживает ее,
то заблокируйте последовательный интерфейс модема на самой высокой доступной
скорости (обычно 115,200 бод, но возможно и 38,400 бод для модемов 14,400).
Используйте ваше коммуникацуонное программное обеспечение (например minicom или
seyon), чтобы выяснить конфигурацию вашего модема, и установите его для PPP.
Многие модемы сообщают свои текущие установки в ответ на AT$V, но вы
должны свериться с вашим руководством по модему.
Если вы полностью сбили установки, то вы (обычно) можете возвратиться к
первоначальным, дав команду AT$F - возвращение к установкам. (Для
большинства модемов, с которыми я сталкивался, фабричные установки включают
все необходимое для PPP - но все-таки вы должны это проверить).
Как только вы составили строку установки модема, требуется вписать ее. Примите
решение: вы можете сохранить эти установки в энергонезависимой памяти вашего
модема, так что они могут быть задействованы соответствующей командой AT. В
качестве альтернативы вы можете передавать правильные установки на ваш модем
как часть процесса установки соединения PPP.
Если вы используете ваш модем только чтобы звонить из Linux вашему ISP или на
корпоративный сервер, то самым простым для вас будет сохранить настройки вашего
модема в энергонезависимом ОЗУ.
Если, с другой стороны, ваш модем используется другими приложениями и
операционными системами, то безопаснее передавать эту информацию на модем,
поскольку при каждом звонке предполагается, что модем гарантированно находится
в правильном состоянии. (Этот подход имеет дополнительное преимущество,
выраженное в том, что не будет страшно потерять строку установки модема,
записанную в энергонезависимом ОЗУ, что может действительно случиться).
9.4. Обратите внимание на управление потоком данных последовательного интерфейса
Когда данные путешествуют по последовательным линиям связи, может случаться так,
что данные прибывают быстрее, чем компьютер может их обработать (компьютер
может быть занят выполнением чего-то еще - помните, что Linux -
многопользовательская многозадачная операционная система). Чтобы
гарантировать, что данные не потерялись (входной буфер может переполниться
и следовательно данные теряются), нужен какой-то способ управления потоком
данных.
На последовательных линиях есть два главных способа это сделать:
· Использование аппаратных сигналов (Clear To Send/Request to Send - CTS/RTS)
· Использование программных сигналов (Control-S и Control-Q, также известные
как XON/XOFF).
В то время как последний может хорошо подходить для терминальной (текстовой)
связи, данные при PPP связи использует все 8 битов - и очень вероятно, что
где-нибудь в данных появятся байты, которые могут быть истолкованы
как Control-S и Control-Q. Так что, если модем установлен с использованием
программного управления потоком данных, то things can rapidly go berserk!
Для высокоскоростных связей, использующих PPP (который использует 8 битов
данных) необходимо аппаратное управление потоком данных, и по этой
причине вы должны использовать аппаратное управление потоком данных.
9.5. Тестирование вашего модема на исходящие звонки
Теперь, когда вы отобрали наружний последовательный порт и установили модем,
хорошо бы удостовериться, что эти установки действительно работают, позвонив
вашему ISP и таким образом выяснить, можете ли вы с ним соединиться.
При использовании пакета вашего коммуникационного терминала (типа minicom),
установите требуемую для PPP инициализацию модема, и позвоните на PPP сервер, с
которым вы хотите осуществить сеанс PPP связи.
(Обратите внимание: в этой стадии мы не пробуем создавать PPP соединение -
только хотим убедиться, что мы имеем правильный номер телефона и также выяснить
что именно сервер посылает нам для регистрации в системе и запуска PPP).
В течение этого процесса, или "захватите" (направьте лог в файл) весь процесс
входа в систему в файл или тщательно (очень тщательно) запишите в точности,
какие подсказки сервер выдает вам при вводе вашего имени пользователя и
пароля (и любые другие команды, необходимые для установления PPP соединения).
Если ваш сервер использует PAP, то вы не должны видеть подсказку входа в
систему, но должны взамен видеть на вашем экране (в текстовом представлении)
запуск протокола управления связи (который похож на мусор).
Несколько предупреждений:
· некоторые серверы очень интеллектуальны: вы можете регистрироваться либо
используя текстовые приглашения ко вводу имени/пароля пользователя, либо
используя PAP. Так что, если ваш ISP или корпоративный сайт использует PAP, но
вы не видите тут же появляющийся мусор, то это не обязательно означает, что вы
сделали что-то неправильно.
· некоторые серверы требуют, чтобы вы ввели сначала некоторый текст и только
потом начинают посялать стандартные PAP последовательности.
· Некоторые PPP серверы пассивны - который ничего не делают до тех пор, пока
клиент не отправит им допустимый lcp пакет. Если ppp сервер, с которым вы
соединяетесь, функционирует в пассивном режиме, то мусор вы не увидите!
· Некоторые серверы не запускают PPP, пока вы не нажмете enter - так что, если
вы правильно регистрируетесь и не видите мусор, то попробуйте нажать enter!
Cтоит позвонить по крайней мере дважды - некоторые серверы изменяют свои
подсказки (например, со временем!) при каждой последующей регистрирации. Две
критические подсказки, которые ваш Linux компьютер должен уметь определять:
· подсказка, которая требует, чтобы вы ввели ваше имя пользователя;
· подсказка, которая требует, чтобы вы ввели ваш пароль;
Если вы должны выдать команду, чтобы запустить PPP на сервере, то вы будете
также должны выяснить, какую подсказку сервер выдает вам, для ввода этой
команды.
Если ваш сервер автоматически запускает PPP, как только вы зарегистрировались,
то вы увидите мусор на вашем экране - это PPP сервер посылает на вашу
машину информацию, чтобы запустить и сконфигурировать PPP соединение.
Это должно выглядеть примерно так
______________________________________________________________________
~y}#.!}!}!} }8}!}$}%U}"}&} } } } }%}& ...}'}"}(}"} .~~y}
______________________________________________________________________
(and it just keeps on coming!)
На некоторых системах PPP должен быть явно запущен на сервере. Это обычно
из-за того, что сервер был установлен с позволением входить по PPP-логину
в систему и запускать системный шелл, используя ту же самую пару имени/пароля
пользователя. Если дело обстоит так, то выдайте эту команду, когда
зарегистрируетесь в системе. Снова вы увидите мусор,так как серверная сторона
запустила PPP соединение.
Если вы не видите это сразу же после соединения (и регистрации в системе и
запуска PPP сервера, если требуется), то нажмите enter, чтобы увидеть,
запустится ли PPP сервер ...
В этой точке, вы можете сказать вашему модему "положить трубку" (обычно, для
этого надо быстро напечатать +++ и потом дать команду ATHO, если ваш модем
ответил OK).
Если вы не можете заставить ваш модем работать, читать руководство по вашему
модему, man по вашей коммуникационной программе и Serial HOWTO! Когда вы их
изучите, действуйте как сказано выше.