Чтение онлайн

на главную

Жанры

Стахнов Алексей Александрович

Шрифт:

• ISO 3309–1979 – описывает структуру пакетов HDLC для использования в синхронных системах;

• ISO 3309:1984/PDAD1 – описывает предложения по изменениям в ISO 3309–1979, которые позволяют использовать асинхронные системы.

На рис. 31.1 изображен формат пакета протокола РРР.

Рис. 31.1. Структура пакета протокола РРР

Рассмотрим значения полей пакета протокола РРР:

• Флаг – один байт, обозначающий начало или конец пакета. Поле флага содержит двоичную последовательность: 01111110;

• Адрес – один байт, содержащий двоичную последовательность: 11111111, стандартный широковещательный адрес. РРР не поддерживает индивидуальную адресацию станций;

• Управление – один байт, содержащий двоичную последовательность: 00000011, который посылается для передачи пользовательских данных в неразделенных пакетах;

• Протокол – 2 байта определяют протокол, упакованный в пакете протокола РРР. Значения протоколов можно узнать в соответствующем RFC;

• Данные – 0 или больше байтов, составляющих датаграмму протокола, указанного в поле протокол. Конец информационного поля определяется нахождением заканчивающей последовательности и 2-байтной последовательности в поле контрольной суммы. По умолчанию максимальная длина поля данных 1500 байтов.

Однако во время установления сеанса программы pppd могут договориться использовать другое значение поля данных;

• Контрольная сумма – обычно 16 битов. Однако при установлении соединения pppd могут договориться об использовании 32-битной контрольной суммы.

РРР-протокол управления соединением (LCP)

РРР-протокол управления соединением (LCP) предоставляет методы для установления, конфигурирования, поддержания и тестирования РРР-соединения. Протокол LCP выполняет функции, приведенные ниже:

• Конфигурирование и установление связи. Перед передачей какой-либо информации (к примеру, пакет IP) протокол LCP должен открыть соединение и произвести начальный обмен параметрами настройки. Этот этап заканчивается, когда пакет о подтверждении произведенной настройки будет послан и принят обратно.

• Определение качества связи. Протокол LCP позволяет (но эту возможность зачастую не используют) добавить фазу тестирования канала связи. Тестирование канала связи должно происходить сразу же за конфигурированием и установлением связи. Во время проверки качества связи определяется – способно ли соединение с достаточным качеством транспортировать какой-либо сетевой протокол.

• Установление настроек сетевого протокола. После того как протокол LCP закончит определение параметров связи, сетевые протоколы должны быть независимо друг от друга настроены соответствующими протоколами NCP, которыми могут в любой момент времени начать или прекратить пользоваться.

• Окончание связи. Протокол LCP может в любое время прервать установленную связь. Это может произойти по требованию пользователя или из-за какого-нибудь события, к примеру, потери несущей или истечению допустимого периода времени неиспользования канала.

Существуют три типа LCP-пакетов:

• пакеты установления – используются для установления и настройки связи;

• пакеты прерывания – используются для прерывания установленной связи;

• пакеты сохранения связи – используются для управления и диагностики связи.

Сокращения, используемые при описании протокола РРР

В табл. 31.2 приведены некоторые аббревиатуры, используемые при описании протокола РРР. Расшифровка содержит как английское значение, так и русский перевод.

Таблица 31.2. Аббревиатуры, используемые при описании протокола РРР

Стандарты, описывающие протокол РРР

В табл. 31.3 приведены стандарты (RFC) протокола РРР.

Таблица 31.3. Стандарты протокола РРР

Настройка сервера входящих звонков (dial-in)

В этом разделе мы перейдем к сугубо практическим действиям – настроим наш сервер для приема входящих звонков. Поскольку мы уже рассматривали в гл. 30, как настроить компьютер с операционной системой Linux таким образом, чтобы он выступал шлюзом для вашей локальной сети, – то в этой главе нам будет значительно проще.

Итак, мы умеем настраивать систему таким образом, чтобы она выступала в роли шлюза для вашей локальной сети. Но бывает нужно получить доступ к локальной сети организации, например из дома, в том числе так же из дома выйти в Интернет через корпоративную локальную сеть. Нет ничего проще. Настраивать РРР-соединение мы уже научились, осталось только установить программу, которая умеет "поднимать трубку" модема по входящему звонку и совершать некоторые дополнительные действия. Такой программой является mgetty – признанный фаворит в своей области, умеющий помимо всего прочего посылать и принимать факсы, а также с помощью голосового модема принимать и отправлять voice mail – голосовую почту.

Настройка mgetty

Обычно mgetty, как и ррр, входит в стандартную поставку дистрибутива. Единственное, что необходимо проверить, был ли пакет mgetty скомпилирован с опцией – dauto_ppp, и если нет, то пакет следует перекомпилировать с этой опцией (в дистрибутиве Red Hat mgetty скомпилирован требуемым нам образом).

После установки mgetty нам надо отредактировать конфигурационные файлы.

В файле /etc/mgetty+sendfax/login.config мы должны написать:

/AutoPPP/ – а_ррр /usr/sbin/pppd auth refuse-chap require-pap login – /bin/login @

Эта строка говорит mgetty следующее:

• после установления входного соединения необходимо вызвать программу pppd;

• для пользователя требуется авторизация;

• аутентификацию по протоколу CHAP – отклонять и требовать авторизации по протоколу РАР.

После установления соединения mgetty анализирует данные, приходящие с модема, и в случае, когда приходит запрос на авторизацию по протоколу РАР, программа сразу же запускает pppd, который и проводит аутентификацию по протоколу РАР.

Далее, нам необходимо отредактировать файл /etc/mgetty+sendfax/mgetty.config приблизительно следующим образом:

port ttyS1

speed 115200

data-only у

debug 3

init-chat "" ATZ OK

answer-chat "" ATA CONNECT \c \r

Как видите, модем подключен ко второму последовательному порту, скорость обмена 115200, строка инициализации atz. Далее нужно добавить mgetty в файл inittab. Для этого достаточно дописать всего лишь одну строку:

S4:2345:respawn:/sbin/mgetty /dev/ttyS1

Перегрузив операционную систему, можно приступать к испытаниям – попробуйте позвонить на телефонный номер, где установлен ваш модем – если все настроено нормально – модем должен «поднять трубку».

Настройка pppd

С настройкой pppd вы уже ознакомились в гл. 30. Поэтому, чтобы не повторяться, просто приведем соответствующие конфигурационные файлы с небольшими комментариями.

Файл options.ttyS1 должен содержать следующие данные:

# Устройство

lock

login

auth

modem

crtscts

–chap

+pap

# наш интерфейс: удаленный интерфейс

192.168.10.100:192.168.10.101

# маска подсети

netmask 255.255.255.0

# адрес сервера DNS для клиента Windows

ms-dns 192.168.10.100

Файл /etc/ppp/pap-secrets должен содержать следующие данные:

user1 сервер. домен "" * user2 сервер. домен "" *

где:

• user1 – имя пользователя, причем он должен существовать в вашей системе, где установлен модем;

• user2 – сервер,

на котором будет проводиться аутентификация; в нашем случае вместо сервер. домен необходимо поставить имя компьютера, где расположен модем;

• "" – отсутствие пароля указывает на то, что пароли необходимо брать из файла /etc/shadow;

• * – абонент может производить аутентификацию с любого IP-адреса.

Вот и все – вы стали микропровайдером, причем пользователям Windows сильно облегчили жизнь, поскольку IP-адрес и адрес DNS-сервера вы выдаете автоматически, кроме того, отпадает потребность в использовании скрипта для соединения.

Настройка callback-сервера

Итак, вы настроили свой dial-in-сервер, попользовались им какое-то время и захотели чего-то другого. Например, в вашем городе повременная оплата и часами работать в Интернете из дома не получается, но руководство вашей организации не возражает против того, чтобы вы работали за ее счет. Дело за малым – организовать ваш dial-in-сервер таким образом, чтобы не вы ему звонили, а он вам. В компьютерных документах такой сервер зовется callback-сервером. Функционирует он следующим образом.

Сначала клиент дозванивается через модем к callback-еерверу. Модем на сервере настроен на прием входящих звонков (установку и настройку dial-in-сервера мы только что рассмотрели). После установки соединения сервер предлагает клиенту пройти аутентификацию. Клиент подключается к нему как особый callback-пользователь. После этого модем на сервере обрывает связь и сам звонит клиенту по номеру, который закреплен за компьютером клиента. Модем на клиентском компьютере готов принять обратный звонок, и после установления соединения происходит повторная авторизация. По окончании аутентификации устанавливается РРР-соединение. Далее клиент работает обычным образом.

Конфигурация callback-сервера

После того как настройка dial-in-сервера завершена, необходимо настроить callback. Для этого надо выполнить следующие действия:

1. Создать нового пользователя back.

2. Создать пустой файл с именем callback.conf в /etc/mgetty/.

3. В файл /etc/mgetty/login.config добавить следующую строку:

back – /usr/sbin/callback -S 1234567

После ключа -S указывается номер, по которому сервер должен сделать обратный звонок клиенту.

Конфигурация клиентов

Поскольку сервер мы уже сконфигурировали, необходимо сконфигурировать клиента и проверить, каким же образом работает callback. Начнем с операционной системы Linux.

Конфигурирование Linux-клиента

Для конфигурирования клиента Linux необходимо выполнить следующее:

1. Создать файл /etc/ppp/options, в котором должны быть такие строки:

lock

defaultroute

noipdefault

modem

115200

crtscts

debug

passive

2. Создать файл ppp-callback в /etc/ppp/peers/, в котором должны быть такие строки:

ttyS1 33600 crtscts

connect \'/usr/sbin/chat -v -f /etc/ррр/chat-callback\'

noauth

3. Создать файл /etc/ppp/chat-callback, в котором должны быть такие строки:

ABORT BUSY

ABORT VOICE

ABORT "NO DIALTONE"

ABORT "NO ANSWER"

"" ATZ

OK ATDP7654321 # Телефонный номер сервера

CONNECT \d\d

ogin: \q\dback

TIMEOUT 90

RING AT&C0S0=1

ogin: \q\dvasya

assword: \q\dpasswordforvasya

В файл chat-callback необходимо вписать телефон call back-сервера, имя и пароль пользователя. 4. Создать файл /usr/bin/pppcall, в котором должны быть такие строки:

#!/bin/bash /usr/sbin/pppd – detach call ppp-callback &

Сделать этот файл исполняемым.

Теперь для того, чтобы позвонить на ваш сервер, достаточно запустить скрипт pppcall.

Конфигурирование клиента MS Windows 98 Для Windows конфигурация производится по-другому. Выполните команду меню Пуск | Программы | Стандартные | Удаленный доступ к сети | Новое соединение . Укажите данные, необходимые для дозвона к серверу. Помимо этого, в настройках модема на вкладке Подключения нажмите кнопку Дополнительно и в строке инициализации модема укажите следующее:

&c0s0=1

Теперь пробуем дозвониться до нашего сервера. После дозвона в открывшемся окне терминала вы увидите приглашения для аутентификации.

Зарегистрируйтесь в системе как back. После этого модем со стороны сервера оборвет связь, подождет несколько секунд и перезвонит вам. После установки callback-соединения вам предложат пройти повторно авторизацию. Введите ваш нормальный логин и пароль и нажмите кнопку Продолжить в окне терминала. Все.

Настройка модемного соединения для пользователя

С настройкой сервера вы уже знакомы. Пора приступать к настройке модемного соединения клиента. Но предварительно поговорим о модемах.

Модемы бывают трех классов.

• Наружный модем, подключаемый к последовательному порту (нормальный, аппаратный модем).

• Внутренний модем (нормальный, аппаратный модем, обычно с интерфейсом ISA).

• Win-модем (наружный модем, подключаемый к USB-порту, или внутренний модем с интерфейсом PCI).

С первыми двумя понятно – поставил, настроил, работай.

С Win-модемом все несколько сложнее. Идея этого модема заключается в том, чтобы упростить и удешевить модем за счет того, что вся обработка сигнала после преобразования из аналогового вида в цифровой возложена на процессор компьютера и драйвер модема. Поэтому в требованиях к аппаратным средствам для этого модема указан процессор не ниже Pentium 166 и объем оперативной памяти не менее 32 Мбайт. А Win-модемом такие устройства назвали потому, что драйверы первоначально были написаны только для Windows. Сказать, что Win-модем работает хорошо, особенно на наших телефонных линиях, – нельзя. На нормальной телефонной линии и цифровой АТС Win-модем может устойчиво работать, правда скорости выше 44 ООО бит/с вы никогда не получите, а реальная скорость будет где-то возле 28 800—33 600 бит/с. Причем, по опыту работы, Win-модем на чипе от Lucent более послушный в настройке и несколько лучше себя ведет, чем модемы на чипе Conexant или Pctel.

Предположим, вы купили Win-модем и хотите его настроить под операционной системой Linux. Еще года полтора назад это бы не удалось – производители модемов драйверы под Linux не выпускали, спецификаций на модем сторонним разработчикам не давали, а самостоятельно реализовать в драйвере протокол V.34 доступно только программистам экстра-класса. Но в последнее время индустрия разворачивается к Linux лицом – выпускаются драйверы, некоторая часть даже с исходным кодом.

Первое, что следует сделать – найти на сайте производителя модема или производителя модемного чипа драйвер под Linux. Сходите также по ссылкам, приведенным в конце главы, например на www.linmodems.org, – наверняка это вам поможет. Далее действуйте по инструкции, прилагаемой к драйверу.

Настройка модема в текстовом режиме

Все просто, идем по пунктам:

1. Создаем файл /etc/ppp/options, в котором содержатся следующие строки:

lock

defaultroute

noipdefault

modem

115200

crtscts

debug

2. Создаем файл ppp-call в /etc/ppp/peers/, в котором содержатся следующие строки:

ttySl 115200 crtscts

connect /usr/sbin/chat -v -f /etc/ppp/chat-call\'

noauth

3. Создаем файл /etc/ppp/chat-call, в котором содержатся следующие строки:

ABORT BUSY

ABORT VOICE

ABORT "NO DIALTONE"

ABORT "NO ANSWER"

"" ATZ

OK ATDP7654321 # Телефонный номер провайдера

CONNECT \d\d

ogin: \q\dvasya

assword: \q\dpasswordforvasya

Поделиться:
Популярные книги

Граф

Ланцов Михаил Алексеевич
6. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Граф

Идеальный мир для Лекаря 27

Сапфир Олег
27. Лекарь
Фантастика:
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 27

Начальник милиции. Книга 3

Дамиров Рафаэль
3. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 3

Его маленькая большая женщина

Резник Юлия
Любовные романы:
современные любовные романы
эро литература
8.78
рейтинг книги
Его маленькая большая женщина

Адаптация

Уленгов Юрий
2. Гардемарин ее величества
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Адаптация

Идеальный мир для Лекаря 28

Сапфир Олег
28. Лекарь
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 28

Курсант: назад в СССР 9

Дамиров Рафаэль
9. Курсант
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Курсант: назад в СССР 9

Газлайтер. Том 15

Володин Григорий Григорьевич
15. История Телепата
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Газлайтер. Том 15

Кодекс Охотника. Книга IX

Винокуров Юрий
9. Кодекс Охотника
Фантастика:
боевая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга IX

Клан

Русич Антон
2. Долгий путь домой
Фантастика:
боевая фантастика
космическая фантастика
5.60
рейтинг книги
Клан

Купец V ранга

Вяч Павел
5. Купец
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Купец V ранга

Неудержимый. Книга XX

Боярский Андрей
20. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XX

Студиозус

Шмаков Алексей Семенович
3. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Студиозус

Черный дембель. Часть 2

Федин Андрей Анатольевич
2. Черный дембель
Фантастика:
попаданцы
альтернативная история
4.25
рейтинг книги
Черный дембель. Часть 2