PPPD(8)

unlk аватар

ИМЯ

pppd - демон протокола Point-to-Point

ФОРМАТ

pppd [ ключи ]

ОПИСАНИЕ

PPP - это протокол, используемый для установки межсетевых соединений посредством модемов, DSL и многих других средств связи вида точка-точка. Работая с драйвером ядра PPP, демон pppd устанавливает и поддерживает соединения с удаленной системой (называемой "удаленная точка" или просто "точка"), а также выделяет обеим точкам адреса межсетевого протокола (IP). Кроме того, pppd может аутентицировать точку и/или предоставить удаленной точке аутентикационную информацию. PPP может работать не только с IP, но и с другими сетевыми протоколами, но на практике эту возможность используют чрезвычайно редко.

ЧАСТО ПРИМЕНЯМЫЕ КЛЮЧИ

ttyname
Для коммуникации с точкой использовать последовательный порт под названием ttyname. При открытия устройства к ttyname автоматически будет приставлена строка "/dev/". Если имя устройства не будет указано, или, если будет указано имя терминала ассоциированного со стандартным вводом, то pppd станет использовать терминал ассоциированный со стандартным вводом, и уже не сможет переключиться в фоновый режим. Значение для ключа ttyname берется только от привилегированного источника и не может быть изменено непривилегированным пользователем.

speed
Опция задается десятичным числом и рассматривается как желаемая бодовая скорость для последовательного устройства. На таких системах как 4.4BSD и NetBSD может быть задана любая скорость. Другие системы (в т.ч. Linux, SunOS) поддерживают ограниченый ряд общеиспользуемых бодовых скоростей.

asyncmap map
Эта опция устанавливает т.н. "карту символов асинхронного управления" (англ. ACCM). ACCM - это набор из 32 битов, по одному на каждый из управляющих символов ASCII с кодами от 0 до 31, где бит со значением 1 показывает, что соответствующий символ ASCII не может быть использован в PPP-пакетах, поступающих в данную систему. Карта кодируется шестнадцатиричным числом (без префикса 0x) где младший значащий бит (00000001) указывает на символ 0 и старший значащий бит (80000000) указывает на символ 31. Pppd будет просить точку присылать этот символ как 2-байтовую эскейп-последовательность. Если задано несколько опций asyncmap, то значения этих опций будут объединены логическим ИЛИ. Если опция asyncmap не будет задана вовсе, умолчание - это нуль, таким образом, pppd попросит точку не эскейпировать управляющие символы. Для эскейпирования передаваемых данной системой символов нужно использовать опцию escape.

auth
Необходимость в прохождении точкой аутентикации для получения разрешения на прием или передачу сетевых пакетов. Если в системе задан маршрут по умолчанию, то данная опция будет включена pppd автоматически. Если не задано ни этой опции, ни ключа noauth, то pppd только позволит точке использовать адреса IP, к которым система еще не имеет маршрута.

call name
Чтение опций из файла /etc/ppp/peers/name. Этот файл может содержать привилегированые ключи (такие как noauth), которые будут задействованы, даже если pppd запустил не root. Строка name не может начинаться с / или включать .. как компонент путевого имени. Формат опций этого файла рассматривается ниже.

connect script
Обычно здесь нечто необходимое для выполнения подготовки к соединению перед стартом протокола PPP; к примеру для случая модема - это команды, которые необходимо дать модему для набора требуемого номера. Эта опция специфицирует команду для выполнения pppd (посредством передачи её оболочке) перед началом попытки согласования PPP. Часто для этой цели используют программу chat (8), поскольку она предоставляет средства для обмена строками управления с модемом. Значение для этой опции берется только от привилегированного источника и не может быть изменено непривилегированным пользователем.

crtscts
Задает pppd устанавливать аппаратный контроль потока последовательного порта используя сигналы CTS и RTS интерфейса RS-232. Если не задано ни одной из опций: crtscts, nocrtscts, cdtrcts, nocdtrcts, то установка аппаратного контроля потока последовательного порта остается без изменений. Некоторые последовательные порты (такие как на Macintosh) не имеют настоящего выхода RTS. Такие последовательные порты будут успешно передавать по запросу модема (через CTS), но будут неспособны запросить модем остановить передачу на компьютер. В этом случае режим crtscts поддерживается способностью использовать DTR как линию, контролирующую модем.

defaultroute
После успешного выполнения согласования IPCP, используя точку как шлюз, внести в системную таблицу маршрутизации маршрут по умолчанию. Этот элемент будет удален из таблицы, как только разорвется PPP-соединение. Если pppd до подключения данной опции уже успел прочесть опцию nodefaultroute, то опция nodefaultroute окажется доступной только привилегированным (уполномоченным) пользователям.

disconnect script
Выполнение команды заданной в script через оболочку, после того, как pppd разорвет соединение. Эта команда может, к примеру, передавать команды модему чтобы заставить его "повесить трубку" если модемные аппаратные управляющие сигналы недоступны. Сценарий рассоединения не запускается если модем уже "повесил трубку". Значение для этой опции берется только от привилегированного источника и не может быть изменено неуполномоченным (непривелигерованным) пользователем.

escape xx,yy,....
Специфицирует, что при передаче точке заданные символы должны быть эскейпированы (это не зависимосит от требований эскейпирования к этим символам по ACCM точки). Символы на эскейпирование задаются как список шестнадцатеричных чисел, разделенных запятыми. Полезно помнить, что опцией escape могут быть заданы почти все возможные символы, в отличие от ключа asyncmap, задающей эскейпирование только для управляющих символов. Символы, которые нельзя эскейпировать имеют следующие шестнадцатеричные значения: 0x20 - 0x3f или 0x5e.

file name
Чтение опций из файла name (формат рассматривается ниже). Файл должен быть читаем для пользователя, запустившего pppd.

init script
Запуск через оболочку команды, заданной как script для инициализации последовательной линии. Этот сценарий обычно использует программу chat (8) для настройки модема на автоответ. Значение для этой опции берется только от привилегированного источника и не может быть изменено непривилегированным пользователем.

lock
Задает pppd создавать блокировочный файл в стиле UUCP для каждого последовательного устройства для гарантированно эксклюзивного доступа к устройству.

mru n
Задает MRU (максимальной принимаемой единице) значение n. Pppd будет просить точку присылать пакеты не более чем n байт. Значение n должно быть между 128 и 16384; стандартное значение это 1500. Значение 296 работает на очень медленных соединениях (40 байт для заголовка TCP/IP + 256 байт данных). Необходимо помнить, что для протокола IPv6 MRU должно быть как минимум 1280.

mtu n
Установка значение MTU (максимальной передаваемой единицы) на n. Если точка запрашивает меньшее значение через согласование MRU, pppd будет просить сетевой код ядра посылать через сетевой интерфейс PPP пакеты данных длиной не более n байт. Необходимо помнить, что для протокола IPv6 MTU должен быть как минимум 1280.

passive
Включение ключа "пассивности" в LCP. С этой опцией pppd попытается проинициировать соединение; но если от точки не придет ответа, то pppd станет пассивно ожидать требуемый LCP-пакет, а не завершаться, что произойдет без этой опции.

КЛЮЧИ

<локальный IP-адрес>:<удаленный IP-адрес> Установка IP-адресов локального и/или удаленного интерфейса. Любой из них можно опустить. IP-адреса могут быть заданы хост-именем или в десятичной нотации с точками (т.к. 150.234.56.78). Локальный адрес по умолчанию - это (первый) IP-адрес хост-имени системы (только если не задана опция noipdefault). Если удаленный адрес не задан никакой опцией, то он может быть получен от точки. Таким образом, в простейшем случае эта опция не обязательна. Если локальный и/или удаленный IP-адреса заданы этой опцией, pppd в IPCP-согласовании не будет учитывать значение предоставленное точкой, только если не указан ключ ipcp-accept-local и/или ipcp-accept-remote соответственно.

ipv6 <идентификатор локального интерфейса>,<идентификатор удаленного интерфейса>
Установка локального и/или удаленного 64-битного идентификатора интерфейса. Любой из них можно опустить. Идентификатор может быть задан в стандартной ascii нотации адресов IPv6 (т.е. ::dead:beef). Если не применен ключ ipv6cp-use-ipaddr, то локальным идентификатором будет локальный адрес IPv4 (см. выше). На системах поддерживающих уникальные устойчивые номера, такие как EUI-48 MAC-адресов Ethernet, опция ipv6cp-use-persistent может быть использована вместо ключа ipv6 ,. Если таких устойчивых номеров нет, то идентификатор будет автоматически подобран случайным образом.

active-filter-in filter-expression

active-filter-out filter-expression
Задают фильтр входящих и исходящих пакетов, через который пропускаются пакеты данных для выяснения считать ли их за активность связи, а, следовательно, сбрасывать счетчик простоя, или же по превышению счетчика отмечать бездействие и переводить связь в режим набора номера по необходимости (см. ключ demand). Часто данная опция используется совместно с опцией idle если по связи время от времени то и дело высылаются или получаются пакеты (к примеру, пакеты маршрутной информации), which would otherwise prevent the link ever appearing to be idle. Синтаксис фильтра filter-expression такой же как для tcpdump(8), за исключением неподходящих для PPP связи квалификаторов, таких как ether и arp. В общем случае фильтрующее выражение можно заключать в одинарные кавычки для экранирования от оболочки пробелов. В настоящее время данная опция доступна только для NetBSD, и только если ядро и pppd собраны с включением PPP_FILTER.

allow-ip address(es)
Разрешение удаленным точкамиям без прохождения аутентикации использовать заданный IP адрес или подсеть. Параметр разбирается для каждого элемента списка разрешенных IP-адресов в файле секретов (см. ниже раздел АУТЕНТИКАЦИЯ)

allow-number number
Разрешение удаленным точкамиям на подключение с заданного телефонного номера. Завершающий символ '*' расширяет диапазон номеров, начинающихся с прописанных до него цифр.

С ЭТОЙ ТОЧКИ ФОРМАТИРОВАНИЕ ВЫПОЛНЕНО ЧАСТИЧНО: >>>
bsdcomp nr,nt
Запрос точке на сжатие принимаемых от него пакетов по схеме BSD-Compress с максимальных размером кода nt бит, и соглашение на запрос точки о сжатии
отправляемых ему пакетов с максимальным размером кода nr бит. Если nt не задана, то для неё автоматически устанавливается значение nr. Для nr и nt
могут быть использованы значения в диапазоне от 9 до 15; большие значения дадут лучшую компрессию, но поглотят больше памяти ядра под комрессионные
словари. По желанию можно использовать значение 0 для nr или nt, выключающее сжатие в соответствующем направлении. Для полного отключения компрессии
BSD-Compress использовать опцию nobsdcomp или bsdcomp 0.

callback phone-number
Запрос перезвонить на phone-number. Это сработает только если точка понимает Call Back Configuration Protocol. Если вы иногда подключаетесь к серверам
это не поддерживающими, не стоит помещать данную опцию в главный файл опций.

cdtrcts
Использование нестандартного аппаратного управления потоком (т.е. DTR/CTS) для управления потоком последовательного порта. Если опций не задано опций
crtscts, nocrtscts, cdtrcts или nocdtrcts, то режим аппаратного управления потоком порта остается без изменений. У некоторых последовательных портов
(таких как последовательный порт Macintosh) нет цепи RTS. Для реализации настоящего двунаправленного управления потоком такие последовательные порты используют данный режим. В жертву при таком режиме приносится невозможность задействовать цепь DTR как линию управления модемом.

chap-interval n
Если эта опция задана, pppd будет повторно вызывать точку каждые n секунд.

chap-max-challenge n
Установка на n максимального числа вызовных передач CHAP (по умолчанию 10).

chap-restart n
Установка интервала перезапуска CHAP (тайм-аута повторной передачи для вызовов) на n секунд (по умолчанию 3).

child-timeout n
При выходе ожидание завершения любых порожденных процессов (таких как указаны в команде pty) до n секунд. По истечению тайм-аута, процесс pppd даст сигнал SIGTERM всем оставшимся порожденным им процессам и завершится сам. Величина 0 означает отсутствие тайм-аута, то есть pppd будет ждать до тех пор, пока не завершатся все порожденные им процессы.

connect-delay n
Ожидание правильного PPP-пакета от точки до n миллисекунд после завершения сценария подключения. По истечению этого времени или когда от точки пришел правильный PPP-пакет, pppd будет начинать отправку первого LCP-пакета. Величина по умолчанию это 1000 (1 секунда). Этот период ожидания примется во внимание только если используются ключи connect или pty.

debug
Подлючение средств отладки. Если задана данная опция, pppd будет журналировать в пригодной для последующего изучения форме содержимое всех отправляемых и получаемых пакетов управления. Пакеты журналируются через syslog с параметрами средства daemon и уровнем debug. Эта информация может быть направлена в файл по соответствующей установке в /etc/syslog.conf (см. syslog.conf(5)).

default-asyncmap
Отключение согласования asyncmap, принудительное эскейпирование всех управляющих символов в направлениях приема и передачи.

default-mru
Отключение согласования MRU (максимальной единицы приема). С данной опцией pppd будет использовать стандартную величину MRU 1500 байт в направлениях прима и передачи.

deflate nr,nt
Запрос точке о сжатии получаемых от него пакетов по схеме Deflate, c максимальным размером окна 2**nr байт, и, соглашение на сжатие пакетов отправляемых точке с максимальным размером окна 2**nt байт. Если nt не задана, то для неё автоматически устанавливается значение nr. Для nr и nt могут быть использованы значения в диапазоне от 9 до 15; большие значения дадут лучшую компрессию, но поглотят больше памяти ядра под комрессионные словари. По желанию можно использовать значение 0 для nr или nt, выключающее сжатие в соответствующем направлении. Для полного отключения компрессии Deflate использовать опцию nodeflate или deflate 0. (Надо помнить, что pppd запрашивает о компрессии Deflate предпочитая её BSD-Compress, если она поддерживается удаленной точкой.)

demand
Начинать связь только по требованию, т.е. когда присутствует трафик данных. При данной опции пользователем в командной строке или в файле опций должны быть указаны удаленные IP-адреса. Pppd будет сначала конфигурировать интерфейс и включать его для IP-трафика без процесса подключения к точке. Когда трафик доступен, pppd подключается к точке и выполняет согласование, аутентикацию, и т.д. После этого pppd начнет пропуск пакетов данных (т.е., IP-пакетов) по линии связи. Опция demand подразумевает (автоматически включает) опцию persist. Если это нежелательно, то надо после ключа demand указать ключ nopersist. Часто ключи idle и holdoff используются в сочетании с опцией demand.

domain d
Добавление к имени локального хоста доменного имени d в целях аутентикации. К примеру, если gethostname() возвращает имя porsche.Quotron.COM, то вы можете указать domain Quotron.COM. После этого pppd станет использовать имя porsche.Quotron.COM как для поиска секретов в файле секретов, так и в качестве имени по умолчанию для отправки точке во время аутентикации. Это - спецключ.

dryrun
С опцией dryrun pppd после разбора командой строки, файла опций и проверки значений опций, распечатает установленные значения опций и выйдет не
открывая линию связи. Значения опций журналируются с уровнем info, а также распечатываются на стандартный вывод если устройство на стандартном выводе не является устройством используемым pppd для коммуникации с точкой. (т.е. если pppd запускается не консоли на которой подается команда запуска, а на другом порту, например, на tty00)

dump
С опцией dump pppd распечатает значения всех установленных опций. Данная опция подобна ключу dryrun, за исключением того, что pppd продолжит как обычно, а не выйдет.

endpoint
Установка в качестве отличителя (дискриминатора) конечной точки посылаемой локальной машиной на удаленную в процессе многоканального согласования. Стандарт - использовать MAC-адреса первого системного интерфейса ethernet, или любого, в противном случае - IPv4 адрес, относящийся к имени хоста, или любой, ... <ЗАКОНЧИТЬ ПЕРЕВОД. ЭТО РАБОТАЕТ ТОЛЬКО ПОД LINUX.>

eap-interval n
Если указан данный ключ, и pppd аутентицирует точку (т.е. он - сервер) по EAP, pppd будет перезапускать аутентикацию EAP каждые n секунд. Для EAP SRP-SHA1 см. также опцию srp-interval.

eap-max-rreq n
Установка максимального числа EAP Requests, на которые будет отвечать pppd (как клиент) не услышав EAP Success или Failture. (Стандартно 20.)

eap-max-sreq n
Установка максимального числа EAP Requests которые будет делать pppd (как сервер) при аутентикации. (Стандартно 10.)

eap-restart n
Установить тайм-аут повторной передачи EAP Requests при выступлении в роли сервера (аутентикатора). (Стандартно 3 секунды.)

eap-timeout n
Установка максимального времени ожидания отправки точкой EAP Requests при выступлении в роли клиента (аутентицируемого). (Стандартно 20 секунд.)

hide-password
При журналировании содержимого пакетов PAP, эта опция заставляет pppd исключить из журнала строку пароля. По умолчанию.

holdoff n
Задание количества секунд ожидания перед перезапуском линии связи после её закрытия. Эта опция подействует если только будут использована опция persist или demand. Период выдержки не применятся если линия связи была закрыта из-за простоя.

idle n
Указание pppd отключаться если линия связи простаивает в течении n секунд. Линия связи простаивает когда нет пакетов данных (т.е. пакетов IP) на передачу или по приему. Необходимо помнить, что не рекомендуется использовать данную опцию с опцией persist, но без ключа demand. Если заданы ключи active-filter-in и/или active-filter-out, то наличие пакетов, отсеянных заданным фильтром активности будет считаться простоем линии связи, точно также, как если бы пакетов не было бы вовсе.

ipcp-accept-local
С этой опцией pppd будет принимать соображения точки относительно нашего (локального) адреса IP, даже если наш локальный адрес IP был задан ключом.

ipcp-accept-remote
C этой опцией pppd будет принимать соображения точки относительно своего (удаленного) IP адреса, даже если адрес для него IP был задан ключом.

ipcp-max-configure n
Установка на n максимального числа передач configure-Requests IPCP. (стандартно 10).

ipcp-max-failture n
Установка на n максимального числа configure-NAK возвращаемых перед началом отправки взамен configure-Rejects (стандартно 10).

ipcp-max-terminate n
Установка на n максимального числа передач terminate-request IPCP (стандартно 3).

ipcp-restart n
Установка на n секунд интервала (тайм-аута повторной передачи) перезапуска (стандартно 3).

ipparam string
Предоставляет дополнительный параметр сценариям ip-up и ip-down. Если задана эта опция, указаный string передается этим сценариям как 6-ой параметр.

+ipv6
Включение согласования IPv6CP и коммуникации IPv6. Для работы с IPv6CP вам всего необходимо задавать эту опцию явно.

-ipv6
Выключение согласования IPv6CP и коммуникации IPv6.

ipv6cp-accept-local
С этой опцией pppd будет принимать соображения точки относительно нашего (локального) адреса IPv6, даже если он был явно задан ключом.

ipv6cp-use-ipaddr
Использование локального адреса IPv4 в качестве адреса локального интерфейса. (v6?)

ipv6-use-persistent
Использование однозначно-доступного устойчивого значения для связи локальный адрес

ipv6cp-max-configure
Установка на n максимального числа передач configure-Requests IPv6CP. (стандартно 10).

ipv6cp-max-failture n
Установка на n максимального числа configure-NAK IPv6CP возвращаемых перед началом отправки взамен configure-Rejects (стандартно 10).

ipv6cp-max-terminate n
Установка на n максимального числа передач terminate-request IPv6CP (стандартно 3).

ipv6cp-restart n
Установка на n секунд IPv6CP-интервала (тайм-аута повторной передачи) перезапуска(стандартно 3).

ipx
Включить протоколы IPXCP и IPX. Эта опция в настоящее время доступна только под Linux, и только если ваше ядро сконфигурировано с поддержкой IPX.
.... далее опции для поддержки протокола ipx, ПЕРЕВОД НЕ ВЫПОЛНЕН....

kdebug n
Запуск отладочного кода драйвера PPP уровня ядра. Значения аргумента зависят от данного драйвера ядра, но в общем случае для включения отладочных сообщений нужно значение 1. (Нужно помнить, что такие сообщения только для отладки собственно самого драйвера ядра.) Для драйвера ядра Linux 2.2.x значением будет сумма бит: 1 для включения общих отладочных сообщений, 2 для запроса распечатки содержимого принятых пакетов, и 4 для запроса распечатки содержимого отправленных пакетов. В большинстве систем сообщения печатающиеся ядром журналируются syslog(8) в файл, указанный в конфигурационном файле /etc/syslog.conf.

ktune
Внесение pppd необходимых изменений в настойку ядра. Под Linux pppd включает форвардинг IP (т.е. установит /proc/sys/net/ipv4/ip_forward на 1), если используется опция proxyarp, и включает опцию динамического адреса IP (т.е. установит /proc/sys/net/ipv4/ip_dynaddr на 1) в режим по требованию, если локальный адрес меняется.

lcp-echo-failture n
Если задана эта опция, pppd будет предполагать что точка мертва, если n эхо-запросов LCP были отправлены без получения необходимого эхо-ответа LCP. Если это происходит, pppd разрывает соединение. Для использования этого ключа требуется ненулевое значение параметра lcp-echo-interval. Данная опция может быть использована для останова pppd после разрыва физического соединения (т.е. когда модем "повесил трубку") в ситуациях недоступности линий аппаратного управления модемом.

lcp-echo-interval n
Если задана эта опция, pppd будет слать точке кадры эхо-запросов LCP каждые n секунд. В нормальном случае точка должен ответить на эхо-запрос отправкой эхо-ответа. Эта опция может быть использована вместе с опцией lcp-echo-failture для установления факта отключения удаленной стороны.

lcp-max-configure n
Установка n для максимального числа передач конфигурационных запросов (стандартно 10).

lcp-max-failture n
Установка n для максимального числа configure-NAK LCP возвращаемых перед началом для отправки вместо configure-Reject (стандартно 3).

lcp-max-terminate n
Установка n для максимального числа передач terminate-requests (стандартно 3).

lcp-restart n
Установка n секунд для LCP-интервала (тайм-аута повторной передачи) перезапуска (стандартно 3).

linkname name
Установка name как логического имени линии связи. Pppd будет создавать файл, называющийся ppp-name.pid в /var/run (или /etc/ppp в некоторых системах) содержащий его идентификатор процесса. Это может быть использовано для выяснения номера процесса сервера pppd ответственного за данное соединение с удаленной системой. Спецключ.

local
Не использовать управляющие линии модема. С этой опцией pppd будет игнорировать состояние модемной линии CD (Carrier Detect) и не будет менять состояние линии DTR (Data Terminal Ready).

logfd n
Отправка журнальных сообщений в файловый дескриптор n. Pppd сможет отправлять журнальные сообщения максимум в один файл по файловому дескриптору (точно также, как если бы происходила отправка журнальных сообщений к syslog), так что данная опция и опция logfile взаимоисключающие. По умолчанию pppd отправляет журнальные сообщения на stdout (файловый дескриптор 1), при условии, что последовательный порт не открыт в качестве стандартного вывода.

logfile filename
Дописывать журнальные сообщения к файлу filename (точно также, как если бы происходила отправка журнальных сообщений к syslog). Файл открывается с правами пользователя, запустившего pppd, в режиме добавления.

login
Для аутентикации точки через PAP использовать системную базу паролей, и запись пользователя в системном файле wtmp. Необходимо помнить, что для получения точкой разрешения на доступ, на него должна быть запись не только в системной базе паролей, но и в файле /etc/ppp/pap-secrets.

maxconnect n
Завершение соединения через n секунд, после того, как оно станет доступно для сетевого трафика (т.е. через n секунд после запуска сетевого протокола).

maxfail n
Завершение после n последовательно проваленных попыток соединения. Величина 0 означает отсутствие на это ограничений. Значение по умолчанию 10.

ПЕРЕВОД НЕ ЗАВЕРШЕН:
modem
Использование управляющих линии модема. Эта опция преднастроена. С данной опцией pppd будет ждать от модема сигнал CD (Carrier Detect), чтобы удостоверится в открытии информационного канала (в режиме дозвона на удаленную систему, если не задан скрипт соединения) и чтобы быть в курсе, когда на локальный модем дозвонится удаленная сторона.

mp
Включение многоканального PPP; это просто еще одно название ключа multilink. Эта опция в настоящее время доступна только под Linux.

ПЕРЕВОД НЕ ВЫПОЛНЕН
mppe-stateful
MPPE (Microsoft Point to Point Encryption).

ПЕРЕВЕСТИ НОРМАЛЬНО
mpshortseq
Включение использования коротких (12-тибитных) чисел последовательности в многоканальных заголовках, в противоположность 24-битным числам. Эта
опция доступна только под Linux, и действительна только при включеной многоканальности (см. опцию multilink).

mrru n
ПЕРЕВОД НЕ ВЫПОЛНЕН

ms-dns
Если pppd выступает в роли сервера для клиентов Microsoft Windows, эта опция позволит pppd предоставить клиентам один или два адреса DNS (Domain Name Server). Первый параметр этого ключа задает основной адрес DNS; второй параметр (если указан) задает дополнительный адрес DNS. (В более старых версиях pppd эта опция была представлена под именем dns-addr.)

ms-wins
Если pppd выступает в роли сервера для клиентов Microsoft Windows или клиентов "Samba" эта опция позволит pppd предоставить один или два адреса сервера WINS (Windows Internet Name Service). Первый параметр этого ключа задает основной адрес WINS; второй параметр (если указан) задает дополнительный адрес WINS.

multilink
Включение использования протокола многоканального PPP. Если точка также поддерживает мультиканал, то эта линия связи может стать частью мультканала между локальной и удаленной системой. Если мультиканал уже существует, то pppd присоединит к нему свою линию связи, в противном случае будет создан новый мультиканал. См. раздел МУЛЬТИКАНАЛ ниже. Эта опция в настоящее время доступна только под Linux.

name name
Установка name в качестве имени локальной системы для аутентикационных целей. Это является привилегированной опцией. С такой опцией pppd для поиска секрета при аутентикации точки будет просматривать те строки файла секретов, которые содержат name во втором поле. Вдобавок, если это не отменить опцией user, name будет использовано как имя для отправки точке при аутентикации в его системе. Надо отметить, что pppd не дописывает к параметру name имя домена.)

noaccomp
Отключение компрессии Address/Control в обоих направлениях (передача и прием).

noauth
Удаленная точка не будет проходить аутентикацию. Спецключ.

nobsdcomp
Отключение сжатия BSD-Compress; pppd не будет делать запрос или соглашаться на сжатие пакетов по схеме BSD-Compress.

noccp
Отключение согласования CCP (Compression Control Protocol). Эта опция будет необходима только если точка глючен и оказывается в замешательстве при запросе pppd согласования CCP.

nocrtscts
Отключение аппаратного управления потоком (т.е. RTS/CTS) последовательного порта. Если ни одна из опций crtscts, nocrtscts, cdtrcts или nocdtrcts не задана, то установки по аппаратному управлению потоком последовательного порта остаются без изменений.

nocdtrcts
Данная опция является синонимом nocrtscts. Эти опции будут одинаково отключать сразу обе формы аппаратного управления потоком.

nodefaultroute
Запрет на опцию defaultroute. Системный администратор желающий предотвратить создание пользователями маршрутов по умолчанию посредством pppd может внести данную опцию в файл /etc/ppp/options.

nodeflate
Отключение сжатия Deflate; pppd не будет делать запрос или соглашаться на сжатие пакетов по схеме Deflate.

nodetach
Не отключатся от управляющего терминала. Если в качестве последовательного устройства pppd задан не терминал, то pppd без этой опции станет фоновым процессом.

noendpoint
Запрещает для pppd отправку точке или принятие от него дискриминатора конечной точки (см. ниже раздел МУЛЬТИКАНАЛ). Данная опция необходима только при наличии у точки программных особенностей отрицательного характера.

noip
Отключение согласования IPCP и коммуникации IP. Эта опция необходима, когда удаленная точка имеет программные недочеты и при запросе на согласование IPCP оказывается в замешательстве.

noipv6
Еще одно название ключа -ipv6.

noipdefault
Отмена стандартного поведения pppd, наблюдающегося при неуказании ему локального адреса IP, и заключающееся в явлении автоматического установления этого параметра на основании хост-имени (при возможности). При этой опции, точка получает адрес локальной системы в процессе IPCP-согласования (при условии, что локальный адрес не задан явно в командной строке или файле опций).

noipx
Отключение протоколов IPXCP и IPX. Данная опция может быть необходимой в случае наличия у программного обеспечения PPP точки технических особенностей отрицательного характера, проявляющихся без данного ключа при поступлении ему запросов на IPXCP-согласование.

noktune
Ключ, противоположный ktune; pppd запрещается изменять настройки ядра системы.

nolog
Не журналировать сообщения в файл или файловый дескриптор. Данный ключ отменяет действие опций logfd и logfile.

nomagic
УТОЧНИТЬ ПЕРЕВОД:
Отключение согласование волшебного номера. С этой опцией pppd не сможет детектировать замкнутую линию. Данная опция может понадобится только если точка имеет программные недочеты.

nomp
Запрет использования мультиканала PPP. В настоящее время эта опция доступна только под Linux.

nomppe
Отключение MPPE (Microsoft Point to Point Encryption). Данный ключ срабатывает по умолчанию.

nomppe-40
Отключение в MPPE 40-битного шифрования.

nomppe-128
Отключение в MPPE 128-битного шифрования.

nomppe-stateful
Отключение в MPPE stateful режима. Данный ключ срабатывает по умолчанию.

nompshortseq
ВЫПОЛНИТЬ ПЕРЕВОД. см. выше mpshortseq

nomultilink
Запрет использования мультиканала PPP. В настоящее время эта опция доступна только под Linux.

nopcomp
Отключение протокола компрессии полей согласования в направлениях приема и передачи.

nopersist
Не пытаться автоматически осуществлять переподключение в случае разрыва соединения. Если не заданы ключи persist или demand, данная такое поведение стандартно.

nopredictor1
Не запрашивать и не соглашаться на компрессию по схеме Predictor-1.

noproxyarp
Отмена ключа proxyarp. Системный администратор, желающий застраховаться от попыток пользователей создать прокси-ARP с помощью pppd может прописать данный ключ в файле /etc/ppp/options.

ПЕРЕВОД НЕ ПРОВЕРЕН ПРАКТИКОЙ, УТОЧНИТЬ:
notty
В общем случае pppd требуется терминальное устройство. С данной опцией pppd будет размещаться на паре ведущего/ведомого псевдотерминалов, используя ведомый псевдотерминал в качестве личного терминального устройства. Pppd будет порождать процесс, выступающий как 'символьный шунт' для переброски символов между ведущим превдотерминалом и его стандартным вводом и выводом. Таким образом pppd будет передавать символы на свой стандартный вывод и принимать символы со своего стандартного ввода даже если они не являются терминальными устройствами. Данная опция увеличивает latency и нагрузку на CPU при переброске данных через интерфейс ppp, т.к. все принимаемые и отправляемые символы должны течь через процесс символьного шунтирования. Если применен данный ключ, то имя устройства не может быть указано явно.

nojv
Отключение сжатия заголовков TCP/IP по Ван Джейкобсону в направлениях приема-передачи.

nojvccomp
Отмена ключа сжатия идентификатора соединения в компрессии заголовков TCP/IP по Ван Джейкобсону. При данной опции, pppd не будет исключать байт идентификатора соединения из сжатых по Ван Джейкобсону заголовков TCP/IP, и не будет требовать этого у точки.

papcrypt
Уведомляет pppd о том, что секретные пароли, хранящиеся в файле /etc/ppp/pap-secrets и использующиеся для опознавания точки зашифрованы, и, следовательно, pppd не должен принимать пароль не прошедший шифровку, но при этом совпавший с одним из секретов в файле /etc/ppp/pap-secrets.

pap-max-authreq n
Установка на n максимального числа аутентикационных запросов (предопределено 10).

pap-restart
Установка интервала перезапуска PAP (тайм-аута повторной передачи) в n секунд (предопределено 3).

pap-timeout n
Установка максимального времени n секунд, которые pppd будет ждать точку для прохождения аутентикации по PAP (при 0 временных ограничений нет).

ПЕРЕВОД НЕ ВЫПОЛНЕН:
pap-filter-in filter-expression

pap-filter-out filter-expression
перевод выполнять нудно. но это базовый пакетный фильтр. в ядре должна стоять опция PPP_FILTER. правила выражений такие же как и в active-filter-in.

password password-string
Задает пароль, использующийся при прохождении аутентикации на удаленной системе. Использование данного ключа нежелательно, поскольку неуполномоченные пользователи локальной системы могут легко узнать пароль (например, через ps(1)). Однако, если задавать этот пароль в файле ключей, то такая опасность отпадает.

persist
Не завершать pppd при разрыве соединения; вместо этого предпринимать попытки переподключения. При упорных подключениях будет учтен ключ maxfail.

plugin filename
Загрузка объектного файла разделяемой библиотеки в качестве модуля. Cпецключ. Если filename не содержит знака дроби (/), то pppd будет искать модуль в каталоге /usr/lib/pppd/version/, в котором version - это версия pppd (например, 2.4.2).

predictor1
Запрос точке сжимать отправляемые им кадры по схеме компрессии Predictor-1, и соглашение на запрос сжатия кадров по Predictor-1. Эта опция не сработает, если драйвер ядра не поддерживает компрессию Predictor-1.

privgroup group-name
Разрешение на использование членами группы group-name спецключей. Спецключ. Использование данной опции предполагает полное доверие, поскольку нет гарантий, что члены группы group-name не станут использовать pppd для запуска программ от лица root. Это можно рассматривать эквивалентным помещению пользователей списка group-name прямиком в root-группу на диске или в kmem.

[ПЕРЕВОД НЕПОНЯТЕН ПЕРЕВОДЧИКУ, КТО РАЗБИРАЕТСЯ В IP ПРОШУ УТОЧНИТЬ]
proxyarp
Внесение записи в таблицу ARP [Address Resolution Protocol] локальной системы, содержащую IP-адрес точки и Ethernet-адрес локальной системы. В результате этого точка получит доступ к другим системам в составе ЛВС, в которую входит данная система.

pty script
Задает что для коммуникации будет использована команда script, а не терминальное устройство. Pppd разместит себя на псевдотерминальной паре ведущий/ведомый, используя в качестве своего терминального устройства ведомый. В порожденном процессе будет запущен сценарий script, использующий ведущий псевдотерминал как свой стандартный ввод и вывод. При этой опции имя псевдотерминала не может быть задано явным образом. (Надо помнить, что опция record в сочетании с опцией pty приведет к появлению программных каналов на его стандартном вводе и выводе.)

receive-all
С этим ключом будет принимать все управляющие символы от точки, включая отмеченные в asyncmap приема. Без данного ключа pppd будет отвергать такие символы по спецификации RFC1662. Данный ключ может быть полезна только если точка имеет программные недочеты, проявляющиеся без данного ключа.

record filename
Настраивает pppd записывать все отправляемые и получаемые символы в файл называемый filename. Этот файл открывается к режиме дозаписи, используя идентификатор пользоваля и права запустившего pppd пользователя. Данная опция реализована для использования псевдотерминала и процесса, перебрасывающего символы между псевдо- и реальным последовательным устройством, поэтому при передаче данных по интерфейсу ppp будет увеличена latency и нагрузка на CPU. Символы хранятся в спецформате, который может быть отображен в читаемый форме с помощью программы pppdumb(8).

remotename name
Установка на name имени удаленной системы ожидаемого при проведении аутентикационных мероприятий.

remotenumber number
Установка на number телефонного номера удаленной системы ожидаемого при проведении аутентикационных мероприятий.

refuse-chap
При данного ключа pppd не будет соглашаться на аутентикацию у точки посредством CHAP.

refuse-mschap
С данным ключом pppd не будет соглашаться на аутентикацию у точки посредством MS-CHAP.

refuse-mschap-v2
С данным ключом pppd не будет соглашаться на аутентикацию у точки посредством MS-CHAPv2.

refuse-eap
С данным ключом pppd не будет соглашаться на аутентикацию у точки посредством EAP.

refuse-pap
С данным ключом pppd не будет соглашаться на аутентикацию у точки посредством PAP.

require-chap
Необходимость в прохождении точкой аутентикации посредством CHAP [Challenge Handshake Authentication Protocol].

ПЕРЕВОД НЕ ВЫПОЛНЕН:
require-mppe

ПЕРЕВОД НЕ ВЫПОЛНЕН:
require-mppe-40

ПЕРЕВОД НЕ ВЫПОЛНЕН:
require-mppe-128

require-mschap
Необходимость в прохождении точкой аутентикации посредством MS-CHAP [Microsoft Challenge Handshake Authentication Protocol].

require-mschap-v2
Необходимость в прохождении точкой аутентикации посредством MS-CHAPv2 [Microsoft Challenge Handshake Authentication Protocol, Version 2].

require-eap
Необходимость в прохождении точкой аутентикации посредством EAP [Extensible Authentication Protocol].

require-pap
Необходимость в прохождении точкой аутентикации посредством PAP [Password Authentication Protocol].

show-password
При журналировании содержимого пакетов PAP данный ключ заставляет pppd отображать строку пароля в журнальных сообщениях.

silent
С данным ключом pppd не станет передавать пакеты LCP для запуска соединения, пока не получит от точки специальный пакет LCP (как для ключа 'passive' в старых версиях pppd).

srp-interval n
Если данный параметр указан и pppd для аутентицирования точки использует EAP SRP-SHA1 (т.е. выступает сервером), тогда pppd будет использовать легковесный дополнительный опознавательный механизм SRP на интервалах n секунд. Эта опция быстрее чем переаутентикация с ключом eap-interval, поскольку данный механизм базируется на хэше и не производит ключ новой сессии.

ПЕРЕВОД НЕ ВЫПОЛНЕН
srp-pn-secret string

sync
Использовать синхронный режим обмена вместо асинхронного. Устройство, используемое pppd с таким ключом должно иметь поддержку синхронного режима. В настоящее время поддерживаются адапторы Microgate SyncLink под Linux и FreeBSD 2.2.8 и старше.

unit num
Установка номера модуля ppp (для интерфейсов с именем ppp0 или ppp1 и т.д.) для исходящих соединений.

updetach
С данным ключом pppd будет отключаться от управляющего терминала сразу же после успешной установки канала ppp (но не доходя запуска первого сетевого протокола, обычно IP).

usehostname
Принудительное использование реального имени хоста (с добавлением имени домена, если есть) при прохождении аутентикационных мероприятий (отмена ключа name). Данный ключ обычно бесполезен, поскольку name является спецключом.

ПЕРЕВОД НЕ ВЫПОЛНЕН:
usepeerdns
Запросить у точки до 2 адресов DNS. Адреса предоставленные точкой следуют ...

user name
Установка имени name предъявляемого точке в процессе прохождения аутентикации локальной системы в его (удаленной) системе.

vj-max-slots n
Установка на n числа канал-слотов, используемых кодом компрессии/декомпрессии заголовков TCP/IP по Ван Джейкобсону, которое должно быть между 2 и 16 (включительно).

welcome script
Запуск программы или команды оболочки указанной в script до запуска согласования PPP, сразу после выполнения сценария connect. Значение для этой опции поступает из привилегированного источника и не может быть аннулировано непривилегированным пользователем.

xonxoff
Использование программного метода XON/XOFF для управления потоком данных на последовательном порте.

ФАЙЛЫ КЛЮЧЕЙ


Из файлов, также как из командной строки могут быть взяты ключи. Перед началом обработки опций-ключей командной строки, pppd считывает ключи из файлов /etc/ppp/options, ~/.ppprc и /etc/ppp/options.ttyname (в перечисленном порядке). (В действительности, строчная опция ttyname учитывается pppd до начала обработки файла options.ttyname.) В процессе уточнения имени файла options.ttyname от имени терминала отсекается /dev/, а еще оставшиеся / забиваются точками.

Файл ключей разбирается на последовательность слов, разделенных пробелами. Пробел может быть включен в слово через заключение слова в двойные кавычки ("). Обратная дробь (\) экранирует последующий символ. Решетка (#) начинает комментарий, продолжающийся до конца строки. Ограничений на использование ключей file или call нет.

БЕЗОПАСНОСТЬ


Pppd предоставляет достаточное число необходимых для системных администраторов средств управления доступом, применимых для осуществления комплекса мероприятий по недопущению вторжений в канал PPP лиц, стремящихся к его несанкционированной эксплуатации. Данный набор включает средства задержания удаленных правонарушителей на основании попадания предъявленных ими в процессе опознавания адресов IP в список запрещенных к обороту на сервере PPP, а также средства ограничения на применение особо важных ключей программы pppd локально- или удаленно-дислоцирующимися неуполномоченными лицами. Несколько ключей программы pppd относятся к группе потенциально небезопасных; данные спецключи действуют только при их размещении в файлах системного администратора, либо в случае непосредственного применения при запуске программы pppd от лица root.

Стандартным поведением pppd является допуск непроверенных лиц к использованию адреса IP в тех случаях, когда у системы еще нет маршрута к данному IP адресу. Например, система с постоянным подключением к широкополосному интернет в нормальном случае обладает стандартным маршрутом, и, таким образом для установки канала PPP с такой системой все лица проходят проверку в обязательном порядке. На таких системах ключ auth действует автоматически. С другой стороны - система, где PPP-связь является всего лишь соединением с интернет будет ненормально иметь стандартный маршрут, так лицо будет допущено к использованию большинства адресов IP без прохождения проверки.

ПЕРЕВОД НЕДОДЕЛАН:
Как сказано выше, несколько потенциально небезопасных ключей входят в спецгруппу, что означает невозможность их использования неуполномоченными лицами через запуск pppd с флагом setuid root, либо из командной строки, в пользовательском ~/.ppprc файле, или в файле ключей ...........................

При открытии устройства pppd использует либо UID пользователя, либо UID root, в зависимости от того, было ли имя устройства задано пользователем или системным администратором .........................

АУТЕНТИКАЦИЯ


Аутентикация - это процесс, посредством которого одно лицо удостоверяет свою личность другому. Он включает отправку другой стороне своего имени и некоторого вида секретной информации, которая может быть известна только настоящему, санкционированному пользователю. В случае подобного обмена мы будем называть первую сторону "клиент", а вторую "сервер". Клиент обладает именем, по которому его опознает сервер, и, сервер также обладает именем, по которому его опознает клиент. Вообще, настоящий клиент знает какой-то секрет (или пароль), известный серверу, и аутентицирует себя этот секрет предъявляя. Довольно часто имена, используемые лицами как опознавательный знак, соответствуют их узловым именам в интернет, но это не обязательно.

Как было показано выше, pppd поддерживает три аутентикационных протокола: Протокол аутентикации паролем (PAP), Протокол аутентикации опозновательным рукопожатием (CHAP), и Расширяемый аутентикационный протокол (EAP). PAP включает отправку клиентом его имени и строки пароля на сервер. При использовании CHAP, наоборот, аутентикационный обмен начинает сервер отправкой клиенту опозновательного знака (в опознавательном пакете находится серверное имя). Клиент обязан ответить пакетом, включающим свое имя, плюс хэш-значение производное от общего секрета и опозновательного знака, в качестве доказательства, что секрет ему известен. EAP поддерживает аутентикацию как в стиле CHAP, так и собственный SRP-SHA1 механизм, устойчивый к атакам с использованием словаря, и при этом нет необходимости держать на серверной стороне пароль в виде чистого текста.

Будучи симметричным, протокол PPP позволяет двум сторонам требовать друг от друга удостоверения личности. В этом случае будут идти два независимых аутентикационных обмена. Эти обмены могут происходить по двум различным протоколам, и в приципе, в двух обменах может быть использовано два отличающихся друг от друга имени.

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

Pppd хранит аутентикационные секреты в специальных файлах секретов (/etc/ppp/pap-secrets для PAP, /etc/ppp/chap-secrets для CHAP, MS-CHAP, MS-CHAPv2 и EAP MD5-Challenge, и /etc/ppp/srp-secrets для EAP SRP-SHA1). Все файлы секретов имеют одинаковый формат. Файлы секретов могут содержать секреты для использования pppd как в целях аутентикации себя другим системами, так и для использования при проверке других систем.

В файле секретов каждая строка содержит один секрет. Такой секрет задается для конкретной комбинация клиента и сервера - только этот клиент может использовать его для удостоверения себя только перед этим сервером. Таким образом каждая строка в файле секретов состоит как минимум из трех полей: имя клиента, имя сервера, и секрет. За перечисленными полями может идти список адресов, которые данный клиент сможет использовать, когда подключится к данному серверу.

Файл секретов разбирается на слова, касающиеся файла ключей. Таким образом, каждое из полей клиентского имени, серверного имени и секрета должно быть одним словом, с любым числом пробелов или специальных символов, которые квотируются или эскейпируются. Необходимо запомнить, что это касается только полей клиентского имени, имени серверного и секрета.

Если секрет начинается со знака '@', то его оставшаяся часть будет сочтена за имя файла, где данный секрет хранится. Знак '*' вместо клиентского или серверного имена соответствует любому имени клиента или сервера соответственно. При выборе секрета pppd возьмет лучше всего соответствующий, т.е. наиболее конкретный, т.е. наименее шаблонированный.

Совокупность оставшихся на строке слов будет считаться списком возможных для данного клиента адресов IP. Если на строке только 3 слова, или если первое слово "-", тогда запрещаются все адреса IP. Для разрешения любого адреса надо использовать слово "*". Слово адреса, начинающееся со знака '!' показывает, что следующий за этим знаком адрес неприемлем. Адрес может следовать за '/' и номером n, чтобы обозначить целую подсеть, т.е. все адреса, у которых n начальных битов эквивалентны. В этой форме, за адресом может следовать знак плюс ('+') для указания, что любой узловой адрес данной подсети является санкционированным и базируется на номере использующегося модуля сетевого интерфейса ppp. В этом случае, узловая часть адреса будет установлена на (#модуля + 1).

Таким образом, в файле секретов содержатся секреты, как те, что мы используем для проверки подлинности других узлов, так и те, что мы используем для удостоверения своей личности перед другими узлами. Pppd, при аутентикации точки (при проверке личности точки) выбирает секрет, содержащий в своем первом поле имя точки и имя локальной системы - во втором поле. Имя локальной системы при его умолчании - это узловое имя, с доменным именем, добавляемым при использовании ключа domain. Данная автоустановка может быть перекрыта ключом name, если только не задано ключа usehostname. (Для EAP SRP-SHA1, см. утилиту srp-entry(8), генерирующую соответствующие валидационные данные, затем оказывающиеся в поле "секрет".)

По наступлении стадии выбора секрета, который далее будет предъявлен точке в качестве удостоверения, pppd первым делом решает, под каким именем он должен пройти аутентикацию. Это имя может быть задано пользователем прямо, через ключ user. Если же этот ключ не применен, автоматически используется узловое имя системы, как уже говорилось в предыдущем абзаце. Далее, pppd ищет секрет с этим именем в первом поле и с именем точки во втором. При использовании аутентикации CHAP или EAP, pppd имя точки знает, т.к. точка заранее присылает его на сервер в опознавательном пакете. Но при аутентикации через PAP, pppd установит имя точки на основании данных, указанных пользователем через специальные ключи. Пользователь может задать имя точки непосредственно, ключом remotename. Если пользователь не воспользуется этим ключом, и, если удаленный адрес был задан именем (а не в числовой форме), тогда это имя будет использовано в качестве имени точки. Если же и этот вариант окажется тупиковым, pppd оставит имя точки пустым (содержащим нулевую строку).

При аутентикации точки по PAP, предъявленный пароль сравнивается с секретом из файла. Если пароль не соответствует секрету, то данный пароль зашифровывается через crypt() и сравнивается с секретом во второй раз. Таким образом, при желании, секреты аутентикации точки можно хранить в зашифрованной форме. Если задан ключ papcrypt, то первое (незашифрованное) сравнение не производится в целях безопасности.

Кроме того, в случае применения ключа login, пользовательские имя и пароль дополнительно могут быть сверены с системной базой паролей. Таким образом,
системный администратор может настроить файл pap-secrets на разрешение доступа по PPP только для определенных пользователей, и ограничить их в
выборе адресов IP. Естественно, при ключе login секрет в /etc/ppp/pap-secrets может быть пуст (""), что будет означать правильность любого пароля, предъявленного точкой. Данное обстоятельство, если мы используем ключ login, позволит избежать необходимости в дублировании одного и того же секрета в двух местах.

Для запуска IPCP (или иного сетевого управляющего протокола) аутентикация должна быть успешно завершена. Если точка обязан её пройти, но ему не удается, то pppd разорвет связь (закрыв LCP). IPCP будет остановлен, если при согласовании IPCP удаленная система получит неприемлемый адрес. Пакеты IP могут отправляться или приниматься только при работающем IPCP.

В определенных случаях желательно разрешать подключение некоторым системам, неспособным себя аутентицировать, и предоставить им адрес из ограниченного набора адресов IP, даже когда локальная система требует у них аутентикацию. Если на запрос аутентикации точка отвечает отказом, pppd расценивает это равносильным аутентикации по PAP с пустым именем и паролем. Вследствие данного обстоятельства, системам отказывающимся от прохождения аутентикации, можно дать ограниченый доступ простым добавлением в файл pap-secrets строчки задающей пустое имя и пароль клиента.

МАРШРУТИЗАЦИЯ


После успешного завершения согласования IPCP, pppd информирует ядро о локальном и удаленном адресах интерфейса ppp. Этого будет достаточно для создания узлового маршрута к удаленной точке связи, и этот маршрут позволит двум сторонам обмениваться пакетами IP. Для сообщения с остальными машинами потребуется дальнейшая модификация маршрутных таблиц и/или таблиц ARP (Address Resolution Protocol), которую можно провести по сценарию /etc/ppp/ip-up, но в большинстве случаев для этого достаточно применить ключи defaultroute и/или proxyarp.

УТОЧНИТЬ ПЕРЕВОД:
Часто возникает необходимость сделать стандартный маршрут проходящим через удаленный хост, как в случае машины, у которой есть лишь соединение с Интернет через интерфейс ppp. Ключ defaultroute заставляет pppd каждый раз самостоятельно вносить такой маршрут в таблицу сразу же после поднятия IPCP, и удалять его при разрыве связи.

УТОЧНИТЬ ПЕРЕВОД:
В некоторых случаях желательно организовать перевалочный пункт ("прокси", например на серверной машине, подключенной в ЛВС), который позволил бы местным узлам связываться с удаленным узлом (и наоборот). Ключ proxyarp заставит pppd поискать сетевой интерфейс on same subnet as remote system.
(интерфейс, поддерживающий широковещание и ARP, поднятый и не являющийся при этом интерфейсом типа точка-точка или петля). Если найден, pppd создаст
в таблице ARP постоянную, опубликованную запись с IP адресом удаленной системы и аппаратным адресом найденного сетевого интерфейса.

При применении ключа demand, адреса IP интерфейса PPP оказываются установленными еще до момента запуска согласования IPCP. Если pppd при последующем согласовании не смог договорится о таких же адресах, с которыми он сконфигурировал интерфейс ppp (например, если точка является провайдером, использующим динамическое выделение адресов IP), то pppd поменяет интерфейсные адреса IP на полученные им при согласовании. Это может повлечь нарушение существующих соединений, поэтому при работе с системами, динамически выделяющими IP адреса, использование "звонка по нужде" ( см. demand ) не рекомендуется.

МУЛЬТИКАНАЛ


ПЕРЕВОД НЕ ВЫПОЛНЕН

ПРИМЕРЫ


Нижеидущие примеры предполагают, что в файле /etc/ppp/options содержится ключ auth.

Вероятно, чаще всего pppd используется для дозвонки ISP (поставщику услуг Интенет). Это можно сделать с помощью следующей команды:

pppd call isp

где isp это файл с путевым именем /etc/ppp/peers/isp, настроенный системным администратором например так:

ttyS0 19200 crtscts
connect '/usr/sbin/chat -v -f /etc/ppp/chat-isp'
noauth


В данном примере для дозвона на модем ISP мы используем программу chat. Файл /etc/ppp/chat-isp содержит сценарий, используемый chat; к примеру, он может содержать строки, подобные таким:

ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
ABORT "Username/Password Incorrect"
"" "at"
OK "at&d0&c1"
OK "atdt2468135"
"name:" "^Umyuserid"
"word:" "\qmypassword"
"ispts" "\q^Uppp"
"~-~^Uppp-~"

См. страницу руководства chat(8) для выяснения деталей по сценариям chat.

Также pppd можно использовать для организации PPP-автоответчика. Если пользователи услуг автоответчика уже авторизованы, то им проще всего отметится в системе и запустить программу pppd (с setuid-root) командой:

pppd proxyarp

Чтобы позволить пользователю использовать средства PPP, вам необходимо выделить для пользовательской машины адрес IP и вбить данные на пользователя в /etc/ppp/pap-secrets, /etc/ppp/chap-secrets, или /etc/ppp/srp-secrets (в зависимости от того, какой метод аутентикации поддерживает служба PPP на машине пользователя), чтобы пользовательская машина могла себя аутентицировать. Например, если у Васи есть машина, называемая "vasiaspc", то для того, чтобы она смогла дозвониться на машину под названием "server" и получить от неё доменный адрес "vasiapc.my.net", вам надо внести в файл /etc/ppp/pap-secrets или /etc/ppp/chap-secrets данные, вроде этих:

vasia server "vasin sekret" vasiaspc.my.net

(чтобы понять, как cгенерировать такие же данные при SRP-SHA1 - см. srp-entry(8).)

Другой способ: вы создаете пользовательский счет, с именем (например) "ppp", оболочкой pppd и домашним каталогом /etc/ppp. Ключи, которые могут быть применены к pppd при запуске, в данном случае можно указать в файле /etc/ppp/.ppprc.

ПЕРЕВОД НЕ ВЫПОЛНЕН: Если ваше последовательное соединение несколько сложнее куска провода, то вам может понадобится .... тут про XON/XOFF и ACCM

ДИАГНОСТИКА


Для отправляемых журнальному демону диагностических сообщений средство LOG_DAEMON. (Это может быть перекрыто пересборкой pppd с макросом LOG_PPP, переопределяющим желаемое средство.) См. документацию syslog(8) для уяснения отдельных деталей того, куда демон syslog будет записывать сообщения. На большинстве систем демон syslog перенастраивается в файле /etc/syslog.conf. Возможно вам придется данный файл подправить.

Ключ debug вызывает журналирование содержимого всех принимаемых или отправляемых управляющих пакетов, т.е. всех пакетов LCP, PAP, EAP, CHAP или IPCP.) Это можно делать, когда слишком часто проваливается согласование или аутентикация.

Отладка может быть также включена или выключена посылкой сигнала SIGUSR1 процессу pppd. Этот сигнал работает как переключатель.

СТАТУС ВЫХОДА


Статус выхода pppd - это множество индикаторов обнаруженных ошибок, или причин разрыва связи. Используются такие значения:

0 Pppd был отключен, или, соединение было успешно установлено, но разорвано по запросу удаленной стороны.

1 Произошла фатальная ошибка некоторого вида, такая как существенный провал системного вызова, или нехватка виртуальной памяти.

2 Обнаружена ошибка при обработке заданных ключей, такая как применение двух взаимоисключающих ключей.

3 Pppd не является setuid-root и был вызван пользователем не являющимся root

4 Ядро не поддерживает PPP, к примеру, драйвер PPP ядра не встроен или не может быть загружен.

5 Pppd уничтожен сигналом SIGINT, SIGTERM или SIGHUP.

6 Последовательный порт не смог быть заперт.

7 Последовательный порт не смог быть открыт.

8 Сценарий подключения провален (вернув ненулевой статус выхода).

9 Команда заданная параметром ключа pty не смогла быть выполнена.

10 Согласование PPP провалено, то есть, не получилось запустить хотя бы один сетевой протокол (т.е. IP)

11 Удаленная система провалила (или отказалась) свою аутентикацию.

12 Линия связи открыта успешно, но уничтожена по причине простоя.

13 Линия связи открыта успешно, но уничтожена по причине достижения временного ограничения.

14 Был согласован обратный звонок и входящий вызов должен быть прибыть кратко (немедленно)

15 Линия связи была уничтожена по причине не ответа удаленной стороны на эхо-запросы.

16 Линия связи была уничтожена модемом, повесившим трубку.

17 Согласование PPP провалено по причине обнаружения последовательной обратной связи (петли?)

18 Сценарий инициации провален (вернув ненулевой статус выхода).

19 Мы провалили аутентикацию себя удаленной точке.

СЦЕНАРИИ


На различных этапах pppd запускает сценарии, решая какой из них может быть использован для выполнения специфической вспомогательной процедуры. Обычно это сценарии оболочки, но также могут быть и файлами исполняемого кода. Pppd не ждет завершения сценариев. Сценарии выполняются от лица root (с реальным и эффективным UID равным 0), так что они могут делать такие вещи, как обновление маршрутной таблицы или запуск умолномоченных демонов...
Необходимо быть уверенным, что содержание таких сценариев не нарушает системную безопасность. Pppd запускает сценарии, стандартный ввод, вывод и ошибка (стандартный канал диагностики) которых переправляется на /dev/null, и с пустой средой, за исключением некоторых переменных среды, содержащих информацию о линии связи. Переменные среды, устанавливаемые pppd это:

DEVICE Имя использующегося последовательного терминального устройства.

IFNAME Имя использующегося сетевого интерфейса.

IPLOCAL Адрес IP для локальной точки связи. Устанавливается только после запуска IPCP.

IPREMOTE Адрес IP для удаленной точки связи. Устанавливает только после запуска IPCP.

PEERNAME Аутентицированное имя удаленной точки. Устанавливается только если точка аутентицировала себя.

SPEED Бодовая скорость терминального устройства.

ORIG_UID Реальный UID пользователя, вызвавшего pppd.

PPPLOGNAME
Пользовательское имя по реальному UID пользователя, вызвавшего pppd. Установлено всегда.

Для сценариев ip-down и auth-down pppd устанавливает также следующие переменные, дающие информацию о соединении:

CONNECT_TIME
Количество секунд, прошедших с момента согласования PPP до уничтожения соединения.

BYTES_SENT Количество байт, отправленных (на уровне последовательного порта) за время соединения.

BYTES_RCVD Количество байт, принятых (на уровне последовательного порта) за время соединения.

LINKNAME Логическое имя линии связт, установленное ключом linkname.

DNS1 Если удаленная точка получает адреса сервера DNS, то данная переменная содержит первый предоставленный адрес сервера DNS

DNS2 Если удаленная точка получает адреса сервера DNS, то данная переменная содержит второй предоставленный адрес сервера DNS

В случае наличия следующих сценариев, pppd их обязательно запустит. Но pppd не станет считать ошибкой их отсутствие:

/etc/ppp/auth-up
Программа или сценарий, запускающийся после успешной самоаутентикации удаленной системы. Запускается с параметрами:

имя-интерфейса имя-точки имя-пользователя терминальное-устройство скорость

Необходимо помнить, что этот сценарий не запускается, если точка не удостоверила свою подлинность, например, при применении ключа noauth.

/etc/ppp/auth-down
Программа или сценарий, запускающийся после разрыва связи, при условии, что до этого был запущен сценарий /etc/ppp/auth-up. Запускается с теми же параметрами, что и /etc/ppp/auth-up.

/etc/ppp/ip-up
Программа или сценарий, запускающийся, когда связь становится доступной для отправки или приема пакетов IP (то есть, когда запускается IPCP). Запускается с параметрами:

имя-интерфейса терминальное-устройство скорость местный-адрес-IP дальний-адрес-IP ipparam

/etc/ppp/ip-down
Программа или сценарий, запускающийся, когда связь долго не доступна для отправки или приема пакетов IP. Данный сценарий может быть использован для отката последствий сценария /etc/ppp/ip-up. Запускается с теми же самыми параметрами, что и /etc/ppp/ip-up.

ПЕРЕВОД НЕ ВЫПОЛНЕН:
/etc/ppp/ipv6-up
/etc/ppp/ipv6-down
/etc/ppp/ipx-up
/etc/ppp/ipx-down

ФАЙЛЫ


/var/run/pppn.pid (BSD или Linux), /etc/ppp/pppn.pid (другие)
PID процесса pppd на модуле n интерфейса ppp.

/var/run/ppp-name.pid (BSD или Linux),
/etc/ppp/ppp-name.pid (другие). PID процесса pppd для логического name (имени) линии связи (см. ключ linkname).

/var/run/pppd2.tdb
База информации о процессах pppd, их интерфейсах и линиях связи, используется для соотнесения линий связи с жилами в операциях мультиканала. Может быть проверена внешними программами для установления данных о переменных pppd, интерфейсах и т.д.

/etc/ppp/pap-secrets
Имена, пароли и адреса IP пользователей для аутентикации по PAP. Данный файл должен принадлежать root и должен быть недоступен для чтения/записи другим пользователям. Pppd будет журналировать предупреждения, в случае невыполнения этого условия.

/etc/ppp/chap-secrets
Имена, секреты и адреса IP для аутентикации по CHAP, MS-CHAP, MS-CHAPv2. Как и в случае файла /etc/ppp/pap-secrets, данный файл должен принадлежать root и должен быть недоступен для чтения/записи другим пользователям. Pppd будет журналировать предупреждения, в случае невыполнения этого условия.

/etc/ppp/srp-secrets
Имена, секреты и адреса IP для аутентикации по EAP. Как и в случае файла /etc/ppp/pap-secrets, данный файл должен принадлежать root и должен быть недоступен для чтения/записи другим пользователям. Pppd будет журналировать предупреждения, в случае невыполнения этого условия.

~/.ppp_pseudonym
Сохраненный псевдоним SRP-SHA1 стороны клиента. См. ключ srp-use-pseudonym.

/etc/ppp/options
Системная настройка ключей pppd, выполняется до пользовательской настройки или до применения ключей командной строки.

~/.ppprc
Пользовательская настройка ключей pppd, выполняется до /etc/ppp/options.ttyname.

/etc/ppp/options.ttyname
Системная настройка pppd, использующейся на конкретном последовательном порте. Выполняется после ~/.ppprc. Для подбора имени ttyname берется путевое имя последовательного порта, отсекается часть /dev/ (чаще всего она имеется), а любые оставшиеся знаки дроби (/) заменяются точками (.)

/etc/ppp/peers
Каталог, содержащий файлы ключей, которые в свою очередь, могут содержать специальные ключи, даже если pppd был запущен не root. Системный администратор может создать в этом каталоге файл ключей для разрешения неуполномоченным пользователям дозваниваться с местного модема на удаленные точки без необходимости прохождения на них аутентикации, но только до тех точек, которым системный администратор полностью доверяет.

коммент.пер. а также доверят своим пользователям, которые вприципе, могут намотать много денег, если сея удаленная точка на платном доступе. создаете файл /etc/ppp/peers/MyISP и помещаете туда все нужные ключи, в т.ч. запуск дозвонки по chat; После этого все ваши пользователи смогут набрать команду "pppd call MyISP" и оказаться в плену виртуальной паутины.

ПЕРЕВОД НЕ ВЫПОЛНЕН

СМ.ТАКЖЕ

ПРИМЕЧАНИЯ

АВТОРСТВО

КОПИРАЙТ


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
unlk аватар

народ! я почти

народ! я почти не шарю в IP, поэтому скорее всего мог наглючить в переводах разделов, касаемых этого самого IP. Если будет не трудно, поправьте их, т.к. если залетные люди начнут настраивать свой pppd по глючному переводу, то виноватым назовут не unlk, а весь сайт runetbsd! ;-)

+ еще просьба, если вы уже настраивали pppd и по заметили недокументиванные особенности (не глюки) по конкретной опции, то положите описание этой фичи в камменты, лады?

untitled аватар

как токо осилим

как токо осилим такое кол-во буков, обязательно прокомментируем

www2 аватар

Здравствуйте,

Здравствуйте, unlk.

Я занимаюсь аналогичным переводом pppd(8) для Linux. Хотелось бы использовать Ваши наработки, если Вы не против.

Если есть желание, можете присоединиться к переводу на сайте http://translated.by/

www2 аватар

Вот полный оформленный

Вот полный оформленный перевод: http://manpages.ylsoftware.com/dokuwiki/man/pppd_8
Там есть и другие выполненные мной переводы man'ов. Правда я пользуюсь Linux'ом, так что кое-что для NetBSD может не подойти.