Lcp echo interval: #18199 (interchange values «lcp-echo-interval» and «lcp-echo-failure») – OpenWrt

Содержание

Pppoptions — ALT Linux Wiki

При настройках ppp соединений часто встречается настройка ppp опций. Например, богатый набор их приводится в /usr/share/doc/etcnet-x.y.zzz/examples/

В данной заметке постараюсь дать расшифровку наиболее популярных из них:

  • defaultroute — добавить маршрут по умолчанию через ppp соединение в системную таблицу маршрутизации, используя удаленную сторону как шлюз, когда договоренность IPCP успешно достигнута. Эта запись удаляется при завершении связи.
  • noipdefaultу — запретить поведение по умолчанию: локальный IP адрес, определяется именем хоста. С этой опцией удаленная сторона должна будет обеспечить локальный IP адрес в течение IPCP переговоров — динамическое назначение ip-адреса (если она не определена явно на стороне клиента).
  • passive — разрешить опцию «passive» в LCP. С этой опцией pppd будет пытаться инициировать соединение; если ответ от другой стороны не принят, то pppd будет пассивно ожидать правильный LCP пакет от другой стороны (вместо выхода, как делается без этой опции).
  • silent — с этой опцией pppd не будет передавать LCP пакеты для инициации соединения пока не придет правильный LCP пакет от другой стороны (как с опцией «passive»).
  • maxfail <n> — максимальное число попыток при создании соединении. При задании 0 — бесконечное число.
  • persist — клиент сам инициирует соединение при разрыве.
  • holdoff 10 — интервал времени между попытками соединения.
  • lcp-echo-interval <n> — если эта опция назначена, pppd будет отправлять кадр LCP echo-request удаленной стороне каждые n секунд. Под Linux, echo-request отправляется когда пакеты не принимаются от удаленной стороны n секунд. Обычно удаленная сторона должна отвечать на echo-request отправкой echo-reply. Эта опция может быть использована с опцией lcp-echo-failure для определения что удаленная сторона больше не соединена.
  • lcp-echo-failure <n> — если эта опция задана, pppd будет считать, что связи нет, если n LCP echo-requests отправлены без приема правильных LCP echo-reply. Если это случилось, pppd завершит связь. Использование этой опции требует ненулевого значения для параметра lcp-echo-interval. Эта опция может быть использована, чтобы разрешить pppd завершать связь, если физическое соединение отсутствует (напр, модем бросил трубку) в ситуациях, когда доступны линии управления модемом.
  • lcp-max-terminate <n> — установить максимальное число передач LCP terminate-request в n (по умолчанию 3).
  • lcp-max-configure <n> — установить максимальное число передач LCP configure-request в <n> (по умолчанию 10). Некоторые PPP сервера долго стартуют. Вам может понадобиться увеличить эту величину, если вы получаете ошибки ‘serial line looped back’ и вы уверены, что корректно регистрируетесь и PPP должен запускаться на сервере.
  • lcp-max-failure <n> — установить максимальное число запросов LCP configure-NAKs , возвращенных перед началом отправки вместо configure-Rejects, в <n> (по умолчанию 10).
  • ipcp-restart <n> — установить интервал рестарта IPCP (пауза возобновления передачи) в <n> секунд (по умолчанию в 3).
  • ipcp-max-terminate <n> — установить максимальное число передач IPCP terminate-request в <n> (по умолчанию 3).
  • ipcp-max-configure <n> — установить максимальное число передач IPCP configure-request в <n> (по умолчанию 10).
  • ipcp-max-failure <n> — установить максимальное число IPCP configure-NAKs, возвращенных перед началом отправки вместо configure-Rejects, в <n> (по умолчанию 10).

Краткое замечание к терминам[править]

LCP — Протокол управления каналом (LCP — Link Control Protocol) является частью PPP. PPP — это протокол по передаче IP пакетов по последовательным линиям. PPP поддерживает синхронные и асинхронные линиями.

ICMP — ICMP (англ. Internet Control Message Protocol — межсетевой протокол управляющих сообщений) — сетевой протокол, входящий в стек протоколов TCP/IP. В основном ICMP используется для передачи сообщений об ошибках и других исключительных ситуациях, возникших при передаче данных. Также на ICMP возлагаются некоторые сервисные функции.

Ссылки по теме:[править]

http://book.itep.ru/3/ppp_35.htm http://www.codenet.ru/webmast/ppp.php http://www.gentoo.ru/node/11478 http://www.citforum.ru/operating_systems/linux/HOWTO/PPP-HOWTO-12.shtml

Системному администратору

 

IT Crowd | Настраиваем L2TP+IPSEC PSK VPN Server в Debian 9

В статье рассказывается как поднять L2TP+IPSec PSK сервер на Debian 9 как в обычной среде, так и на VPS в среде виртуализации OpenVZ. Позволяет подключаться с любого устройства при помощи стандартного клиента. Актуально в свете нынешних событий.

Содержание:

Установка необходимых пакетов

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

Возможные ошибки

Для настройки в сред OpenVZ важно учесть, что для работы необходимо, чтобы версия OpenVZ была не ниже Kernel 042stab084. 8, а так же были активированы следующие kernel-модули: ppp_async, pppol2tp, xfrm4_mode_transport, xfrm4_mode_tunnel, xfrm_ipcomp, esp4. Вам изначально надо уточнить у VPS хостинга включены ли эти модули, и если нет, то узнать о возможности их включения. Так же необходима активация PPP для контейнера OpenVZ. Если все это соблюдено, то можно приступать к настройке.

 

Установка необходимых пакетов.

Установим следующие необходимые для работы пакеты:


apt install iptables-persistent xl2tpd libgmp3-dev gawk flex bison make libc6-dev devscripts libssl-dev

Установка Openswan из исходников.

Загружаем последнюю версию с официального сайта:


wget https://download.openswan.org/openswan/openswan-latest.tar.gz

Распаковываем:


tar -xvzf openswan-latest.tar.gz

Собираем и устанавливаем:


cd openswan-2.6.50
make programs
make install

 

Настройка сервера.

Настройка ipsec:


nano /etc/ipsec.conf


config setup
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
oe=off
protostack=netkey
nhelpers=0
;
conn L2TP-PSK-NAT
rightsubnet=vhost:%priv
also=L2TP-PSK-noNAT
;
conn L2TP-PSK-noNAT
authby=secret
pfs=no
auto=add
keyingtries=3
rekey=no
dpddelay=30
dpdtimeout=120
dpdaction=clear
ikelifetime=8h
keylife=1h
type=transport

left=ВНЕШНИЙ IP+АДРЕС СЕРВЕРА
leftprotoport=17/1701
right=%any
rightprotoport=17/%any
forceencaps=yes

Укажем PSK ключ для IPSec:


nano /etc/ipsec.secrets


ВНЕШНИЙ IP+АДРЕС СЕРВЕРА %any: PSK "PSK-КЛЮЧ"

Настраиваем L2TP:


nano /etc/xl2tpd/xl2tpd.conf


[global]
listen-addr = ВНЕШНИЙ IP+АДРЕС СЕРВЕРА
port = 1701
ipsec saref = no
debug tunnel = yes
debug avp = yes
debug packet = yes
debug network = yes
debug state = yes
auth file = /etc/ppp/chap-secrets
;
[lns default]
ip range = 172. 16.254.1-172.16.254.253 ; Диапазон IP-адресов, которые выдаются подключающимся клиентам
local ip = 172.16.254.254 ; Локальный IP-адрес сервера для VPN-клиентов

refuse chap = yes
refuse pap = yes
require authentication = yes
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes
name = VPN
assign ip = yes

Настраиваем PPP:


nano /etc/ppp/options.xl2tpd


require-mschap-v2
refuse-mschap
ms-dns 8.8.8.8
ms-dns 8.8.4.4
asyncmap 0
auth
crtscts
idle 1800
mtu 1200
mru 1200
lock
hide-password
local
debug
name VPN
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4

Создаем пользователя для авторизации:


nano /etc/ppp/chap-secrets


# Secrets for authentication using CHAP
# client server secret IP addresses
ИМЯ-ПОЛЬЗОВАТЕЛЯ VPN ПАРОЛЬ *

Настраиваем файервол:


iptables -t nat -A POSTROUTING -o venet0:0 -s 172.

16.254.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o venet0 -s 172.16.254.0/24 -j MASQUERADE
iptables -A FORWARD -s 172.16.254.0/24 -j ACCEPT
iptables -A FORWARD -d 172.16.254.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -o venet0 -s 172.16.254.0/24 -j SNAT --to-source ВНЕШНИЙ IP-АДРЕС СЕРВЕРА
iptables-save

Отключаем ICMP send_redirects и ICMP accept_redirects:

Узнать имена имеющихся интерфейсов поможет команда ifconfig


nano /etc/sysctl.conf


net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.ИМЯ_СЕТЕВОГО_ИНТЕРФЕЙСА.send_redirects = 0
net.ipv4.conf.ИМЯ_СЕТЕВОГО_ИНТЕРФЕЙСА.accept_redirects = 0

 

Перезапускаем службы:


/etc/init.d/ipsec restart

/etc/init.d/xl2tpd restart

Проверяем правильность настройки IPSec командой:


ipsec verify

  •  

Пробуем установить соединение.

 

Возможные ошибки.

Выявить ошибки в работе сервера поможет команда:


grep pluto /var/log/auth.log

Ошибка 809 Windows клиента:

При попытке подключения стандартным клиентом Windows, не важно какой версии, может появляться ошибка 809. Связано это с тем, что по умолчанию клиент не умеет работать с сервером за NAT. Для исправления ошибки откройте на Windows машине regedit и найдите ветку:

Для Windows XP


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPSec

Для Windows 7, 8.1, 10


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent

Создайте параметр DWORD (32 бита) и укажите ему имя:


AssumeUDPEncapsulationContextOnSendRule

В качестве значения поставьте 2.

Возможные значение параметра AssumeUDPEncapsulationContextOnSendRule:
0 – (значение по-умолчанию), предполагается, что сервер подключен к интернету без NAT;
1 – сервер находится за NAT;
2 — и сервер и клиент находятся за NAT.

Перезагрузите ПК.

Ошибка 789 в Windows 7

Добавить в реестр следующие строки и перезагрузиться:


REGEDIT4
[HKEY_LOCAL_MACHINESystemCurrentControlSetServicesRasmanParameters]
"ProhibitIpSec"=dword:00000001
"AllowL2TPWeakCrypto"=dword:00000001

 

Ошибка 689 во всех версиях

Так-же могут наблюдаться ошибка 689, в Windows 10 может выскакивать ошибка, что сервер не отвечает. Если с файрволом все хорошо то попробуйте следующее

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters" /v AllowL2TPWeakCrypto /t REG_DWORD /d 1 /f

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters" /v ProhibitIpSec /t REG_DWORD /d 0 /f

 

Почему разрывается соединение МТС GPRS в Ubuntu? — Хабр Q&A

(Вынесу из комментов, потому что это тоже возможный ответ на вопрос в определённой ситуации.)

Похожим образом могут проявляться «особенности» модема «Билайн».

(Вставил сим-карту МТС и я-то думал: раз интернет совершенно нормальный 2.3 минуты, то нет у модема какого-то beeline lock-in, ну и МТСу, конечно, всё равно, какой модем, потому что мобильных устройств-то куча разных).

А вот пишут в homenet.beeline.ru/index.php?s=8e6979064f9c64a4156… :

Билайновское ПО каждые две минуты посылает модему AT-команду,если модем её не получил происходит дисконнект.Об этом на форуме писалось не однократно.

Т.е. в принципе не важно, какую симкарту вы в такой модем вставите, но если используете из Ubuntu или другой системы без билайновского ПО, получается, не будет полноценно работать. Надо какие-то специальные at-команды ему посылать или ещё как-то решать проблему (поменять прошивку).

Вот как это бывает устроено в модемах «Билайн» — alexkuklin.livejournal.com/820953.html?thread=5839… :

Ну, гентушники — они вроде не так подвежены ФГМ, как бубунтушники — читай ru.gentoo-wiki.com/wiki/MF626
Там есть еще круче, про вычисляемый код. через ~2-3 минуты модем снова задает вопрос

Если правильно и быстро (на это есть около 20 секунд) отвечать на все +ZOPERTER: то модем исправно работает, если не отвечать вообще, то модем работает около 3х минут, задает второй вопрос(первый он задает сразу при запуске цикла), ждет 20 секунд ответа, а потом краснеет, рвет соединение и все.

А вот теперь самое главное: алгоритм по которому вычисляется это самое YYYYYYYY. Алгоритм есть. Неделя истязаний дизассемблером нового exe’шника от Beeline принесла свои плоды. Код пока очень сырой, т.к. является прямым преобразованием из ASM в C++ (чуть более 1000 строк) 🙂 так что как доведу до ума, куда-нить выложу. Пока модем пашет уже около часа и все ОК. Если есть пожелания пишите на alexunnamed.tomsk.ru.

Не знаю пока, есть ли этот код.

URL упомянутой wiki сменился; см. gentoo-wiki.vfose.ru/wiki/MF626 :

Неделя истязаний дизассемблером нового exe’шника от Beeline принесла свои плоды. Код пока очень сырой, т. к. является прямым преобразованием из ASM в C++ (чуть более 1000 строк) 🙂 так что как доведу до ума, куда-нить выложу. Пока модем пашет уже около часа и все ОК. Если есть пожелания пишите на alexunnamed.tomsk.ru. Утилита для работы под Linux выложена здесь www.altcomtsk.info/index.php?option=com_content&vi…

Эту программу с секретом на просторах интернета удалось скачать только по ссылке с yanex.org/beeline-zte-mf170-v-linux (в остальных местах протухло). У людей оно вроде как даже работало (запускаем одновременно mf626-b09 и звонилку/pppd; например, в моём ALT; вообще, по запросу «mf626-b09» в google много примеров её использования).

Могу подтвердить: эта программа общается с модемом и не даёт ему отвалиться через 2 минуты (видно по зелёному индикатору, который раньше становился красным), т.е. секрет разгадан верно.

Но в моей системе pppd (под управлением звонилки) не может работать с устройством /dev/ttyUSB32 одновременно с этой программой (возможно, в более старых linux это было возможно и у людей работало): Resource temporarily unavailable.

К сожалению, как верно возмутился zerg, программа распространяется без исходников, поэтому тяжело объединить разгаданный секрет со звонилкой так, чтобы они друг другу не мешали (хочется, скажем, чтобы общение звонилки с модемом шло через mf626-b09).

У желающих использовать этот модем (или подобный) в современном linux (предполагаю, что раньше как-то двум программам удавалось одновременно получать доступ к устройству, а сейчас нет) остаётся ещё способ поменять прошивку. Я же пока прекращу терять время на возню с ним.

О! Это NetworkManager оказался капризным (хотя я вроде видел, что люди писали, что можно его использовть). Я вручную запустил pppd (подсмотрел в /proc/NNNN/cmdline , как это делал NetworkManager):

/usr/sbin/pppd nodetach lock nodefaultroute ipv6 , user mts ttyUSB34 noipdefault noauth usepeerdns lcp-echo-failure 0 lcp-echo-interval 0 ipparam /org/freedesktop/NetworkManager/PPP/5 plugin /usr/lib64/pppd/2.4.5/nm-pppd-plugin.so

и пришлось ещё сделать (видимо, NetworkManager сам добавляет маршрут, а я не сообразил сразу, что в команде pppd этого нет):

ip route add to default via 10. 64.64.64 dev ppp0

И вот, интернет работает, пишу через него.

Узкие места сетевой подсистемы Linux. Тюнинг сети в Linux. Настройка производительности сети в модели NAPI и с прерываниями.

Узкие места сетевой подсистемы Linux. Тюнинг сети в Linux. Настройка производительности сети в модели NAPI и с прерываниями.

Кольцевой буфер

Кольцевые буферы, совместно используются драйвером устройства и сетевой картой. TX – есть передача данных, а RX – получение данных в кольцевом буфере. Как следует из названия, переполнение буфера просто перезаписывает существующие данные. Есть два способа переместить данные от сетевой карты до ядра: аппаратные прерывания и программные прерывания, названные SoftIRQs.

Кольцевой буфер RX используется, чтобы сохранить входящие пакеты, пока они не могут быть обработаны драйвером устройства. Драйвер устройства опустошает буфер RX, обычно через SoftIRQs, который помещает входящие пакеты в структуру данных ядра, названную sk_buff или «skb», чтобы начать свой путь через ядро и до приложения, которому принадлежит соответствующий сокет. Кольцевой буфер TX используется для хранения исходящих пакетов, которые предназначенные для отправки по проводам.

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

Прерывания и обработчики прерываний

Прерывания от аппаратных средств известны как прерывания «top-half».

Сетевые карты, как правило, работают с кольцевыми буферами (DMA ring buffer) организованными в памяти, разделяемой с процессором. Каждый входящий пакет размещается в следующем доступном буфере кольца. (DMA — Direct Memory Access (Прямой доступ к памяти) — режим обмена данными между устройствами или же между устройством и основной памятью, в котором центральный процессор (ЦП) не участвует). После этого требуется сообщить системе о появлении нового пакета и передать данные дальше, в специально выделенный буфер (Linux выделяет такие буферы для каждого пакета). Для этой цели в Linux используется механизм прерываний: прерывание генерируется всякий раз, когда новый пакет поступает в систему. Чаще используется отложенные прерывания (см. в статье Linux, принципы работы с сетевой подсистемой ). В ядро Linux начиная с версии ядра 2.6 был добавлен так называемый NAPI (New API), в котором метод прерываний сочетается с методом опроса. Сначала сетевая карта работает в режиме прерываний, но как только пакет поступает на сетевой интерфейс, она регистрирует себя в poll-списке и отключает прерывания. Система периодически проверяет список на наличие новых устройств и забирает пакеты для дальнейшей обработки. Как только пакеты обработаны, карта будет удалена из списка, а прерывания включатся снова.

Жесткие прерывания можно увидеть в /proc/interrupts, где у каждой очереди есть vector прерывания в 1-м столбце. Каждой очереди RX и TX присвоен уникальный vector, который сообщает обработчику прерываний, относительно какого NIC/queue пришло прерывание. Столбцы представляют количество входящих прерываний:

#egrep «CPU0|eth2» /proc/interrupts

           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7      

 45:   28324194          0          0          0          0          0          0          0   PCI-MSI-edge      eth2

 

SoftIRQs

Иизвестны как прерывания «bottom-half», запросы программного прерывания (SoftIRQs), являются подпрограммами ядра, которые планируется запустить в то время, когда другие задачи не должны быть прерваны. Цель SoftIRQ состоит в извлечении данных из кольцевых буферов. Эти подпрограммы, выполненные в форме процессов ksoftirqd/cpu-number и, вызывают специфичные для драйвера функции кода.

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

SoftIRQs можно контролировать следующим образом. Каждый столбец есть ЦП:

# watch -n1 grep RX /proc/softirqs

# watch -n1 grep TX /proc/softirqs

 

NAPI Polling

Про метод поллинга читаем статью Linux, принципы работы с сетевой подсистемой

 

Поиск узкого места

Отбрасывание пакетов и переполнени границ (packet drops и overruns) обычно происходит, когда буфер RX сетевой карты не может достаточно быстро опустошиться ядром. Когда скорость, с которой данные поступают из сети превышает скорость, с которой ядро забирает на обработку пакеты, сетевая карта начинает отбрасывать входящие пакеты, т. к. буфер NIC (сетевой карты) полон, и увеличивает счетчик удаления.Соответствующий счетчик можно увидеть в ethtool статистике. Основные критерии здесь — прерывания и SoftIRQs.

Для примера вывод статистики ethtool:

# ethtool -S eth4

rx_errors: 0

tx_errors: 0

rx_dropped: 0

tx_dropped: 0

rx_length_errors: 0

rx_over_errors: 3295

rx_crc_errors: 0

rx_frame_errors: 0

rx_fifo_errors: 3295

rx_missed_errors: 3295

 

Существуют различные инструменты, доступные для поиска проблемной области. Следует исследовать:

• Уровень встроенного ПО адаптера

— Следим за статистикой ethtool -S ethX

• Уровень драйвера адаптера

• Ядро Linux, IRQs или SoftIRQs

— Проверяем /proc/interrupts и /proc/net/softnet_stat

• Уровни протокола IP, TCP, UDP

— Используем netstat -s и смотрим счетчики ошибок

 

Вот некоторые типичные примеры узких мест:

  • Прерывания (IRQs) неправильно сбалансированы. В некоторых случаях служба irqbalance может работать неправильно или не работает вообще. Проверьте /proc/interrupts и удостоверьтесь, что прерывания распределены на разные ядра ЦП. Обратитесь к irqbalance руководству, или вручную сбалансируйте IRQs. В следующем примере прерывания становятся обработанными только одним процессором:

# egrep “CPU0|eth3” /proc/interrupts

CPU0 CPU1 CPU2 CPU3 CPU4 CPU5

105: 1430000 0 0 0 0 0 IR-PCI-MSI-edge eth3-rx-0

106: 1200000 0 0 0 0 0 IR-PCI-MSI-edge eth3-rx-1

107: 1399999 0 0 0 0 0 IR-PCI-MSI-edge eth3-rx-2

108: 1350000 0 0 0 0 0 IR-PCI-MSI-edge eth3-rx-3

109: 80000 0 0 0 0 0 IR-PCI-MSI-edge eth3-tx

 

 

  • Посмотрите, увеличивается ли какая-либо из колонок помимо 1-й колонки в /proc/net/softnet_stat. В следующем примере счетчик большой для CPU0, и budget должен быть увеличен:

# cat /proc/net/softnet_stat

0073d76b 00000000 000049ae 00000000 00000000 00000000 00000000 00000000 00000000 00000000

000000d2 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0000015c 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 

 

  • SoftIRQs не может получать достаточное количество процессорного времени для опроса адаптера. Используйте инструменты, такие как sar, mpstat или top, чтобы определить, что отнимает много процессорного времени.
  • Используйте ethtool -S ethX, чтобы проверить определенный адаптер:

# ethtool -S eth4

rx_over_errors: 399

rx_fifo_errors: 399

rx_missed_errors: 399

 

  • Увеличение приемного буфера сокета приложения или использование буфера автоподстройки.
  • Использование большого/малого TCP или UDP размера пакетов.

 

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

SoftIRQ

Если выполнение программных прерываний не выполняются достаточно долго, то темп роста входящих данных может превысить возможность ядра опустошить буфер. В результате буферы NIC переполнятся, и трафик будет потерян. Иногда, необходимо увеличить длительность работы SoftIRQs (программных прерываний) с CPU. За это отвечает netdev_budget. Значение по умолчанию 300. Параметр заставит процесс SoftIRQ обработать 300 пакетов от NIC перед тем как отпустить CPU:

# sysctl net.core.netdev_budget

net.core.netdev_budget = 300

Это значение может быть удвоено, если 3-й столбец в /proc/net/softnet_stat увеличивается, что указывает, на то, что SoftIRQ не получил достаточно процессорного времени. Маленькие инкременты нормальны и не требуют настройки.

# cat softnet_stat

0073d76b 00000000 000049ae 00000000 00000000 00000000 00000000 00000000 00000000 00000000

000000d2 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0000015c 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0000002a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

 

IRQ Balance

Балансировщик прерываний — это сервис, который может автоматически сбалансировать прерывания между ядрами процессора, основанного на реальном времени состояния системы.

Прерывания также можно раскидать по ядрам вручную.

Чтобы это сделать нужно выполнить команду echo N > /proc/irq/X/smp_affinity, где N — маска процессора (определяет какому процессору достанется прерывание), а X — номер прерывания, виден в первом столбце вывода /proc/interrupts. Чтобы определить маску процессора, нужно возвести 2 в степень cpu_N (номер процессора) и перевести в шестнадцатиричную систему. При помощи bc вычисляется так: echo «obase=16; $[2 ** $cpu_N]» | bc. Например:

#CPU0
echo 1 > /proc/irq/57/smp_affinity
echo 1 > /proc/irq/66/smp_affinity

#CPU1
echo 2 > /proc/irq/58/smp_affinity
echo 2 > /proc/irq/67/smp_affinity 

#CPU2
echo 4 > /proc/irq/59/smp_affinity
echo 4 > /proc/irq/68/smp_affinity

#CPU3
echo 8 > /proc/irq/60/smp_affinity
echo 8 > /proc/irq/69/smp_affinity

Для того, чтобы при старте системы прерывания сами настраивались, можно сделать скрипт и настроить его запуск /etc/rc. d/rc.local.

 

 Ethernet flow control

Паузы фреймов — управление потоком уровня Ethernet между адаптером и портом коммутатора. Адаптер передаст “кадры паузы”, когда RX или буферы TX станут полными. Коммутатор остановит поток данных в течение определенного промежутка времени в порядке миллисекунд. Этого времени обычно достаточно, чтобы позволить ядру опустошить интерфейсные буферы, таким образом предотвращая переполнение буфера и последующие пакетные отбрасывания или переполнения. В идеале, коммутатор буферизует входящие данные в течение такой паузы.

Однако, важно понимать, что этот уровень контроля потока только между коммутатором и адаптером. Если пакеты отброшены, более высокие уровни, такие как TCP или приложение в случае UDP и/или многоадресно переданы, должен инициировать восстановление.

Важно! Фреймы паузы и flow control (управление потоком) должны быть включены и на NIC и на порте коммутатора.

# ethtool -a eth4

Pause parameters for eth4:

Autonegotiate: off

RX: off

TX: off

# ethtool -A eth4 rx on

# ethtool -A eth4 tx on

# ethtool -a eth4

Pause parameters for eth4:

Autonegotiate: off

RX: on

TX: on

 

 

Interrupt Coalescence (отложенные прерывания)

Отложенные прерывания рассказывают нам о количестве трафика, который будет получать сетевой интерфейс, или времи, которое проходит после приема трафика, перед выдачей жесткого прерывания. Слишком ранние прерывания или слишком частые приводят к снижению производительности системы, так как ядро останавливается (или «перебивает») запущенное задание для обработки запроса прерывания от аппаратного обеспечения. Слишком поздее прерывание может привести к тому, что пакеты достаточно долго не будут обработаны ядром с сетевой карты. Большие объемы трафика могут переписать предыдущие пакеты трафика, т.е. потеря пакетов.

Самые современные NIC и драйверы поддерживают IC, и многие позволяют драйверу автоматически модерировать количество прерываний, сгенерированных аппаратными средствами. Настройки IC обычно включают два основных компонента, время и количество пакетов. Время в мкс — сколько NIC будет ожидать прежде, чем прервать ядро, а число пакетов – сколько пакетов будет ждать в приемном буфере прежде чем сработает прерывание. Отложенные прерывания NIC можно посмотреть, используя команду ethtool -c ethX и настроить через ethtool -C ethX. Адаптивный режим позволяет карте автомодерировать IC. В адаптивном режиме, драйвер инспектирует трафик и ядро настраивает прерывания на лету, предотвращая потерю пакетов.

# ethtool -c eth4

Coalesce parameters for eth4:

Adaptive RX: on TX: off

stats-block-usecs: 0

sample-interval: 0

pkt-rate-low: 400000

pkt-rate-high: 450000

rx-usecs: 16

rx-frames: 44

rx-usecs-irq: 0

rx-frames-irq: 0

Следующая команда выключает адаптивный IC, и говорит адаптеру о прерывании ядра

сразу после приема любого трафика:

# ethtool -C eth4 adaptive-rx off rx-usecs 0 rx-frames 0

 

Очередь адаптера (The Adapter Queue)

Netdev_max_backlog — очередь в ядре Linux, где трафик хранится после получения от сетевого адаптера, но перед обработкой с помощью стеков протоколов (IP, TCP, и т. д.). Для каждого ядра процессора существует одна очередь. Очередь может расти автоматически до максимального значения, указанного в netdev_max_backlog. Функция ядра netif_receive_skb () находит соответствующий ЦП для пакета и ставит пакеты в очереди того ЦП. Если очередь для этого  процессора будет полна и уже в максимальном размере, пакеты будут отброшены. Для того, чтобы тюнить это место необходимо убедиться что оно реально нужно. В /proc/net/softnet_stat в втором столбце есть счетчик, который увеличивается когда очередь переполняется. Каждая строка файла softnet_stat представляет собой ядро процессора, начиная с CPU0.

1-й столбец — количество кадров, полученных с помощью обработчика прерывания.

2-й столбец — количество фреймов, отброшенных из-за превышения netdev_max_backlog..

3-й столбец — число раз ksoftirqd исчерпал netdev_budget или процессорное время, когда нужно было еще поработать.

# cat softnet_stat

0073d76b 00000000 000049ae 00000000 00000000 00000000 00000000 00000000 00000000 00000000

000000d2 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0000015c 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0000002a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

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

Backlog изменить можно такой командой:

#sysctl -w net.core.netdev_max_backlog=X

 

Adapter RX and TX Buffer

Буфер адаптера по умолчанию обычно установлен в меньшем размере, чем максимальный. Часто, увеличить размер буфера приема RX вполне достаточно, чтобы предотвратить потери пакетов, так как это может приводит к тому, что у ядра будет немного больше времени, чтобы опустошить буфер. В результате, это может предотвратить возможные потери пакетов.

Буферы можно посмотреть так:

# ethtool -g eth4

Ring parameters for eth4:

Pre-set maximums:

RX: 8192

 RX Mini: 0

 RX Jumbo: 0

TX: 8192

Current hardware settings:

RX: 1024

RX Mini: 0

RX Jumbo: 0

TX: 512

Тут видим что кольцевой буфер RX входящих пакетов равен 1024 дескрипторам в оперативной памяти, и можно увеличить до 8192.

 

Очередь передачи (Adapter Transmit Queue Length)

Длина очереди передачи определяет количество пакетов, которые могут быть поставлены в очередь перед передачей. Значение по умолчанию 1000 — обычно достаточно для сегодняшней скорости до 10 Гбит/с или даже 40 Гбит/с сетей. Однако, если число ошибок передачи увеличиваются на адаптере, то значение можно удвоить. Используйте ip -slink, чтобы увидеть, если есть какие-то потери на очереди TX для адаптера.

Увеличить длину очереди можно так:

# ip link set dev em1 txqueuelen 2000

 

TCP Window Scaling (масштабирование окна TCP)

Размер TCP окна (TCP Window Size) – количество октетов (начиная с номера подтверждения), которое принимающая сторона готова принять в настоящий момент без подтверждения. На стадии установления соединения рабочая станция и сервер обмениваются значениями максимального размера TCP окна (TCP Window Size), которые присутствуют в пакете. Например, если размер окна получателя равен 16384 байта, то отправитель может отправить 16384 байта без остановки. Принимая во внимание, что максимальная длина сегмента (MSS) может быть 1460 байт, то отправитель сможет передать данный объем в 12 фреймах, и затем будет ждать подтверждение доставки от получателя и информации по обновлению размера окна. Если процесс прошел без ошибок, то размер окна может быть увеличен. Таким образом, реализуется размер скользящего окна в стеке протокола TCP. В современных версиях операционных систем можно увеличить размер окна TCP Window Size и включить динамическое изменение окна в зависимости от состояния канала связи. Динамическое увеличение и уменьшение размера окна является непрерывным процессом в TCP и определяет оптимальный размер окна для каждого сеанса. В очень эффективных сетях размеры окна могут стать очень большими, потому что данные не теряются.

Масштабирование Окна TCP включено по умолчанию:

# sysctl net. ipv4.tcp_window_scaling net.ipv4.tcp_window_scaling = 1

 

TCP буфер

После того, как сетевой трафик обрабатывается от сетевого адаптера, предпринимается попытка приема трафика непосредственно в приложение. Если это не представляется возможным, данные ставятся в очередь на буфер сокета приложения. Есть 3 структуры очереди в сокете:

sk_rmem_alloc = { counter = 121948 },

sk_wmem_alloc = { counter = 553 },

sk_omem_alloc = { counter = 0 },

где:

sk_rmem_alloc – очередь получения

sk_wmem_alloc – очередь передачи

sk_omem_alloc — out-of-order queue

Существует также sk_rcvbuf переменная, которая является пределом, измеренный в байтах, что сокет может получить. В этом случае sk_rcvbuf = 125336.

Из приведенного выше вывода можно вычислить, что очередь получения почти полна. Когда sk_rmem_alloc > sk_rcvbuf то буфер начинает рушится, т.е. наблюдаются потери пакетов. Выполните следующую команду, чтобы определить, происодит это или нет:

# netstat -sn | egrep «prune|collap»; sleep 30; netstat -sn | egrep «prune|collap»

17671 packets pruned from receive queue because of socket buffer overrun

18671 packets pruned from receive queue because of socket buffer overrun

Если счетчик обрезки пакетов растет, то требуется тюнинг.

tcp_rmem: У настраиваемой памяти сокета есть три значения, описывающих минимальное, значение по умолчанию и максимальное значения в байтах. Чтобы просмотреть эти настройки и увеличить:

# sysctl net.ipv4.tcp_rmem

4096 87380 4194304

# sysctl -w net.ipv4.tcp_rmem=“16384 349520 16777216”

# sysctl net.core.rmem_max 4194304

# sysctl -w net.core.rmem_max=16777216

 

TCP Listen Backlog: отвечает за размер очереди одновременно ожидающих подключений к сокету, то есть инициированных (SYN — SYN, ACK — ACK), но еще не принятых сервером (established).

Параметр ядра net.core.somaxconn  — максимальное число открытых сокетов, ждущих соединения. Изменяем:

# sysctl net.core.somaxconn

net.core.somaxconn = 128

# sysctl -w net.core.somaxconn=2048

net. core.somaxconn = 2048

# sysctl net.core.somaxconn

net.core.somaxconn = 2048

 

UDP Buffer Tuning: UDP является гораздо менее сложным, чем протокол TCP. Поскольку UDP не содержит надежности сеанса, он не несет ответственности за повторную передачу потерянных пакетов. Там не существует понятия размера окна и потерянные данные не восстанавливается протоколом. Единственная доступная настройка включает в себя увеличение размера приемного буфера. Если netstat -us показывает “packet receive errors” , попробуйте увеличить число буферов для приема. Буферы UDP могут быть настроены таким образом:


# sysctl net.core.rmem_max

124928

 # sysctl -w net.core.rmem_max=16777216

После изменения максимального размера, требуется перезапуск приложения.

 

pppd — демон протокола точка-точка

pppd [ опций ]

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

ttyname

Используйте последовательный порт с именем ttyname для связи с одноранговым узлом. Если ttyname не начинается с косой черты (/), строка «/ dev /» добавляется к ttyname , чтобы сформировать имя устройства, которое нужно открыть. Если имя устройства не указано или если указано имя терминала, подключенного к стандартному входу, pppd будет использовать этот терминал и не будет выполнять разветвление для перехода в фоновый режим.Значение этой опции из привилегированного источника не может быть изменено непривилегированным пользователем.

скорость

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

asyncmap карта

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

аутентификация

Требовать от однорангового узла аутентифицировать себя перед тем, как разрешить отправку или получение сетевых пакетов. Этот параметр используется по умолчанию, если в системе есть маршрут по умолчанию. Если ни эта опция, ни опция noauth не указаны, pppd разрешит одноранговому узлу использовать только IP-адреса, к которым у системы еще нет маршрута.

позвонить имя

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

подключить скрипт

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

кредитных карт

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

defaultroute

Добавьте маршрут по умолчанию в системные таблицы маршрутизации, используя одноранговый узел в качестве шлюза, когда согласование IPCP успешно завершено. Эта запись удаляется при разрыве PPP-соединения. Эта опция является привилегированной, если была указана опция nodefaultroute .

defaultroute-metric

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

defaultroute6

Добавьте маршрут IPv6 по умолчанию в системные таблицы маршрутизации, используя одноранговый узел в качестве шлюза, когда согласование IPv6CP успешно завершено. Эта запись удаляется при разрыве PPP-соединения. Эта опция является привилегированной, если была указана опция nodefaultroute6 .

отключить скрипт

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

escape xx, yy, …

Указывает, что определенные символы должны быть экранированы при передаче (независимо от того, запрашивает ли их экранирование одноранговым узлом с помощью своей асинхронной карты управляющих символов).Экранируемые символы указываются в виде списка шестнадцатеричных чисел, разделенных запятыми. Обратите внимание, что для опции escape можно указать почти любой символ, в отличие от опции asyncmap , которая позволяет указывать только управляющие символы. Не могут быть экранированы символы с шестнадцатеричными значениями 0x20 — 0x3f или 0x5e.

файл название

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

init скрипт

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

замок

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

mru n

Установите значение MRU [Максимальный блок приема] на n . Pppd попросит одноранговый узел отправить пакеты размером не более n байт. Значение n должно быть от 128 до 16384; значение по умолчанию — 1500. Значение 296 хорошо работает на очень медленных каналах (40 байтов для заголовка TCP / IP + 256 байтов данных). Обратите внимание, что для протокола IPv6 MRU должен быть не менее 1280.

MTU n

Установите значение MTU [Maximum Transmit Unit] на n . Если одноранговый узел не запрашивает меньшее значение через согласование MRU, pppd будет запрашивать, чтобы сетевой код ядра отправлял пакеты данных размером не более n байт через сетевой интерфейс PPP. Обратите внимание, что для протокола IPv6 MTU должно быть не менее 1280.

пассивное

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

<локальный_IP_адрес> : <удаленный_IP_адрес>

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

+ ipv6

Включите протоколы IPv6CP и IPv6.

ipv6 ,

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

активный фильтр выражение-фильтр

Задает фильтр пакетов, который будет применяться к пакетам данных, чтобы определить, какие пакеты следует рассматривать как активность канала и, следовательно, сбросить таймер простоя или вызвать переход канала в режим набора по требованию.Эта опция полезна в сочетании с опцией idle , если по каналу регулярно отправляются или принимаются пакеты (например, пакеты с информацией о маршрутизации), которые в противном случае не позволили бы каналу казаться незанятым. Синтаксис filter-expression аналогичен описанию для tcpdump (1), за исключением того, что квалификаторы, которые не подходят для связи PPP, такие как ether и arp , не разрешены. Как правило, выражение фильтра должно быть заключено в одинарные кавычки, чтобы пробелы в выражении не интерпретировались оболочкой.Этот параметр в настоящее время доступен только в Linux и требует, чтобы ядро ​​было настроено для включения поддержки фильтрации PPP (CONFIG_PPP_FILTER). Обратите внимание, что можно применять различные ограничения к входящим и исходящим пакетам, используя квалификаторы inbound и outbound .

allow-ip адрес (а)

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

номер разрешения номер

Разрешить одноранговым узлам подключаться с заданного телефонного номера. Завершающий символ `* ‘соответствует всем числам, начинающимся с ведущей части.

bsdcomp номер, номер

Запросить, чтобы одноранговый узел сжимал пакеты, которые он отправляет, используя схему BSD-Compress, с максимальным размером кода nr бит, и соглашался сжимать пакеты, отправленные одноранговому узлу, с максимальным размером кода nt бит.Если nt не указано, по умолчанию используется значение, указанное для nr . Значения от 9 до 15 могут использоваться для nr и nt ; большие значения дают лучшее сжатие, но потребляют больше памяти ядра для словарей сжатия. В качестве альтернативы значение 0 для nr или nt отключает сжатие в соответствующем направлении. Используйте nobsdcomp или bsdcomp 0 , чтобы полностью отключить сжатие BSD-Compress.

cdtrcts

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

межстрочный интервал n

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

chap-max-challenge n

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

chap-restart n

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

дочерний тайм-аут n

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

задержка подключения n

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

отладка

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

по умолчанию-asyncmap

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

default-mru

Отключить согласование MRU [Максимальный блок приема]. С этой опцией pppd будет использовать значение MRU по умолчанию 1500 байтов как для направления передачи, так и для направления приема.

спустить nr, nt

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

спрос

Инициировать соединение только по запросу, т. Е. При наличии трафика данных. С этой опцией удаленный IP-адрес может быть указан пользователем в командной строке или в файле опций, или, если нет, pppd будет использовать произвольный адрес из 10.x.x.x диапазон. Pppd изначально настроит интерфейс и включит его для IP-трафика без подключения к одноранговому узлу. Когда трафик доступен, pppd подключится к одноранговому узлу и выполнит согласование, аутентификацию и т. Д. Когда это будет завершено, pppd начнет передачу пакетов данных (то есть IP-пакетов) по каналу.

Опция Demist подразумевает опцию persist . Если такое поведение нежелательно, используйте параметр nopersist после параметра require .Опции idle и holdoff также полезны в сочетании с опцией Demand .

домен d

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

сухой прогон

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

отвал

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

включить сеанс

Включает учет сеанса через PAM или wtwp / wtmpx, в зависимости от ситуации. Когда PAM включен, стеки модуля PAM «учетная запись» и «сеанс» определяют поведение и включаются для всех протоколов аутентификации PPP.Когда PAM отключен, записи wtmp / wtmpx записываются независимо от того, идентифицирует ли имя однорангового узла действительного пользователя в локальной системе, делая одноранговые узлы видимыми в последнем (1) журнале. Эта функция автоматически включается, когда используется опция pppd login . Учет сеансов по умолчанию отключен.

конечная точка

Устанавливает дискриминатор конечной точки, отправляемый локальным компьютером одноранговому узлу во время согласования многоканальности, равным .По умолчанию используется MAC-адрес первого интерфейса Ethernet в системе, если таковой имеется, в противном случае — IPv4-адрес, соответствующий имени хоста, если таковой имеется, при условии, что он не входит в диапазон многоадресной рассылки или локально назначенных IP-адресов, или локального хоста. адрес. Дискриминатором конечной точки может быть строка null или форма тип : значение , где тип — десятичное число или одна из строк local , IP , MAC , magic или телефон .Значение представляет собой IP-адрес в десятичном формате с точками для типа IP или строку байтов в шестнадцатеричном формате, разделенных точками или двоеточиями для других типов. Для типа MAC значение также может быть именем Ethernet или аналогичного сетевого интерфейса. Эта опция в настоящее время доступна только в Linux.

интервал EAP n

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

eap-max-rreq n

Установите максимальное количество запросов EAP, на которые pppd будет отвечать (как клиент), не услышав об успешном или неудачном завершении EAP. (По умолчанию 20.)

eap-max-sreq n

Установите максимальное количество запросов EAP, которые pppd будет выдавать (как сервер) при попытке аутентификации.(По умолчанию 10.)

eap-restart n

Установить тайм-аут повторной передачи для запросов EAP при работе в качестве сервера (аутентификатора). (По умолчанию 3 секунды.)

eap-timeout n

Установите максимальное время ожидания, пока одноранговый узел отправит запрос EAP, действуя в качестве клиента (аутентифицируемого). (По умолчанию 20 секунд.)

скрыть пароль

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

задержка n

Указывает, сколько секунд ждать перед повторной инициализацией ссылки после ее разрыва. Этот параметр действует только в том случае, если используется параметр persist или Demand . Период задержки не применяется, если канал был прерван из-за бездействия.

холостой ход n

Указывает, что pppd должен отключиться, если канал неактивен в течение n секунд.Канал неактивен, когда пакеты данных (например, IP-пакеты) не отправляются или не принимаются. Примечание: не рекомендуется использовать эту опцию с опцией persist без опции Demist . Если задана опция active-filter , пакеты данных, которые отклоняются указанным фильтром активности, также считаются незанятым каналом.

ipcp-accept-local

С этой опцией pppd примет идею партнера о нашем локальном IP-адресе, даже если локальный IP-адрес был указан в опции.

ipcp-accept-удаленный

С этой опцией pppd примет идею партнера о его (удаленном) IP-адресе, даже если удаленный IP-адрес был указан в опции.

ipcp-max-configure n

Установите максимальное количество передач запроса конфигурации IPCP равным n (по умолчанию 10).

ipcp-max-failure n

Установите максимальное количество IPCP configure-NAK, возвращаемых перед началом отправки configure-Rejects вместо n (по умолчанию 10).

ipcp-max-terminate n

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

ipcp-перезапуск n

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

ipparam строка

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

ipv6cp-accept-local

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

ipv6cp-max-configure n

Установите максимальное количество передач запроса конфигурации IPv6CP равным n (по умолчанию 10).

ipv6cp-max-failure n

Задайте максимальное количество IPv6CP configure-NAK, возвращаемых перед отправкой отказа от configure, равным n (по умолчанию 10).

ipv6cp-max-terminate n

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

ipv6cp-restart n

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

IPX

Включите протоколы IPXCP и IPX. Эта опция в настоящее время поддерживается только в Linux и только в том случае, если ваше ядро ​​было настроено для включения поддержки IPX.

ipx-сеть n

Установите номер сети IPX в кадре запроса настройки IPXCP на n , шестнадцатеричное число (без начального 0x). Действительного значения по умолчанию нет. Если эта опция не указана, номер сети получается от однорангового узла.Если одноранговый узел не имеет номера сети, протокол IPX не будет запущен.

ipx-узел n : m

Установите номера узлов IPX. Два номера узла отделяются друг от друга двоеточием. Первое число n — это номер локального узла. Второе число м — номер узла однорангового узла. Номер каждого узла — это шестнадцатеричное число длиной не более 10 цифр. Номера узлов в ipx-сети должны быть уникальными.Действительного значения по умолчанию нет. Если эта опция не указана, то номера узлов получаются от однорангового узла.

ipx-имя-маршрутизатора <строка>

Задайте имя роутера. Это строка, которая отправляется партнеру как информационные данные.

ipx-маршрутизация n

Установите протокол маршрутизации, принимаемый этой опцией. Можно указать более одного экземпляра ipx-routing .Параметр « none » (0) может быть указан как единственный экземпляр ipx-routing. Значения могут быть 0 для NONE , 2 для RIP / SAP и 4 для NLSP .

ipxcp-accept-local

Принять NAK однорангового узла для номера узла, указанного в опции ipx-node. Если номер узла был указан и не равен нулю, по умолчанию используется указанное значение. Если вы включите эту опцию, тогда вы разрешите одноранговому узлу переопределить ввод номера узла.

ipxcp-accept-сеть

Принять NAK однорангового узла для сетевого номера, указанного в опции ipx-network. Если был указан номер сети и не равен нулю, по умолчанию используется это значение. Если вы включите эту опцию, тогда вы разрешите одноранговому узлу переопределить ввод номера узла.

ipxcp-accept-удаленный

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

ipxcp-max-configure n

Установите максимальное количество кадров запроса настройки IPXCP, которые система будет отправлять на n . По умолчанию — 10.

.
ipxcp-max-failure n

Установите максимальное количество кадров IPXCP NAK, которые локальная система отправит, прежде чем отклонить параметры.Значение по умолчанию — 3.

.
ipxcp-max-terminate n

Установите максимальное количество кадров запроса завершения IPXCP, прежде чем локальная система сочтет, что одноранговый узел их не слушает. Значение по умолчанию — 3.

.
kdebug n

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

ктун

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

lcp-echo-failure n

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

интервал lcp-эхо n

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

lcp-max-configure n

Установите максимальное количество передач запроса конфигурации LCP равным n (по умолчанию 10).

lcp-max-failure n

Установите максимальное количество LCP configure-NAK, возвращаемых перед отправкой отказа от configure, равным n (по умолчанию 10).

lcp-max-terminate n

Установите максимальное количество передач запроса на завершение LCP равным n (по умолчанию 3).

lcp-перезапуск n

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

имя ссылки имя

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

местный

Не используйте линии управления модемом. С этой опцией pppd будет игнорировать состояние сигнала CD (обнаружение несущей) от модема и не изменит состояние сигнала DTR (готовность терминала данных).Это противоположность опции модема .

логфд n

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

файл журнала имя файла

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

логин

Используйте базу данных системных паролей для аутентификации однорангового узла с помощью PAP и запишите пользователя в системный файл wtmp. Обратите внимание, что для того, чтобы получить доступ, партнер должен иметь запись в файле / etc / ppp / pap-secrets, а также базу данных системных паролей.См. Также параметр enable-session .

master_detach

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

maxconnect n

Завершить соединение, когда оно было доступно для сетевого трафика в течение n секунд (т.е. n секунд после того, как появился первый протокол управления сетью).

maxfail n

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

модем

Используйте линии управления модемом.Этот вариант установлен по умолчанию. С этой опцией pppd будет ждать подтверждения сигнала CD (Carrier Detect) от модема при открытии последовательного устройства (если не указан сценарий подключения) и на короткое время сбросит сигнал DTR (Data Terminal Ready), когда соединение прерывается и до выполнения скрипта подключения. На Ultrix эта опция подразумевает аппаратное управление потоком, как для опции crtscts . Это противоположность опции local .

МП

Позволяет использовать многоканальный PPP; это псевдоним для опции «многоканальный».Эта опция в настоящее время доступна только в Linux.

mppe-состояние

Разрешить MPPE использовать режим с отслеживанием состояния. Режим без сохранения состояния все еще выполняется первым. По умолчанию режим с отслеживанием состояния запрещен.

мпшортсек

Позволяет использовать короткие (12-битные) порядковые номера в многоканальных заголовках, в отличие от 24-битных порядковых номеров. Этот параметр доступен только в Linux и имеет какой-либо эффект только в том случае, если включен многоканальный режим (см. Параметр многоканального режима).

mrru n

Устанавливает для максимального реконструированного блока приема значение n . MRRU — это максимальный размер принятого пакета в многоканальном пакете, аналогичный MRU для отдельных каналов. Этот параметр в настоящее время доступен только в Linux и имеет какой-либо эффект только в том случае, если включен многоканальный режим (см. Параметр многоканальности).

ms-dns

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

ms-wins

Если pppd действует как сервер для клиентов Microsoft Windows или «Samba», эта опция позволяет pppd предоставлять клиентам один или два адреса сервера WINS (Windows Internet Name Services).Первый экземпляр этой опции указывает основной адрес WINS; второй экземпляр (если он указан) указывает вторичный адрес WINS.

многоканальный

Позволяет использовать многоканальный протокол PPP. Если одноранговый узел также поддерживает многоканальность, то этот канал может стать частью пакета между локальной системой и одноранговым узлом. Если существует существующий пакет для однорангового узла, pppd присоединит эту ссылку к этому пакету, в противном случае pppd создаст новый пакет. См. Раздел MULTILINK ниже.Эта опция в настоящее время доступна только в Linux.

наименование наименование

Задайте имя локальной системы для аутентификации имя . Это привилегированный вариант. С этой опцией pppd будет использовать строки в файлах секретов, которые имеют name в качестве второго поля при поиске секрета для использования при аутентификации партнера. Кроме того, если не будет переопределено опцией user , имя будет использоваться в качестве имени для отправки одноранговому узлу при аутентификации локальной системы одноранговому узлу.(Обратите внимание, что pppd не добавляет имя домена к имени .)

без сопровождения

Отключить сжатие адреса / управления в обоих направлениях (отправка и получение).

noauth

Не требовать от партнера аутентифицироваться. Это привилегированный вариант.

nobsdcomp

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

noccp

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

документов

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

nocdtrcts

Этот параметр является синонимом кодов . Любой из этих вариантов отключит обе формы аппаратного управления потоком.

nodefaultroute

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

nodefaultroute6

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

нодфлат

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

узлов

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

noendpoint

Запрещает pppd отправлять дискриминатор конечной точки одноранговому узлу или принимать его от однорангового узла (см. Раздел MULTILINK ниже). Эта опция должна требоваться только в том случае, если одноранговый узел неисправен.

номер

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

noipv6

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

noipdefault

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

noipx

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

ноктун

Противоположно варианту ktune ; запрещает pppd изменять системные настройки.

нолок

Противоположно варианту замка ; указывает, что pppd не должен создавать файл блокировки в стиле UUCP для последовательного устройства.Это привилегированный вариант.

лог

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

номагик

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

ном

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

номппе

Отключает MPPE (Microsoft Point to Point Encryption). Это значение по умолчанию.

номппе-40

Отключить 40-битное шифрование с помощью MPPE.

номппе-128

Отключить 128-битное шифрование с помощью MPPE.

nomppe-stateful

Отключить режим MPPE с отслеживанием состояния.Это значение по умолчанию.

nompshortseq

Отключает использование коротких (12-битных) порядковых номеров в многоканальном протоколе PPP, заставляя использовать 24-битные порядковые номера. Этот параметр в настоящее время доступен только в Linux и имеет какой-либо эффект, только если включен многоканальный режим.

Nomultilink

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

nopcomp

Отключить согласование сжатия поля протокола как в направлении приема, так и в направлении передачи.

ноперсист

Выйти после того, как соединение будет установлено и разорвано. Это значение по умолчанию, если не указана опция persist или Demand .

nopredictor1

Не принимать и не соглашаться на сжатие Predictor-1.

noproxyarp

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

норемотейп

Разрешить pppd работать без IP-адреса однорангового узла. Эта опция доступна только в Linux. Обычно pppd запрашивает IP-адрес однорангового узла, и если партнер не предоставляет его, pppd будет использовать произвольный адрес в подсети 10.x.x.x. С этой опцией, если одноранговый узел не предоставляет свой IP-адрес, pppd не будет запрашивать его у однорангового узла и не будет устанавливать адрес назначения для интерфейса ppp. В этой ситуации интерфейс ppp может использоваться для маршрутизации путем создания маршрутов устройств, но сам одноранговый узел не может быть адресован напрямую для IP-трафика.

нот

Обычно pppd требует оконечного устройства. С этой опцией pppd выделит себе пару псевдо-tty master / slave и будет использовать slave в качестве своего оконечного устройства. Pppd создаст дочерний процесс, который будет действовать как «символьный шунт» для передачи символов между псевдотерминальным мастером и его стандартным вводом и выводом. Таким образом, pppd будет передавать символы на свой стандартный вывод и получать символы на свой стандартный ввод, даже если они не являются оконечными устройствами.Эта опция увеличивает задержку и накладные расходы ЦП при передаче данных через интерфейс ppp, поскольку все отправленные и полученные символы должны проходить через процесс символьного шунтирования. Если используется эта опция, явное имя устройства не может быть указано.

ноя

Отключить сжатие заголовков TCP / IP в стиле Ван Якобсона как в направлении передачи, так и в направлении приема.

novjccomp

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

papcrypt

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

pap-max-authreq n

Установите максимальное количество передач запроса аутентификации PAP равным n (по умолчанию 10).

pap-restart n

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

pap-timeout n

Установите максимальное время, в течение которого pppd будет ждать, пока партнер аутентифицируется с помощью PAP, равным n секунд (0 означает отсутствие ограничения).

фильтр-пропуск выражение-фильтр

Задает фильтр пакетов, применяемый к отправляемым или принимаемым пакетам данных, чтобы определить, каким пакетам следует разрешить прохождение.Пакеты, отклоненные фильтром, игнорируются. Эту опцию можно использовать для предотвращения использования определенных сетевых демонов (например, маршрутизируемых), использующих пропускную способность восходящего канала, или для обеспечения базовых возможностей межсетевого экрана. Синтаксис filter-expression аналогичен описанию для tcpdump (1), за исключением того, что квалификаторы, которые не подходят для связи PPP, такие как ether и arp , не разрешены. Как правило, выражение фильтра должно быть заключено в одинарные кавычки, чтобы пробелы в выражении не интерпретировались оболочкой.Обратите внимание, что можно применять различные ограничения к входящим и исходящим пакетам, используя квалификаторы inbound и outbound . Этот параметр в настоящее время доступен только в Linux и требует, чтобы ядро ​​было настроено для включения поддержки фильтрации PPP (CONFIG_PPP_FILTER).

пароль строка пароля

Задает пароль, используемый для аутентификации однорангового узла. Использование этой опции не рекомендуется, поскольку пароль, вероятно, будет виден другим пользователям системы (например, при использовании ps (1)).

постоянный

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

плагин имя файла

Загрузите объектный файл общей библиотеки filename как плагин. Это привилегированный вариант. Если filename не содержит косой черты (/), pppd будет искать подключаемый модуль в каталоге / usr / lib / pppd / version , где version — это номер версии pppd (например, 2 .4.2).

предиктор1

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

Privgroup название группы

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

проксиарп

Добавьте запись в таблицу ARP [протокол разрешения адресов] этой системы с IP-адресом однорангового узла и Ethernet-адресом этой системы. Это приведет к тому, что партнер будет казаться другим системам находящимся в локальной сети Ethernet.

pty скрипт

Указывает, что для связи должен использоваться сценарий команды , а не конкретное оконечное устройство. Pppd выделит себе пару псевдо-tty главный / подчиненный и будет использовать подчиненное устройство в качестве оконечного устройства. Сценарий будет запущен в дочернем процессе с псевдо-tty мастером в качестве стандартного ввода и вывода. Если используется эта опция, явное имя устройства не может быть указано. (Примечание: если параметр record используется вместе с параметром pty , дочерний процесс будет иметь каналы на стандартном вводе и выводе.)

получить все

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

запись имя файла

Указывает, что pppd должен записывать все отправленные и полученные символы в файл с именем имя файла .Этот файл открывается в режиме добавления с использованием идентификатора пользователя и разрешений. Эта опция реализована с использованием псевдотерминала и процесса передачи символов между псевдотерминалом и реальным последовательным устройством, поэтому это увеличит задержку и накладные расходы ЦП при передаче данных через интерфейс ppp. Символы сохраняются в формате с тегами с отметками времени, которые можно отобразить в удобочитаемой форме с помощью программы pppdump (8).

удаленное имя имя

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

удаленный номер номер

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

мусорщик

С этой опцией pppd не соглашается аутентифицировать себя перед одноранговым узлом, используя CHAP.

мусорщик

С этой опцией pppd не соглашается аутентифицировать себя перед одноранговым узлом с помощью MS-CHAP.

мусор-mschap-v2

С этой опцией pppd не соглашается аутентифицировать себя перед одноранговым узлом с помощью MS-CHAPv2.

свалка

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

мусоропровод

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

требуется глава

Требовать от однорангового узла аутентифицировать себя с помощью аутентификации CHAP [Challenge Handshake Authentication Protocol].

требуется-mppe

Требовать использования MPPE (Microsoft Point to Point Encryption). Эта опция отключает все другие типы сжатия. Эта опция включает как 40-битное, так и 128-битное шифрование. Для успешной работы MPPE необходимо пройти аутентификацию с помощью MS-CHAP или MS-CHAPv2. Эта опция в настоящее время поддерживается только в Linux и только в том случае, если ваше ядро ​​было настроено для включения поддержки MPPE.

требует-mppe-40

Требовать использования MPPE с 40-битным шифрованием.

требуется-mppe-128

Требовать использования MPPE со 128-битным шифрованием.

требовать mschap

Требовать от однорангового узла аутентифицировать себя с помощью аутентификации MS-CHAP [Microsoft Challenge Handshake Authentication Protocol].

требуется-mschap-v2

Требовать от однорангового узла аутентифицировать себя с помощью аутентификации MS-CHAPv2 [Microsoft Challenge Handshake Authentication Protocol, версия 2].

, требуется

Требовать от однорангового узла аутентифицировать себя с использованием аутентификации EAP [Extensible Authentication Protocol].

требуется папка

Требовать от однорангового узла аутентифицировать себя, используя аутентификацию PAP [протокол аутентификации пароля].

установить имя = значение

Задайте переменную среды для сценариев, запускаемых pppd.Когда устанавливается привилегированным источником, переменная, указанная как name , не может быть изменена параметрами, содержащимися в непривилегированном источнике. См. Также параметр unset и среду, описанную в SCRIPTS .

показать пароль

При регистрации содержимого пакетов PAP эта опция заставляет pppd показывать строку пароля в сообщении журнала.

бесшумный

С этой опцией pppd не будет передавать пакеты LCP для инициации соединения до тех пор, пока от однорангового узла не будет получен действительный пакет LCP (как для опции «пассивный» в старых версиях pppd).

интервал srp n

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

srp-pn-secret строка

Установить долгосрочный секрет создания псевдонима для сервера.Это значение является необязательным и, если установлено, оно должно быть известно только на стороне сервера (аутентификатора) и должно быть различным для каждого сервера (или опроса идентичных серверов). Он используется вместе с текущей датой для генерации ключа для шифрования и дешифрования личности клиента, содержащейся в псевдониме.

srp-use-псевдоним

При работе в качестве клиента EAP SRP-SHA1 попытайтесь сначала использовать псевдоним, хранящийся в ~ / .ppp_pseudonym, в качестве идентификатора и сохраните в этом файле любой псевдоним, предложенный партнером во время аутентификации.

синхронизация

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

шт. число

Устанавливает номер модуля ppp (для имени интерфейса ppp0 или ppp1 и т. Д.) Для исходящих соединений. Если устройство уже используется, будет использоваться динамически назначаемый номер.

ifname строка

Задайте имя интерфейса ppp для исходящих соединений. Если имя интерфейса уже используется или если имя не может быть использовано по какой-либо другой причине, pppd завершит работу.

отключено наименование

Удалите переменную из переменной среды для сценариев, запускаемых pppd. Если указано привилегированным источником, переменная имя не может быть установлена ​​опциями, содержащимися в непривилегированном источнике.См. Также параметр set и среду, описанную в SCRIPTS .

updetach

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

up_sdnotify

Используйте эту опцию для запуска pppd в служебных модулях systemd типа = notify ( up_sdnotify подразумевает nodetach ).Когда up_sdnotify включен, pppd уведомит systemd после успешного установления соединения ppp (до точки, где появился первый протокол управления сетью, обычно протокол управления IP). Эта опция доступна, только если pppd скомпилирован с поддержкой systemd.

имя хоста

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

usepeerdns

Запросить у однорангового узла до 2 адресов DNS-серверов. Адреса, предоставленные одноранговым узлом (если есть), передаются сценарию / etc / ppp / ip-up в переменных среды DNS1 и DNS2, а для переменной среды USEPEERDNS будет установлено значение 1. Кроме того, pppd создаст / etc / ppp / resolv.conf, содержащий одну или две строки сервера имен с адресом (адресами), предоставленным партнером.

пользователь имя

Устанавливает имя, используемое для аутентификации локальной системы для однорангового узла, равным , имя .

слоты vj-max n

Устанавливает количество слотов подключения, которые будут использоваться кодом сжатия и декомпрессии заголовка TCP / IP Ван Якобсона, равным n , которое должно быть от 2 до 16 (включительно).

добро пожаловать скрипт

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

xonxoff

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

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

Файл параметров разбивается на серию слов, разделенных пробелами. В слово можно включить пробел, заключив его в двойные кавычки («). Обратная косая черта (\) заключает в кавычки следующий символ.Хеш (#) начинает комментарий, который продолжается до конца строки. Нет ограничений на использование файла . или вызывают параметры в файле параметров.

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

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

Как указано выше, некоторые чувствительные к безопасности параметры являются привилегированными, что означает, что они не могут использоваться обычным непривилегированным пользователем, запускающим setuid-root pppd, либо в командной строке в пользовательском ~ /.ppprc или в файле опций, считываемых с использованием опции файла . Привилегированные параметры можно использовать в файле / etc / ppp / options или в файле параметров, читаемом с помощью параметра call . Если pppd запускается пользователем root, привилегированные параметры могут использоваться без ограничений.

При открытии устройства pppd использует либо ID пользователя вызывающего пользователя, либо корневой UID (то есть 0), в зависимости от того, было ли имя устройства указано пользователем или системным администратором. Если имя устройства получено из привилегированного источника, то есть / etc / ppp / options или файла опций, прочитанного с использованием опции call , pppd использует полные привилегии root при открытии устройства.Таким образом, создав соответствующий файл в / etc / ppp / peers, системный администратор может разрешить пользователям устанавливать соединение ppp через устройство, к которому они обычно не имеют разрешения на доступ. В противном случае pppd использует реальный UID вызывающего пользователя при открытии устройства.

Аутентификация — это процесс, при котором один партнер убеждает другого в своей идентичности. Это предполагает, что первый одноранговый узел отправляет свое имя другому вместе с некоторой секретной информацией, которая может исходить только от подлинного авторизованного пользователя с этим именем.В таком обмене мы будем называть первого партнера «клиентом», а другого — «сервером». У клиента есть имя, по которому он идентифицирует себя для сервера, и у сервера также есть имя, по которому он идентифицирует себя для клиента. Обычно подлинный клиент делится некоторым секретом (или паролем) с сервером и аутентифицирует себя, доказывая, что он знает этот секрет. Очень часто имена, используемые для аутентификации, соответствуют именам узлов в Интернете, но это не обязательно.

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

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

По умолчанию 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 использует для аутентификации других систем для себя.

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

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

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

Любые следующие слова в той же строке считаются списком допустимых IP-адресов для этого клиента. Если в строке всего 3 слова или если первое слово — «-», то все IP-адреса запрещены.Чтобы разрешить любой адрес, используйте «*». Слово, начинающееся с «!» указывает, что указанный адрес неприемлем. За адресом может следовать «/» и число n , чтобы указать всю подсеть, то есть все адреса, которые имеют одинаковое значение в старших n битах. В этой форме за адресом может следовать знак «плюс» («+»), чтобы указать, что один адрес из подсети авторизован на основе номера используемого модуля сетевого интерфейса ppp. В этом случае часть адреса хоста будет равна номеру устройства плюс один.

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

Когда pppd выбирает секрет для использования при аутентификации для однорангового узла, он сначала определяет, какое имя будет использовать для идентификации себя для однорангового узла. Это имя может быть указано пользователем с опцией пользователь . Если этот параметр не используется, по умолчанию используется имя локальной системы, определенное, как описано в предыдущем абзаце. Затем pppd ищет секрет с этим именем в первом поле и именем партнера во втором поле.Pppd будет знать имя партнера, если используется аутентификация CHAP или EAP, потому что одноранговый узел отправит его в пакете запроса. Однако, если используется PAP, pppd должен будет определить имя партнера из опций, указанных пользователем. Пользователь может указать имя партнера напрямую с помощью опции remotename . В противном случае, если удаленный IP-адрес был указан в виде имени (а не в числовой форме), это имя будет использоваться как имя партнера. В противном случае pppd будет использовать пустую строку в качестве имени партнера.

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

Кроме того, если была указана опция login , имя пользователя и пароль также проверяются по базе данных системных паролей.Таким образом, системный администратор может настроить файл pap-secrets, чтобы разрешить доступ PPP только определенным пользователям, а также ограничить набор IP-адресов, которые может использовать каждый пользователь. Обычно при использовании опции login секрет в / etc / ppp / pap-secrets будет «», что будет соответствовать любому паролю, предоставленному партнером. Это позволяет избежать необходимости иметь один и тот же секрет в двух местах.

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

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

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

Иногда желательно добавить маршрут по умолчанию через удаленный хост, как в случае с машиной, единственное соединение которой с Интернетом осуществляется через интерфейс ppp. Параметр defaultroute заставляет pppd создавать такой маршрут по умолчанию при появлении IPCP и удалять его при разрыве связи.

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

Когда используется опция Demand , IP-адреса интерфейсов уже были установлены в момент появления IPCP. Если pppd не смог согласовать те же адреса, которые он использовал для настройки интерфейса (например, если партнером является ISP, который использует динамическое назначение IP-адресов), pppd должен изменить IP-адреса интерфейса на согласованные адреса. Это может нарушить существующие соединения, и использование набора по требованию с одноранговыми узлами, которые назначают динамические IP-адреса, не рекомендуется.

Multilink PPP обеспечивает возможность объединения двух или более каналов PPP между парой машин в единый «пакет», который выглядит как один виртуальный канал PPP, имеющий общую полосу пропускания отдельных каналов. В настоящее время многоканальный PPP поддерживается только в Linux.

Pppd определяет, что канал, которым он управляет, подключен к тому же одноранговому узлу, что и другой канал, используя дискриминатор конечных точек однорангового узла и аутентифицированную идентичность однорангового узла (если он аутентифицирует себя).Дискриминатор конечной точки — это блок данных, который, надеюсь, уникален для каждого однорангового узла. Могут использоваться несколько типов данных, в том числе локально назначенные строки байтов, IP-адреса, MAC-адреса, произвольные строки байтов или телефонные номера E-164. Дискриминатор конечной точки, отправленный партнеру pppd, может быть установлен с помощью опции конечной точки.

В некоторых случаях одноранговый узел может не отправлять дискриминатор конечной точки или не уникальное значение. Опция пакета добавляет дополнительную строку, которая добавляется к дискриминатору конечной точки однорангового узла и аутентифицированному идентификатору при сопоставлении ссылок, которые необходимо объединить в пакет.Опцию пакета также можно использовать для создания нескольких пакетов между локальной системой и одноранговым узлом. Pppd использует базу данных TDB в /var/run/pppd2.tdb для сопоставления ссылок.

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

Если первая ссылка завершается (например, из-за зависания или полученного запроса на завершение LCP), связка не уничтожается, если в ней не осталось других ссылок. Вместо того, чтобы завершать работу, первый pppd продолжает работать после разрыва связи, пока не завершатся все ссылки в пакете. Если первый pppd получит сигнал SIGTERM или SIGINT, он уничтожит пакет и отправит SIGHUP процессам pppd для каждой ссылки в пакете. Если первый pppd получит сигнал SIGHUP, он завершит свою ссылку, но не пакет.

Примечание: режим по запросу в настоящее время не поддерживается при многоканальном подключении.

В следующих примерах предполагается, что файл / etc / ppp / options содержит параметр auth (как в файле по умолчанию / etc / ppp / options в дистрибутиве ppp).

Вероятно, наиболее распространенное использование pppd — это дозвон к провайдеру. Это можно сделать с помощью такой команды, как

pppd вызов isp

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

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

В этом примере мы используем чат для набора номера модема ISP и прохождения любой необходимой последовательности входа в систему.Упп- ~ «

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

Pppd также может использоваться для предоставления пользователям услуги коммутируемого ppp. Если у пользователей уже есть учетные записи для входа, самый простой способ настроить службу ppp — позволить пользователям войти в свои учетные записи и запустить pppd (установленный setuid-root) с помощью такой команды, как

pppd proxyarp

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

сервер joespc «секрет Джо» joespc.my.net

(См. Srp-entry (8) для получения информации о способах создания серверной записи при использовании SRP-SHA1.) В качестве альтернативы, вы можете создать имя пользователя с именем (например) «ppp», оболочкой для входа в систему которого является pppd и чей дом каталог — / etc / ppp.] ( asyncmap 200a0000 ). Если путь включает rlogin, вам нужно будет использовать опцию escape ff на конце, на котором запущен клиент rlogin, поскольку многие реализации rlogin не прозрачны; они удалят последовательность [0xff, 0xff, 0x73, 0x73, за которой следуют любые 8 байтов] из потока.

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

Параметр отладки вызывает регистрацию содержимого всех отправленных или полученных пакетов управления, то есть всех пакетов LCP, PAP, CHAP, EAP или IPCP. Это может быть полезно, если согласование PPP не удалось или аутентификация не удалась.Если отладка включена во время компиляции, параметр debug также вызывает регистрацию других сообщений отладки.

Отладка также может быть включена или отключена путем отправки сигнала 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 не ждет завершения сценариев (за исключением сценария ip-pre-up). Сценарии выполняются от имени пользователя root (с реальным и эффективным идентификатором пользователя, установленным на 0), поэтому они могут выполнять такие действия, как обновление таблиц маршрутизации или запуск привилегированных демонов.Будьте осторожны, чтобы содержимое этих сценариев не поставило под угрозу безопасность вашей системы. Pppd запускает сценарии со стандартным вводом, выводом и ошибкой, перенаправленной на / dev / null, и с пустой средой, за исключением некоторых переменных среды, которые предоставляют информацию о ссылке. Переменные среды, которые устанавливает pppd:

УСТРОЙСТВО

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

IFNAME

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

IPLOCAL

IP-адрес для локального конца ссылки. Это устанавливается только при появлении IPCP.

IPREMOTE

IP-адрес удаленного конца канала. Это устанавливается только при появлении IPCP.

ИМЯ

Аутентифицированное имя партнера. Устанавливается только в том случае, если одноранговый узел аутентифицирует себя.

СКОРОСТЬ

Скорость передачи терминального устройства.

ORIG_UID

Реальный идентификатор пользователя, запустившего pppd.

PPPLOGNAME

Имя реального идентификатора пользователя, который вызвал pppd. Это всегда установлено.

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

CONNECT_TIME

Количество секунд с момента начала согласования PPP до разрыва соединения.

BYTES_SENT

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

BYTES_RCVD

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

ИМЯ ССЫЛКИ

Логическое имя ссылки, заданное с помощью опции linkname .

DNS1

Если одноранговый узел предоставляет адреса DNS-серверов, в этой переменной устанавливается первый предоставленный адрес DNS-сервера (независимо от того, была ли указана опция usepeerdns).

DNS2

Если одноранговый узел предоставляет адреса DNS-серверов, в этой переменной устанавливается второй предоставленный адрес DNS-сервера (независимо от того, была ли указана опция usepeerdns).

Pppd вызывает следующие сценарии, если они существуют. Если они не существуют, это не ошибка.

/ etc / ppp / auth-up

Программа или сценарий, который выполняется после успешной аутентификации удаленной системы.Выполняется с параметрами

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

Обратите внимание, что этот сценарий не выполняется, если партнер не аутентифицирует себя, например, когда используется опция noauth .

/ и т.д. / ppp / auth-down

Программа или сценарий, который выполняется при разрыве связи, если ранее был выполнен / etc / ppp / auth-up. Он выполняется таким же образом с теми же параметрами, что и / etc / ppp / auth-up.

/ etc / ppp / ip-pre-up

Программа или сценарий, который выполняется непосредственно перед запуском сетевого интерфейса ppp. Он выполняется с теми же параметрами, что и сценарий ip-up (см. Ниже). На данный момент интерфейс существует и имеет назначенные IP-адреса, но все еще не работает. Это можно использовать для добавления правил брандмауэра до того, как IP-трафик сможет проходить через интерфейс. Pppd будет ждать завершения этого сценария перед запуском интерфейса, поэтому этот сценарий должен выполняться быстро.

/ и т. Д. / Ppp / ip-up

Программа или сценарий, который выполняется, когда канал доступен для отправки и получения IP-пакетов (то есть, когда IPCP пришел). Выполняется с параметрами

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

/ и т. Д. / PPP / IP-вниз

Программа или сценарий, который выполняется, когда ссылка больше не доступна для отправки и получения IP-пакетов.Этот скрипт можно использовать для отмены эффектов сценариев / etc / ppp / ip-up и / etc / ppp / ip-pre-up. Он вызывается таким же образом и с теми же параметрами, что и сценарий ip-up.

/ и т. Д. / Ppp / ipv6-up

Подобно / etc / ppp / ip-up, за исключением того, что он выполняется, когда ссылка доступна для отправки и получения пакетов IPv6. Выполняется с параметрами

имя-интерфейса скорость tty-устройства local-link-local-address remote-link-local-address ipparam

/ и т. Д. / Ppp / ipv6-down

Аналогично / etc / ppp / ip-down, но выполняется, когда пакеты IPv6 больше не могут передаваться по каналу.Он выполняется с теми же параметрами, что и скрипт ipv6-up.

/ и т. Д. / Ppp / ipx-up

Программа или сценарий, который выполняется, когда ссылка доступна для отправки и получения пакетов IPX (то есть, когда появился IPXCP). Выполняется с параметрами

имя-интерфейса скорость tty-устройства номер сети локальный IPX-адрес-узла удаленный-IPX-узел-адрес локальный-IPX-протокол-маршрутизации удаленный-протокол-маршрутизации IPX локальный-IPX-имя-маршрутизатора удаленный- Имя-маршрутизатора IPX ipparam pppd-pid

Поле local-IPX-routing-protocol и remote-IPX-routing-protocol может быть одним из следующих:

NONE, чтобы указать, что протокол маршрутизации отсутствует
RIP, чтобы указать, что следует использовать RIP / SAP
NLSP, чтобы указать, что следует использовать Novell NLSP
RIP NLSP, чтобы указать, что следует использовать как RIP / SAP, так и NLSP

/ и т. Д. / Ppp / ipx-вниз

Программа или сценарий, который выполняется, когда ссылка больше не доступна для отправки и получения пакетов IPX.Этот скрипт можно использовать для отмены эффектов скрипта / etc / ppp / ipx-up. Он вызывается таким же образом и с теми же параметрами, что и сценарий ipx-up.

/ var / run / ppp n .pid (BSD или Linux), / etc / ppp / ppp n .pid (другие)

Process-ID для процесса pppd на блоке интерфейса ppp n .

/ var / run / ppp- имя .pid (BSD или Linux),

/ etc / ppp / ppp- имя .pid (другие) Идентификатор процесса для процесса pppd для логической ссылки имя (см. Параметр linkname ).

/var/run/pppd2.tdb

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

/ etc / ppp / chap-secrets

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

/ и т.д. / PPP / SRP-секреты

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

~ / .ppp_pseudonym

Сохраненный псевдоним SRP-SHA1 на стороне клиента. Подробнее см. Параметр srp-use-pseudonym .

/ etc / ppp / options

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

~ / .ppprc

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

/ etc / ppp / options. ttyname

Параметры системы по умолчанию для используемого последовательного порта, читаются после ~ / .ppprc. При формировании части ttyname этого имени файла начальный / dev / удаляется из имени порта (если присутствует), а любые косые черты в оставшейся части преобразуются в точки.

/ etc / ppp / peers

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

чат (8), pppstats (8)

RFC1144

Якобсон, В. Сжатие заголовков TCP / IP для низкоскоростных последовательных каналов. февраля 1990 года.

RFC1321

Ривест, Р. Алгоритм дайджеста сообщения MD5. апрель 1992 года.

RFC1332

McGregor, G. Протокол управления интернет-протоколом PPP (IPCP). мая 1992 года.

RFC1334

Lloyd, B .; Simpson, W.A. Протоколы аутентификации PPP. Октябрь 1992 г.

RFC1661

Simpson, W.A. Протокол точка-точка (PPP). июля 1994 года.

RFC1662

Симпсон, В.A. PPP в HDLC-подобном кадрировании. июля 1994 года.

RFC1990

Sklower, K .; et al., Многоканальный протокол PPP (MP). августа 1996 года.

RFC2284

Blunk, L .; Фоллбрехт, Дж., Расширяемый протокол аутентификации PPP (EAP). марта 1998г.

RFC2472

Haskin, D. IP, версия 6 через PPP декабря 1998 г.

RFC2945

Ву, Т., Система аутентификации SRP и обмена ключами Сентябрь 2000 г.

draft-ietf-pppext-eap-srp-03.txt

Carlson, J .; и др., Протокол аутентификации EAP SRP-SHA1. июль 2001г.

Некоторая ограниченная степень контроля может быть осуществлена ​​над запущенным процессом pppd, послав ему сигнал из списка ниже.

SIGINT, SIGTERM

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

SIGHUP

Этот сигнал заставляет pppd завершить соединение, восстановить настройки последовательного устройства и закрыть последовательное устройство. Если была указана опция persist или Demand , pppd попытается повторно открыть последовательное устройство и начать другое соединение (после периода задержки).В противном случае pppd выйдет. Если этот сигнал получен во время периода удержания, он заставляет pppd немедленно завершить период удержания. Если процесс коннектора или разъединителя запущен, pppd отправит тот же сигнал своей группе процессов.

СИГУСР1

Этот сигнал переключает состояние опции debug .

СИГУСР2

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

Пол Маккеррас ([email protected]), основанный на более ранней работе Дрю Перкинса, Брэда Клементса, Карла Фокса, Грега Кристи и Брэда Паркера.

Pppd защищен авторским правом и доступен на условиях, которые предусматривают, что он может быть скопирован и использован в исходной или двоичной форме при соблюдении условий, перечисленных ниже. На отдельные части pppd распространяются следующие уведомления об авторских правах:

Авторские права (c) 1984–2000 Университет Карнеги-Меллона.Все права защищены.
Copyright (c) 1993-2004 Пол Маккеррас. Все права защищены.
Copyright (c) 1995 Педро Роке Маркес. Все права защищены.
Copyright (c) 1995 Эрик Розенквист. Все права защищены.
Copyright (c) 1999 Томми Комулайнен. Все права защищены.
Авторское право (C) Эндрю Триджелл, 1999 г.
Авторское право (c) 2000 г., Sun Microsystems, Inc. Все права защищены.
Авторские права (c) 2001, Sun Microsystems, Inc. Все права защищены.
Copyright (c) 2002 Google, Inc.Все права защищены.

Уведомления об авторских правах содержат следующие утверждения.

Распространение и использование в исходной и двоичной формах, с модификациями или без них, разрешены при соблюдении следующих условий:

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

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

3. Название «Университет Карнеги-Меллона» не должно использоваться для поддержки или продвижения продуктов, созданных на основе этого программного обеспечения, без предварительного письменного разрешения. Для получения разрешения или любых юридических деталей, пожалуйста, обращайтесь в
Office of Technology Transfer
Carnegie Mellon University
5000 Forbes Avenue
Pittsburgh, PA 15213-3890
(412) 268-4387, факс: (412) 268-7395
tech-transfer @ andrew.cmu.edu

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

4. При любом повторном распространении в любой форме должны сохраняться следующие подтверждения:
«Этот продукт включает программное обеспечение, разработанное Computing Services в Университете Карнеги-Меллона (http://www.cmu.edu/computing/)».
«Этот продукт включает программное обеспечение, разработанное Полом Маккеррасом ».
«Этот продукт включает программное обеспечение, разработанное Педро Роке Маркесом ».
«Этот продукт включает программное обеспечение, разработанное Tommi Komulainen «.

CARNEGIE MELLON UNIVERSITY ОТКАЗЫВАЕТСЯ ОТ ВСЕХ ГАРАНТИЙ В ОТНОШЕНИИ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ВКЛЮЧАЯ ВСЕ ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ, НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ CARNEGIE MELLON UNIVERSITY НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ СПЕЦИАЛЬНЫЕ ДАННЫЕ ИЛИ ОТНОСИТСЯ К НАМ. ИЛИ ПРИБЫЛЬ В РЕЗУЛЬТАТЕ ДОГОВОРА, НЕБРЕЖНОСТИ ИЛИ ДРУГИХ ОГРОМНЫХ ДЕЙСТВИЙ, ВОЗНИКАЮЩИХ ИЛИ В СВЯЗИ С ИСПОЛЬЗОВАНИЕМ ИЛИ РАБОТОЙ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

АВТОРЫ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ОТКАЗЫВАЮТСЯ ОТ ВСЕХ ГАРАНТИЙ В ОТНОШЕНИИ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ВКЛЮЧАЯ ВСЕ ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ, НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ АВТОРЫ НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ СПЕЦИАЛЬНЫЕ, КОСВЕННЫЕ ИЛИ КОСВЕННЫЕ ВОПРОСЫ ДАННЫЕ ИЛИ ПРИБЫЛЬ, В РЕЗУЛЬТАТЕ ДОГОВОРА, НЕБРЕЖНОСТИ ИЛИ ДРУГИХ ЯРКИХ ДЕЙСТВИЙ, ВОЗНИКАЮЩИХ ИЛИ В СВЯЗИ С ИСПОЛЬЗОВАНИЕМ ИЛИ ВЫПОЛНЕНИЕМ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

pppd (8) — ppp — Debian stretch — Debian Manpages

pppd (8) — ppp — Debian stretch — Debian Manpages

Прокрутка к навигации

PPPD (8) Руководство администратора системы PPPD (8)
pppd — Демон протокола точка-точка pppd [ опции ] PPP — это протокол, используемый для установления интернет-соединений через модемы удаленного доступа, DSL-соединения и многие другие типы соединений точка-точка. pppd демон работает вместе с драйвером PPP ядра, чтобы установить и поддерживать Соединение PPP с другой системой (называемое узлом ) и согласование Адреса интернет-протокола (IP) для каждого конца ссылки. Pppd также может аутентифицировать однорангового узла и / или предоставить ему аутентификационную информацию. PPP может использоваться с другими сетевыми протоколами помимо IP, но такое использование становится все более редким.
ttyname
Используйте последовательный порт ttyname для связи с одноранговым узлом.Если ttyname не начинается с косой черты (/), строка «/ dev /» добавляется к ttyname , чтобы сформировать имя устройство, чтобы открыть. Если имя устройства не указано или если имя терминала подключен к стандартному входу, pppd будет использовать этот терминал, и не будет развиваться, чтобы перейти в фоновый режим. Значение этой опции из привилегированного источника не может быть отменено непривилегированным пользователь.
скорость
Опция, представляющая собой десятичное число, принимается в качестве желаемой скорости передачи для последовательное устройство.В таких системах как 4.4BSD и NetBSD любая скорость может быть указано. Другие системы (например, Linux, SunOS) поддерживают только обычно используемые скорости передачи данных.
asyncmap карта
Этот параметр устанавливает Async-Control-Character-Map (ACCM) для этого конца связь. ACCM — это набор из 32 бит, по одному для каждого элемента управления ASCII. символы со значениями от 0 до 31, где 1 бит указывает, что соответствующий управляющий символ не должен использоваться в пакетах PPP, отправляемых на эта система.Карта кодируется как шестнадцатеричное число (без ведущего 0x), где младший бит (00000001) представляет символ 0 и старший бит (80000000) представляет символ 31. Pppd спросит одноранговый узел для отправки этих символов как 2-байтовой escape-последовательности. Если несколько asyncmap параметры приведены, значения объединены по ИЛИ. Если нет asyncmap опция, по умолчанию ноль, поэтому pppd запросит сверстник, чтобы не экранировать управляющие символы.Чтобы избежать передачи символов используйте опцию escape .
авторизация
Требовать от однорангового узла аутентифицировать себя перед тем, как разрешить сетевым пакетам быть отправленным или полученным. Эта опция используется по умолчанию, если в системе есть маршрут по умолчанию. Если ни этот параметр, ни параметр noauth не являются указано, pppd разрешит одноранговому узлу использовать IP-адреса, к которым в системе еще нет маршрута.
позвонить имя
Прочтите дополнительные параметры из файла / etc / ppp / peers / , имя .Этот файл может содержать привилегированные параметры, такие как noauth , даже если pppd не запускается от root. Строка имени не может начинаться с / или включить .. как компонент имени пути. Формат файла опций: описано ниже.
подключить скрипт
Обычно нужно что-то сделать, чтобы подготовить ссылку перед запуском протокола PPP; например, с набором номера модем, необходимо отправить команды модему для набора соответствующего телефона количество.Эта опция определяет команду для выполнения pppd (передавая его в оболочку) перед попыткой начать согласование PPP. Чат (8) здесь часто бывает полезна программа, поскольку она позволяет отправлять произвольные строки к модему и отвечать на полученные символы. Значение для этого параметр из привилегированного источника не может быть отменен непривилегированным пользователь.
crtscts
Указывает, что pppd должен установить последовательный порт для использования аппаратного потока управление с помощью сигналов RTS и CTS в интерфейсе RS-232.Если ни то, ни другое crtscts , nocrtscts , cdtrcts или nocdtrcts опция, настройка аппаратного управления потоком для последовательный порт оставлен без изменений. Некоторые последовательные порты (например, Macintosh последовательные порты) отсутствует истинный вывод RTS. Такие последовательные порты используют этот режим для реализовать однонаправленное управление потоком. Последовательный порт будет приостановлен передача по запросу модема (через CTS), но не может запросить модем прекратить отправку на компьютер.В этом режиме сохраняется возможность использовать DTR в качестве линии управления модемом.
defaultroute
Добавить маршрут по умолчанию в системные таблицы маршрутизации, используя однорангового узла в качестве шлюз, когда согласование IPCP успешно завершено. Эта запись удаляется при разрыве PPP-соединения. Эта опция является привилегированной, если указана опция nodefaultroute .
replacedefaultroute
Эта опция является флагом опции маршрута по умолчанию.Если установлен defaultroute и этот флаг также установлен, pppd заменяет существующий маршрут по умолчанию на новый маршрут по умолчанию.
отключить скрипт
Выполнить команду, указанную в сценарии , передав ее оболочке, после того, как pppd разорвал связь. Эта команда может, например, выдать команды модему, чтобы заставить его повесить трубку, если аппаратное управление модемом сигналов не было. Скрипт отключения не запускается, если модем уже повесил трубку.Значение этой опции из привилегированного источника не может быть изменен непривилегированным пользователем.
escape xx, yy, …
Указывает, что определенные символы должны быть экранированы при передаче. (независимо от того, запрашивает ли партнер их экранирование с помощью асинхронного карта управляющих символов). Экранируемые символы указываются как список шестнадцатеричных чисел, разделенных запятыми. Обратите внимание, что практически любой персонаж можно указать для опции escape , в отличие от asyncmap опция, которая позволяет указывать только управляющие символы.В символы, которые нельзя экранировать, имеют шестнадцатеричные значения 0x20 — 0x3f или 0x5e.
файл название
Прочтите параметры из файла с именем (формат описан ниже). В файл должен быть доступен для чтения пользователю, запустившему pppd.
init сценарий
Выполнить команду, указанную в сценарии , передав ее оболочке, для инициализации последовательной линии. Этот сценарий обычно использует чат (8) программа для настройки модема на включение автоответа.Значение для этого параметр из привилегированного источника не может быть отменен непривилегированным пользователь.
замок
Указывает, что pppd должен создать файл блокировки в стиле UUCP для последовательного порта. устройство, чтобы обеспечить монопольный доступ к устройству. По умолчанию pppd не создать файл блокировки.
mru n
Установите значение MRU [Максимальный блок приема] на n . Pppd спросит одноранговый узел для отправки пакетов размером не более n байт.Стоимость н должно быть от 128 до 16384; значение по умолчанию — 1500. Значение 296 работает. хорошо на очень медленных ссылках (40 байтов для заголовка TCP / IP + 256 байтов данных). Обратите внимание, что для протокола IPv6 MRU должен быть не менее 1280.
MTU n
Установите значение MTU [Maximum Transmit Unit] на n . Если только коллега запрашивает меньшее значение через согласование MRU, pppd запросит сетевой код ядра отправляет пакеты данных размером не более n байт через сетевой интерфейс PPP.Обратите внимание, что для протокола IPv6 параметр MTU должен быть не менее 1280.
пассивное
Включает «пассивную» опцию на LCP. С этой опцией pppd попытается установить соединение; если не получено ответа от peer, тогда pppd будет просто пассивно ждать действительного пакета LCP от peer вместо выхода, как это было бы без этой опции.
<локальный IP-адрес> : <удаленный IP-адрес>
Задайте IP-адреса локального и / или удаленного интерфейса.Либо один может быть опущено. IP-адреса могут быть указаны с именем хоста или в десятичном формате. точечная запись (например, 150.234.56.78). Локальный адрес по умолчанию — (первый) IP-адрес системы (если не задана опция noipdefault дано). Удаленный адрес будет получен от партнера, если не указан в любом варианте. Таким образом, в простых случаях эта опция не требуется. Если локальный и / или удаленный IP-адрес указывается с этой опцией, pppd будет не принимать другое значение от однорангового узла при согласовании IPCP, если только параметры ipcp-accept-local и / или ipcp-accept-remote : даны соответственно.
+ ipv6
Включите протоколы IPv6CP и IPv6.
IPv6 ,
Установить локальный и / или удаленный 64-битный идентификатор интерфейса. Либо один может быть опущено. Идентификатор должен быть указан в стандартной нотации ASCII Адреса IPv6 (например, :: dead: beef). Если параметр ipv6cp-use-ipaddr задан, локальный идентификатор — это локальный IPv4-адрес (см. выше).На системы, которые поддерживают уникальный постоянный идентификатор, такой как EUI-48, производный от MAC-адрес Ethernet, можно использовать параметр ipv6cp-use-persistent для замены опции ipv6 , . Иначе идентификатор рандомизирован.
активный фильтр выражение фильтра
Задает фильтр пакетов, применяемый к пакетам данных, чтобы определить, какие пакеты следует рассматривать как активность канала и, следовательно, сбрасывать бездействующий таймер или вызвать переход по ссылке в режиме набора по требованию.Этот опция полезна в сочетании с опцией idle , если есть пакеты, отправляемые или получаемые регулярно по ссылке (например, пакеты информации о маршрутизации), которые в противном случае препятствовали бы соединению когда-либо казалось бездействующим. Синтаксис выражения фильтра выглядит следующим образом: описан для tcpdump (1), за исключением неподходящих квалификаторов для связи PPP, например ether и arp , не разрешены. Обычно выражение фильтра следует заключать в одинарные кавычки, чтобы предотвращает интерпретацию пробелов в выражении оболочкой.Эта опция в настоящее время доступна только в Linux и требует, чтобы ядро было настроено для включения поддержки фильтрации PPP (CONFIG_PPP_FILTER). Обратите внимание, что можно применять разные ограничения для входящих и исходящих пакетов с использованием входящих и исходящих квалификаторов.
allow-ip адрес (а)
Разрешить одноранговым узлам использовать данный IP-адрес или подсеть без аутентификации самих себя.Параметр анализируется как для каждого элемента списка разрешенные IP-адреса в секретных файлах (см. раздел АУТЕНТИФИКАЦИЯ ниже).
номер разрешения номер
Разрешить одноранговым узлам подключаться с заданного телефонного номера. Завершающий символ `* ‘ символ будет соответствовать всем числам, начинающимся с ведущей части.
bsdcomp номер, номер
Запросить, чтобы партнер сжимал отправляемые им пакеты, используя Схема BSD-Compress с максимальным размером кода nr бит и согласен для сжатия пакетов, отправленных одноранговому узлу, с максимальным размером кода nt биты.Если nt не указан, по умолчанию используется значение, указанное для . Значения от 9 до 15 могут использоваться для и nt ; большие значения дают лучшее сжатие, но потребляют больше ядра память для словарей сжатия. В качестве альтернативы значение 0 для nr или nt отключает сжатие в соответствующем направление. Используйте nobsdcomp или bsdcomp 0 , чтобы отключить BSD-Compress целиком.
cdtrcts
Используйте нестандартное аппаратное управление потоком (например, DTR / CTS) для управления поток данных по последовательному порту. Если ни один из не отвечает , nocrtscts , cdtrcts или вариант nocdtrcts Учитывая, что настройка аппаратного управления потоком для последовательного порта оставлена без изменений. Некоторые последовательные порты (например, последовательные порты Macintosh) не имеют Выход RTS. Такие последовательные порты используют этот режим для реализации истинного двунаправленное управление потоком.Жертва заключается в том, что этот режим управления потоком не позволяет использовать DTR в качестве линии управления модемом.
межглавой интервал n
Если задана эта опция, pppd повторно вызовет p

man pppd (8): Point-to-Point Protocol Daemon

ОБЗОР

pppd [ варианты ]

ОПИСАНИЕ

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

ЧАСТО ИСПОЛЬЗУЕМЫЕ ОПЦИИ

ttyname
Используйте последовательный порт под названием ttyname для связи с сверстник.Если ttyname не начинается с косой черты (/), строка «/ dev /» добавляется к ttyname для формирования имя открываемого устройства. Если имя устройства не указано или название терминала подключен к стандартному входу, pppd будет использовать этот терминал, и не будет развиваться, чтобы перейти в фоновый режим. Значение для этого параметр из привилегированного источника не может быть отменен непривилегированный пользователь.
скорость
Параметр, представляющий собой десятичное число, принимается в качестве желаемой скорости передачи данных. для последовательного устройства.В таких системах, как 4.4BSD и NetBSD, скорость может быть любая. Другие системы (например, Linux, SunOS) поддерживают только обычно используемые скорости передачи данных.
asyncmap карта
Эта опция устанавливает Async-Control-Character-Map (ACCM) для этой цели. ссылки. ACCM — это набор из 32 бит, по одному для каждого из Управляющие символы ASCII со значениями от 0 до 31, где 1 бит указывает, что соответствующий управляющий символ не должен использоваться в пакетах PPP, отправленных в эту систему.Карта закодирована как шестнадцатеричное число (без начального 0x), где наименее значимое бит (00000001) представляет символ 0 и самый старший бит (80000000) представляет собой символ 31. Pppd попросит одноранговый узел отправить эти символы в виде 2-байтового escape-последовательность. Если указано несколько параметров asyncmap , значения объединяются по ИЛИ все вместе. Если параметр asyncmap не задан, значение по умолчанию равно нулю, поэтому pppd попросит партнера не экранировать управляющие символы. Чтобы избежать передаваемых символов, используйте опцию escape .
аутентификация
Требовать от однорангового узла аутентифицировать себя перед тем, как разрешить сеть пакеты для отправки или получения. Эта опция используется по умолчанию, если система имеет маршрут по умолчанию. Если ни этот вариант, ни noauth опция указана, pppd разрешит использовать только одноранговому узлу IP-адреса, к которым у системы еще нет маршрута.
позвонить имя
Прочтите дополнительные параметры в файле / etc / ppp / peers / name .Этот файл может содержать привилегированные параметры, такие как noauth , даже если pppd не запускается от root. Строка имени не может начинаться с / или включить .. как компонент имени пути. Формат файла опций описан ниже.
подключить скрипт
Обычно нужно что-то сделать, чтобы подготовить ссылку. перед запуском протокола PPP; например, с набором номера модему, необходимо отправить команды модему для набора соответствующего телефонный номер.Эта опция определяет команду для выполнения pppd (передав его в оболочку) перед попыткой начать согласование PPP. Здесь часто бывает полезна программа chat (8), поскольку она дает возможность отправлять модему произвольные строки и отвечать на полученные символы. Ценность для этой опции из привилегированного источника нельзя переопределить непривилегированный пользователь.
crtscts
Указывает, что pppd должен установить последовательный порт для использования аппаратного потока управление с помощью сигналов RTS и CTS в интерфейсе RS-232.Если ни один из не отвечает , nocrtscts , cdtrcts или вариант nocdtrcts задано, настройка аппаратного управления потоком для последовательного порта оставлен без изменений. Некоторые последовательные порты (например, последовательные порты Macintosh) не имеют Выход RTS. Такие последовательные порты используют этот режим для реализации однонаправленное управление потоком. Последовательный порт будет приостановить передачу по запросу модема (через CTS) но не сможет запросить модем прекратить отправку на компьютер.В этом режиме сохраняется возможность использования DTR как линия управления модемом.
defaultroute
Добавьте маршрут по умолчанию в системные таблицы маршрутизации, используя однорангового узла как шлюз, когда согласование IPCP успешно завершено. Эта запись удаляется при разрыве PPP-соединения. Этот вариант является привилегированным, если была указана опция nodefaultroute .
replacedefaultroute
Эта опция является флагом опции defaultroute.Если defaultroute установлен и этот флаг также установлен, pppd заменяет существующий маршрут по умолчанию с новым маршрутом по умолчанию.
отключить скрипт
Выполните команду, указанную в сценарии , передав ее в оболочка, после pppd прервал связь. Эта команда может, например, выдать команды модему, чтобы заставить его повесить трубку, если аппаратное управление модемом сигналов не было. Сценарий отключения не запускается, если модем уже повесил трубку.Значение этой опции от привилегированного источник не может быть изменен непривилегированным пользователем.
escape xx, yy, …
Указывает, что определенные символы следует экранировать при передаче (независимо от того, запрашивает ли партнер их экранирование с помощью карта символов управления async). Экранируемые символы: заданный как список шестнадцатеричных чисел, разделенных запятыми. Обратите внимание, что для опции escape можно указать почти любой символ, в отличие от опции asyncmap , которая допускает только управляющие символы подлежит уточнению.Символы, которые нельзя экранировать, — это те с шестнадцатеричными значениями 0x20 — 0x3f или 0x5e.
файл название
Прочтите параметры из файла с именем (формат описан ниже). Файл должен быть доступен для чтения пользователю, запустившему pppd.
init скрипт
Выполните команду, указанную в сценарии , передав ее оболочке, чтобы инициализировать последовательную линию. Этот сценарий обычно использует chat (8) программа для настройки модема на автоматический ответ.Ценность для этой опции из привилегированного источника нельзя переопределить непривилегированный пользователь.
замок
Указывает, что pppd должен создать файл блокировки в стиле UUCP для последовательное устройство для обеспечения монопольного доступа к устройству. По умолчанию, pppd не будет создавать файл блокировки.
mru n
Установите значение MRU [Максимальный блок приема] на n . Pppd запросит у однорангового узла пакеты размером не более n байтов.Значение n должно быть от 128 до 16384; по умолчанию 1500. Ценность 296 хорошо работает на очень медленных каналах (40 байт для заголовка TCP / IP + 256 байтов данных). Обратите внимание, что для протокола IPv6 MRU должен быть не менее 1280.
MTU n
Установите значение MTU [Maximum Transmit Unit] на n . Если только одноранговый узел запрашивает меньшее значение через согласование MRU, pppd будет запросить, чтобы сетевой код ядра отправлял пакеты данных не более чем n байта через сетевой интерфейс PPP.Обратите внимание, что для протокол IPv6, MTU должен быть не менее 1280.
пассивное
Включает «пассивную» опцию на LCP. С этой опцией pppd будет попытаться установить соединение; если не получено ответа от peer, тогда pppd будет просто пассивно ждать действительного пакета LCP от узел вместо выхода, как это было бы без этой опции.

ОПЦИИ

<локальный IP-адрес> : <удаленный IP-адрес>
Задайте IP-адреса локального и / или удаленного интерфейса.Либо один может быть опущено. IP-адреса могут быть указаны с именем хоста или в десятичная точка (например, 150.234.56.78). Локальный по умолчанию адрес — (первый) IP-адрес системы (если только noipdefault вариант дан). Удаленный адрес будет получен от однорангового узла. если не указано ни в одном из вариантов. Таким образом, в простых случаях этот вариант не требуется. Если локальный и / или удаленный IP-адрес указан с эта опция, pppd не будет принимать другое значение от однорангового узла в IPCP согласование, если ipcp-accept-local и / или ipcp-accept-remote опции соответственно.
+ ipv6
Включите протоколы IPv6CP и IPv6.
ipv6 ,
Установите локальный и / или удаленный 64-битный идентификатор интерфейса. Либо один может быть опущено. Идентификатор должен быть указан в стандартной нотации ASCII Адреса IPv6 (например, :: dead: beef). Если ipv6cp-use-ipaddr задана опция, локальным идентификатором является локальный IPv4-адрес (см. выше).В системах, которые поддерживают уникальный постоянный идентификатор, например, производный от EUI-48 с MAC-адреса Ethernet можно настроить параметр ipv6cp-use-persistent . используется для замены опции ipv6 , . В противном случае идентификатор рандомизирован.
активный фильтр фильтр-выражение
Задает фильтр пакетов, который будет применяться к пакетам данных для определения какие пакеты следует рассматривать как активность канала и, следовательно, сбрасывать таймер простоя, или вызвать переход по ссылке при вызове по требованию Режим.Эта опция полезна в сочетании с idle вариант, если есть отправленные или полученные пакеты регулярно по ссылке (например, пакеты маршрутной информации) что в противном случае предотвратило бы появление ссылки неактивной. Синтаксис выражения фильтра такой же, как описано для tcpdump (1), кроме квалификаторов, которые не подходят для связи PPP, например ether и arp не допускаются. Обычно фильтр выражение должно быть заключено в одинарные кавычки, чтобы не было пробелов в выражении, которое интерпретируется оболочкой.Этот вариант в настоящее время доступен только в Linux и требует, чтобы ядро был настроен для включения поддержки фильтрации PPP (CONFIG_PPP_FILTER). Обратите внимание, что это можно применять разные ограничения для входящих и исходящих пакеты с использованием квалификаторов входящего и исходящего .
allow-ip адрес (а)
Разрешить одноранговым узлам использовать данный IP-адрес или подсеть без аутентифицируя себя. Параметр анализируется как для каждого элемент списка разрешенных IP-адресов в файлах секретов (см. раздел АУТЕНТИФИКАЦИЯ ниже).
номер разрешения номер
Разрешить одноранговым узлам подключаться с заданного телефонного номера. Конечный Символ «*» соответствует всем числам, начинающимся с ведущей части.
bsdcomp номер, номер
Запросить у партнера сжатие пакетов, которые он отправляет, используя Схема BSD-Compress с максимальным размером кода nr бит, и согласны сжимать пакеты, отправленные одноранговому узлу, с максимальным размером кода nt бит.Если nt не указан, по умолчанию используется значение отдано за . Значения от 9 до 15 могут использоваться для и ; большие значения дают лучшее сжатие, но потребляют больше памяти ядра для словарей сжатия. Либо значение 0 для nr или nt отключает сжатие в соответствующем направлении. Используйте nobsdcomp или bsdcomp 0 , чтобы полностью отключить сжатие BSD-Compress.
cdtrcts
Используйте нестандартное аппаратное управление потоком (т.е.е. DTR / CTS) для управления поток данных по последовательному порту. Если ни один из crtscts , nocrtscts , cdtrcts или nocdtrcts опция, настройка аппаратного управления потоком для последовательного порт оставлен без изменений. Некоторые последовательные порты (например, последовательные порты Macintosh) не имеют Выход RTS. Такие последовательные порты используют этот режим для реализации истинного двунаправленное управление потоком. Жертва в том, что этот поток режим управления не позволяет использовать DTR в качестве линии управления модемом.
межглавой интервал n
Если указана эта опция, pppd будет повторно вызывать однорангового узла каждые n секунд.
chap-max-challenge n
Установите максимальное количество передач запроса CHAP на n (по умолчанию 10).
chap-restart n
Установите интервал перезапуска CHAP (таймаут повторной передачи для проблем) до n секунды (по умолчанию 3).
дочерний тайм-аут n
При выходе подождите до n секунд для любых дочерних процессов. (например, команда, указанная с помощью команды pty ) для выхода перед выходом. По окончании тайм-аута pppd отправит SIGTERM сигнализировать всем оставшимся дочерним процессам и завершить работу. Значение 0 означает нет тайм-аута, то есть pppd будет ждать, пока все дочерние процессы вышел.
задержка подключения n
Подождите до n миллисекунд после завершения сценария подключения в течение действительный пакет PPP от однорангового узла.По истечении этого времени или когда действительный пакет PPP получен от однорангового узла, запускается pppd согласование путем отправки первого пакета LCP. Значение по умолчанию — 1000 (1 секунда). Этот период ожидания применяется, только если подключается к или используется опция pty .
отладка
Включает средства отладки соединения. Если задана эта опция, pppd будет регистрировать содержимое всех отправленные или полученные контрольные пакеты в удобочитаемой форме. Пакеты зарегистрирован через системный журнал с помощью объекта , демона и уровня отладка .Эту информацию можно направить в файл, настроив /etc/syslog.conf соответственно (см. syslog.conf (5)).
default-asyncmap
Отключить согласование asyncmap, заставив все управляющие символы быть ускользнул как для направления передачи, так и для направления приема.
default-mru
Отключите согласование MRU [Maximum Receive Unit]. С этой опцией pppd будет использовать значение MRU по умолчанию 1500 байт для обоих направление передачи и приема.
спустить nr, nt
Запросить у партнера сжатие пакетов, которые он отправляет, используя Схема Deflate с максимальным размером окна 2 ** nr байта и согласны сжимать пакеты, отправленные одноранговому узлу, с максимальным размером окна из 2 ** nt байт. Если nt не указан, по умолчанию используется значение дано для . Могут использоваться значения от 9 до 15. для и ; большие значения дают лучшее сжатие, но потребляют больше памяти ядра для словарей сжатия.Либо значение 0 для nr или nt отключает сжатие в соответствующем направлении. Используйте nodeflate или deflate 0 , чтобы полностью отключить сжатие Deflate. (Примечание: pppd запрашивает сжатие Deflate вместо BSD-Compress, если одноранговый узел могу сделать то же самое.)
спрос
Инициируйте ссылку только по запросу, то есть при наличии трафика данных. С помощью этой опции удаленный IP-адрес может быть указан пользователем. в командной строке или в файле опций, а если нет, pppd будет использовать произвольный адрес в 10.x.x.x диапазон. Первоначально pppd будет настроить интерфейс и включить его для IP-трафика без подключение к партнеру. Когда трафик доступен, pppd будет подключиться к одноранговому узлу и выполнить согласование, аутентификацию и т. д. Когда это будет завершено, pppd начнет передавать пакеты данных. (т.е. IP-пакеты) по ссылке.

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

домен d
Добавьте доменное имя d к имени локального хоста для аутентификации целей. Например, если gethostname () возвращает имя porsche, но полное доменное имя — porsche.Quotron.COM, вы можете укажите домен Quotron.COM . Тогда pppd будет использовать имя порше.Quotron.COM для поиска секретов в секретном файле, и как имя по умолчанию для отправки партнеру при аутентификации сверстнику. Это привилегированный вариант.
сухой прогон
С опцией dryrun pppd распечатает все опции значения, которые были установлены, а затем выйти после разбора команды строки и файлы опций и проверка значений опций, но перед инициируя ссылку. Значения опций регистрируются на уровне информации, и также распечатывается на стандартный вывод, если устройство не на стандартном выводе это устройство, которое pppd будет использовать для связи с партнером.
отвал
С опцией dump pppd распечатает все значения опций которые были установлены. Этот вариант аналогичен варианту dryrun . за исключением того, что pppd работает как обычно, а не завершается.
включить сеанс
Включает учет сеанса через PAM или wtwp / wtmpx, в зависимости от ситуации. Когда PAM включен, модули PAM «учетная запись» и «сеанс» складываются. определить поведение и включены для всех аутентификаций PPP протоколы.Когда PAM отключен, записи wtmp / wtmpx записываются независимо от того, идентифицирует ли одноранговое имя действительного пользователя на локальная система, делая пиров видимыми в последнем (1) журнале. Эта особенность автоматически включается при использовании опции для входа в pppd . Учет сеансов по умолчанию отключен.
конечная точка
Устанавливает дискриминатор конечной точки, отправляемый локальной машиной партнеру во время согласования многоканальности на .По умолчанию используется MAC-адрес первого интерфейса Ethernet в системе, если таковой имеется, в противном случае адрес IPv4, соответствующий имени хоста, если есть, при условии, что он не находится в многоадресном или локально назначенном IP-адресе диапазоны или адрес localhost. Дискриминатор конечной точки может быть строка null или форма тип : значение , где тип — десятичное число или одна из строк локальный , IP , MAC , magic или телефон .Значение — IP-адрес в десятичное представление с разделительными точками для типа IP или строка байтов в шестнадцатеричный, разделенный точками или двоеточиями для остальных типов. За тип MAC, значение также может быть именем Ethernet или аналогичным сетевой интерфейс. Эта опция в настоящее время доступна только в Linux.
интервал EAP n
Если задана эта опция и pppd аутентифицирует однорангового узла с помощью EAP (т.е. это сервер), pppd будет перезапускать аутентификацию EAP каждые n секунды.Для EAP SRP-SHA1 см. Также srp-interval вариант, который позволяет облегчить повторное испытание.
eap-max-rreq n
Установите максимальное количество запросов EAP, на которые будет отвечать pppd (как клиент), не услышав об успехе или неудаче EAP. (По умолчанию 20.)
eap-max-sreq n
Установите максимальное количество запросов EAP, которые будет выдавать pppd (как server) при попытке аутентификации. (По умолчанию 10.)
eap-restart n
Установите время ожидания повторной передачи для запросов EAP при работе в качестве сервера (аутентификатор). (По умолчанию 3 секунды.)
тайм-аут eap n
Установите максимальное время ожидания, пока одноранговый узел отправит запрос EAP, когда выступая в качестве клиента (аутентифицируемого). (По умолчанию 20 секунд.)
скрыть пароль
При регистрации содержимого пакетов PAP эта опция заставляет pppd исключить строку пароля из журнала.Это значение по умолчанию.
задержка n
Указывает, сколько секунд ждать перед повторной инициализацией ссылки после он прекращается. Этот параметр имеет эффект, только если сохраняется или спрос опция. Период задержки не применяется, если ссылка была прервана из-за бездействия.
холостой ход n
Указывает, что pppd должен отключиться, если канал неактивен для n секунд.Канал неактивен, когда нет пакетов данных (например, IP-пакетов). отправляются или принимаются. Примечание: не рекомендуется использовать эту опцию с опцией persist без опции Demist . Если активный фильтр дается опция, пакеты данных, которые отклоняются указанным фильтр активности также считается неактивной ссылкой.
ipcp-accept-local
С этой опцией pppd примет идею партнера о нашем локальном IP. адрес, даже если локальный IP-адрес был указан в опции.
ipcp-accept-удаленный
С этой опцией pppd примет идею партнера о его (удаленном) IP. адрес, даже если удаленный IP-адрес был указан в опции.
ipcp-max-configure n
Установите максимальное количество передач запроса конфигурации IPCP на n (по умолчанию 10).
ipcp-max-failure n
Установите максимальное количество IPCP configure-NAK, возвращаемых перед запуском вместо этого отправить configure-Rejects на номер n (по умолчанию 10).
ipcp-max-terminate n
Установите максимальное количество передач IPCP terminate-request равным n (по умолчанию 3).
ipcp-restart n
Установите интервал перезапуска IPCP (тайм-аут повторной передачи) на n секунд (по умолчанию 3).
ipparam строка
Предоставляет дополнительный параметр для ip-up, ip-pre-up и ip-down скрипты. Если это вариант, строка задается как 6-я параметр для этих скриптов.
ipv6cp-accept-local
С этой опцией pppd примет идею партнера о нашем локальном IPv6. идентификатор интерфейса, даже если идентификатор локального интерфейса IPv6 было указано в опции.
ipv6cp-accept-удаленный
С этой опцией pppd примет идею партнера о своем (удаленном) Идентификатор интерфейса IPv6, даже если удаленный интерфейс IPv6 идентификатор был указан в опции.
ipv6cp-max-configure n
Установите максимальное количество передач запроса конфигурации IPv6CP на n (по умолчанию 10).
ipv6cp-max-failure n
Установите максимальное количество ответов IPv6CP configure-NAK, возвращаемых перед запуском. вместо этого отправить configure-Rejects на номер n (по умолчанию 10).
ipv6cp-max-terminate n
Установите максимальное количество передач IPv6CP terminate-request равным n (по умолчанию 3).
ipv6cp-restart n
Установите интервал перезапуска IPv6CP (тайм-аут повторной передачи) на n секунд (по умолчанию 3).
IPX
Включите протоколы IPXCP и IPX. Эта опция пока только поддерживается в Linux, и только если ваше ядро ​​настроено на включить поддержку IPX.
ipx-сеть n
Установите для сетевого номера IPX в кадре запроса настройки IPXCP значение n , шестнадцатеричное число (без начального 0x). Здесь нет допустимое значение по умолчанию. Если этот параметр не указан, номер сети полученный от партнера.Если у однорангового узла нет номера сети, протокол IPX не запускается.
ipx-узел n : m
Установите номера узлов IPX. Два номера узла отделены от каждого другие с двоеточием. Первый номер n — местный номер узла. Второе число м — это номер узла партнера. Каждый номер узла — шестнадцатеричное число, не более 10 цифр. Узел номера в ipx-сети должны быть уникальными.Нет действительного по умолчанию. Если эта опция не указана, то номера узлов полученный от партнера.
ipx-имя-маршрутизатора <строка>
Задайте имя роутера. Это строка, которая отправляется партнеру как информационные данные.
ipx-маршрутизация n
Установите протокол маршрутизации, который будет приниматься этой опцией. Больше, чем один может быть указан экземпляр ipx-routing . ‘ нет ‘ option (0) может быть указан как единственный экземпляр ipx-routing.В значения могут быть 0 для НЕТ , 2 для RIP / SAP и 4 для NLSP .
ipxcp-accept-local
Принять NAK однорангового узла для номера узла, указанного в ipx-node вариант. Если номер узла был указан и не равен нулю, по умолчанию используется настаивать на использовании значения. Если вы включите эту опцию, вы позволит одноранговому узлу переопределить ввод номера узла.
ipxcp-accept-сеть
Примите NAK однорангового узла для сетевого номера, указанного в ipx-сетевой вариант.Если номер сети был указан и отличен от нуля, по умолчанию настаивает на использовании значения. Если вы включите это вариант, то вы разрешите одноранговому узлу переопределить запись узла количество.
ipxcp-accept-удаленный
Использовать сетевой номер однорангового узла, указанный в запросе конфигурации Рамка. Если для однорангового узла был указан номер узла и эта опция была не указано, партнер будет вынужден использовать значение, которое у вас есть указано.
ipxcp-max-configure n
Установите максимальное количество кадров запроса настройки IPXCP, которые система отправит на номер n .По умолчанию — 10.
ipxcp-max-failure n
Установите максимальное количество кадров IPXCP NAK, которое локальная система будет отправить до того, как отклонит варианты. Значение по умолчанию — 3.
ipxcp-max-terminate n
Установите максимальное количество кадров запроса завершения IPXCP перед локальная система считает, что партнер их не слушает. В значение по умолчанию — 3.
kdebug n
Включите отладочный код в драйвере PPP на уровне ядра.Аргумент значения зависят от конкретного драйвера ядра, но в целом значение 1 включит общие сообщения отладки ядра. (Обратите внимание, что эти сообщения обычно полезны только для отладки драйвера ядра сам.) Для драйвера ядра Linux 2.2.x это значение представляет собой сумму биты: от 1 до включить общие отладочные сообщения, 2, чтобы запросить содержимое полученные пакеты должны быть распечатаны, а 4 — для запроса содержимого передаваемые пакеты должны быть распечатаны. В большинстве систем сообщения, напечатанные ядро записывается syslog (1) в файл, как указано в / etc / syslog.conf файл конфигурации.
ктунэ
Позволяет pppd соответствующим образом изменять настройки ядра. Под Linux pppd включит переадресацию IP (например, установите / proc / sys / net / ipv4 / ip_forward значение 1), если используется опция proxyarp , и включит параметр динамического IP-адреса (т.е. установите / proc / sys / net / ipv4 / ip_dynaddr на 1) в режиме запроса при изменении локального адреса.
lcp-эхо-адаптивный
Если этот параметр используется с параметром lcp-echo-failure , тогда pppd будет отправлять кадры эхо-запроса LCP, только если трафик не был получен от партнера с момента отправки последнего эхо-запроса.
lcp-echo-failure n
Если задана эта опция, pppd будет считать, что партнер мертв если n эхо-запросы LCP отправляются без получения действительного LCP эхо-ответ. Если это произойдет, pppd завершит подключение. Использование этой опции требует ненулевого значения для lcp-echo-interval параметр. Этот параметр можно использовать для включения pppd для завершения после разрыва физического соединения (например, модем завис) в ситуациях, когда нет аппаратного модема линии управления доступны.
lcp-echo-interval n
Если задана эта опция, pppd отправит кадр эхо-запроса LCP на адрес одноранговый узел каждые n секунд. Обычно партнер должен отвечать на эхо-запрос, отправив эхо-ответ. Этот вариант можно использовать с опцией lcp-echo-failure , чтобы определить, что одноранговый узел не больше подключен.
lcp-max-configure n
Установите максимальное количество передач LCP-запроса конфигурации на n (по умолчанию 10).
lcp-max-failure n
Установите максимальное количество LCP configure-NAK, возвращаемых перед запуском вместо этого отправить configure-Rejects на номер n (по умолчанию 10).
lcp-max-terminate n
Установите максимальное количество передач LCP terminate-request на n (по умолчанию 3).
lcp-restart n
Установите интервал перезапуска LCP (тайм-аут повторной передачи) на n секунд (по умолчанию 3).
имя ссылки имя
Устанавливает логическое имя ссылки имя . Pppd создаст файл с именем ppp- имя .pid в / var / run (или / etc / ppp на некоторых systems), содержащий его идентификатор процесса. Это может быть полезно при определении какой экземпляр pppd отвечает за ссылку на данный узел система. Это привилегированный вариант.
местный
Не используйте линии управления модемом.С этой опцией pppd проигнорирует состояние сигнала CD (Carrier Detect) от модема и будет не изменять состояние сигнала DTR (Data Terminal Ready). Это противоположность модема вариант .
logfd n
Отправить сообщения журнала в файловый дескриптор n . Pppd отправит журнал сообщения не более чем одному файлу или файловому дескриптору (а также отправка сообщения журнала в системный журнал), поэтому этот параметр и файл журнала вариант являются взаимоисключающими.По умолчанию pppd отправляет журнал сообщения на стандартный вывод (дескриптор файла 1), если только последовательный порт не уже открыт на stdout.
файл журнала имя файла
Добавить сообщения журнала в файл имя файла (а также отправить записывать сообщения в системный журнал). Файл открыт с привилегиями пользователь, вызвавший pppd, в режиме добавления.
логин
Используйте базу данных системных паролей для аутентификации однорангового узла с помощью PAP и запишите пользователя в системный файл wtmp.Обратите внимание, что партнер должна иметь запись в файле / etc / ppp / pap-secrets, а также база данных системных паролей, чтобы разрешить доступ. См. Также опция enable-session .
master_detach
Если многоканальный режим включен и этот процесс pppd является многоканальным пакетом master, и ссылка, управляемая этим процессом pppd, завершается, это Процесс pppd продолжает работать, чтобы поддерживать пакет. Если задана опция master_detach , pppd отсоединится от своего управляющий терминал в этой ситуации, даже если узел был предоставлен вариант.
maxconnect n
Завершите соединение, когда оно станет доступным для сети трафика в течение n секунд (т.е. n секунд после первого протокол управления сетью).
maxfail n
Завершить после n последовательных неудачных попыток подключения. А значение 0 означает отсутствие ограничений. Значение по умолчанию — 10.
модем
Используйте линии управления модемом.Этот вариант установлен по умолчанию. С этим опция, pppd будет ждать сигнала CD (Carrier Detect) от модем должен быть подтвержден при открытии последовательного устройства (если указан скрипт), и он сбросит DTR (Data Terminal Ready) сигнализировать кратко, когда соединение разорвано и перед выполнением скрипт подключения. На Ultrix эта опция подразумевает аппаратный поток control, как для опции crtscts . Это противоположность местный вариант .
МП
Позволяет использовать многоканальный протокол PPP; это псевдоним для «многоканального» вариант.Эта опция в настоящее время доступна только в Linux.
mppe-состояние
Разрешить MPPE использовать режим с отслеживанием состояния. Режим без сохранения состояния все еще выполняется первым. По умолчанию режим с отслеживанием состояния запрещен.
mpshortseq
Позволяет использовать короткие (12-битные) порядковые номера в многоканальном режиме. заголовки, в отличие от 24-битных порядковых номеров. Этот вариант только доступен под Linux, и имеет какое-либо действие только в том случае, если многоканальный включен (см. параметр многоканальности).
mrru n
Устанавливает для параметра Maximum Reconstructed Receive Unit значение n . MRRU — это максимальный размер принятого пакета в многоканальном пакете, и составляет аналог MRU для отдельных ссылок. Этот вариант в настоящее время доступно только в Linux и имеет эффект, только если включен многоканальный режим (см. параметр многоканальности).
ms-dns
Если pppd действует как сервер для клиентов Microsoft Windows, это опция позволяет pppd предоставлять один или два DNS (сервер доменных имен) обращается к своим клиентам.Первый экземпляр этой опции указывает первичный адрес DNS; второй экземпляр (если он указан) указывает вторичный DNS-адрес. (Эта опция присутствовала в некоторых более старых версии pppd под именем dns-addr .)
ms-wins
Если pppd действует как сервер для Microsoft Windows или «Samba» клиентов, эта опция позволяет pppd предоставлять один или два WINS (Windows Internet Name Services) обращается к клиентам.Первый экземпляр этой опции указывает основной адрес WINS; секунда instance (если указан) указывает вторичный адрес WINS.
многоканальный
Позволяет использовать многоканальный протокол PPP. Если партнер также поддерживает многоканальность, тогда эта ссылка может стать частью связки между локальная система и партнер. Если есть существующий пакет для peer, pppd присоединится к этой ссылке с этим пакетом, иначе pppd будет создать новый пакет. См. Раздел MULTILINK ниже.Этот вариант в настоящее время доступно только под Linux.
наименование наименование
Задайте имя локальной системы для аутентификации на название . Это привилегированный вариант. С этой опцией pppd будет используйте строки в файлах секретов, которые имеют имя в качестве второго поле при поиске секрета для использования при аутентификации партнера. В кроме того, если не переопределено параметром пользователь , имя будет использоваться как имя для отправки одноранговому узлу при аутентификации локальная система к партнеру.(Обратите внимание, что pppd не добавляет домен имя имя .)
без сопровождения
Отключите сжатие адреса / управления в обоих направлениях (отправка и Получать).
noauth
Не требовать от партнера аутентифицироваться. Этот вариант привилегированный.
nobsdcomp
Отключает сжатие BSD-Compress; pppd не будет запрашивать или соглашайтесь сжимать пакеты, используя схему BSD-Compress.
noccp
Отключите согласование CCP (протокол управления сжатием). Этот вариант должен требоваться только в том случае, если партнер глючит и сбивает с толку запросы от pppd для согласования CCP.
Отключите аппаратное управление потоком (например, RTS / CTS) на последовательном порту. Если ни crtscts , ни nocrtscts , ни cdtrcts или опция nocdtrcts не указаны, аппаратное обеспечение Настройка управления потоком для последовательного порта оставлена ​​без изменений.
nocdtrcts
Эта опция является синонимом nocrtscts . Любой из этих вариантов отключить обе формы аппаратного управления потоком.
nodefaultroute
Отключите параметр defaultroute . Системный администратор, который хочет запретить пользователям добавлять маршрут по умолчанию с помощью pppd можно сделать это, поместив эту опцию в файл / etc / ppp / options.
noreplacedefaultroute
Отключите параметр replacedefaultroute .Системный администратор, который хочет запретить пользователям заменять маршрут по умолчанию на pppd можно сделать это, поместив эту опцию в файл / etc / ppp / options.
nodeflate
Отключает сжатие Deflate; pppd не будет запрашивать или соглашаться на сжимать пакеты с использованием схемы Deflate.
узлов
Не отключайтесь от управляющего терминала. Без этой опции, если последовательное устройство, отличное от терминала на стандартном входе указано, pppd будет разветвлен, чтобы стать фоновым процессом.
без конечной точки
Запрещает pppd отправлять дискриминатор конечной точки партнеру или принятие одного из партнеров (см. раздел MULTILINK ниже). Этот опция должна требоваться только в том случае, если одноранговый узел ошибается.
номер
Отключите согласование IPCP и IP-связь. Этот вариант должен требуется только в том случае, если одноранговый узел глючит и запутывается запросами из pppd для согласования IPCP.
noipv6
Отключите согласование IPv6CP и связь IPv6.Этот вариант должен требуется только в том случае, если одноранговый узел глючит и запутывается запросами из pppd для согласования IPv6CP.
noipdefault
Отключает поведение по умолчанию, когда не указан локальный IP-адрес, который должен определить (если возможно) локальный IP-адрес из имя хоста. С этой опцией одноранговый узел должен будет предоставить локальный IP-адрес. адрес во время согласования IPCP (если он явно не указан в в командной строке или в файле параметров).
noipx
Отключите протоколы IPXCP и IPX.Этот вариант должен быть только требуется, если партнер глючит и запутывается запросами от pppd для согласования IPXCP.
ноктунэ
Противоположно варианту ktune ; отключает pppd от изменения системы настройки.
нолок
Напротив замка вариант ; указывает, что pppd не должен создайте файл блокировки в стиле UUCP для последовательного устройства. Этот вариант привилегированный.
лог
Не отправляйте сообщения журнала в файл или файловый дескриптор.Этот вариант отменяет параметры logfd и logfile .
кочевой
Отключить согласование магического числа. С этой опцией pppd не может обнаружение обратной линии. Эта опция нужна только в том случае, если одноранговый узел глючит.
NOMP
Отключает использование многоканального PPP. Эта опция пока только доступно под Linux.
nomppe
Отключает MPPE (Microsoft Point to Point Encryption).Это значение по умолчанию.
НОМПП-40
Отключите 40-битное шифрование с помощью MPPE.
NOMPPE-128
Отключите 128-битное шифрование с помощью MPPE.
Nomppe-Stateful
Отключите режим MPPE с отслеживанием состояния. Это значение по умолчанию.
Nompshortseq
Отключает использование коротких (12-битных) порядковых номеров в PPP многоканальный протокол, требующий использования 24-битных порядковых номеров. Этот опция в настоящее время доступна только в Linux и имеет только любые эффект, если включен многоканальный режим.
Nomultilink
Отключает использование многоканального PPP. Эта опция пока только доступно под Linux.
nopcomp
Отключить согласование сжатия поля протокола как в приеме, так и в направление передачи.
ноперсист
Выйти после того, как соединение будет установлено и разорвано. Это по умолчанию, если не сохраняется. или требование. Опция . указано.
nopredictor1
Не принимайте и не соглашайтесь на сжатие Predictor-1.
noproxyarp
Отключите опцию proxyarp . Системный администратор, который хочет запретить пользователям создавать записи ARP прокси с помощью pppd может сделайте это, поместив эту опцию в файл / etc / ppp / options.
noremoteip
Разрешить pppd работать без IP-адреса однорангового узла. Этот опция доступна только в Linux.Обычно pppd запрашивает IP-адрес однорангового узла, и если узел не предоставит его, pppd будет использовать произвольный адрес в подсети 10.x.x.x. С этой опцией, если партнер не предоставит свой IP-адрес, pppd не будет запрашивать его у партнера и будет не устанавливать адрес назначения интерфейса ppp. В этом В этой ситуации интерфейс ppp можно использовать для маршрутизации, создав маршруты устройства, но сам одноранговый узел не может быть адресован напрямую по IP движение.
нот
Обычно pppd требует оконечного устройства.С этой опцией pppd выделит себе пару псевдо-tty master / slave и будет использовать slave как его оконечное устройство. Pppd создаст дочерний процесс, который будет действовать как «символьный шунт» для передачи символов между мастером псевдо-tty и его стандартный ввод и вывод. Таким образом pppd будет передавать символы на стандартный вывод и получать символы на стандартный ввод даже если они не являются оконечными устройствами. Эта опция увеличивает задержка и накладные расходы ЦП при передаче данных через интерфейс ppp поскольку все отправленные и полученные символы должны проходить через характер шунтирующего процесса.Явное имя устройства не может быть указано, если эта опция используется.
ноя
Отключите сжатие заголовков TCP / IP в стиле Ван Якобсона в обоих направление передачи и приема.
novjccomp
Отключить параметр сжатия идентификатора соединения в стиле Ван Якобсона Сжатие заголовка TCP / IP. С этой опцией pppd не пропустит байт идентификатора соединения из сжатых Ван Якобсоном заголовков TCP / IP, ни попросите коллегу сделать это.
papcrypt
Указывает, что все секреты в файле / etc / ppp / pap-secrets, которые используются для проверки личности однорангового узла, зашифрованы, и поэтому pppd не должен принимать пароль, который перед шифрованием идентичен секрету из файла / etc / ppp / pap-secrets.
pap-max-authreq n
Установите максимальное количество передач запроса аутентификации PAP равным n (по умолчанию 10).
pap-restart n
Установите интервал перезапуска PAP (тайм-аут повторной передачи) n секунд (по умолчанию 3).
тайм-аут pap n
Установите максимальное время, в течение которого pppd будет ждать аутентификации партнера сам с PAP до n секунд (0 означает без ограничения).
проходной фильтр фильтр-выражение
Задает фильтр пакетов, применяемый к отправляемым пакетам данных или полученный, чтобы определить, какие пакеты должны быть разрешены. Пакеты, отклоненные фильтром, игнорируются. Этот опция может использоваться для предотвращения определенных сетевых демонов (таких как маршрутизируется) с использованием полосы пропускания восходящего канала, или для обеспечения самого простого межсетевого экрана возможности. Синтаксис выражения фильтра такой же, как описано для tcpdump (1), кроме квалификаторов, которые не подходят для связи PPP, например ether и arp не допускаются.Обычно фильтр выражение должно быть заключено в одинарные кавычки, чтобы не было пробелов в выражении, которое интерпретируется оболочкой. Обратите внимание, что это можно применять разные ограничения для входящих и исходящих пакеты с использованием квалификаторов входящего и исходящего . Этот опция в настоящее время доступна только в Linux и требует, чтобы ядро было настроено для включения поддержки фильтрации PPP (CONFIG_PPP_FILTER).
пароль строка пароля
Задает пароль, который будет использоваться для аутентификации однорангового узла.Использовать этого варианта не рекомендуется, так как пароль, вероятно, будет виден другим пользователям системы (например, с помощью ps (1)).
сохранить
Не выходить после разрыва соединения; вместо этого попробуйте снова открыть связь. Параметр maxfail по-прежнему влияет на постоянные связи.
плагин имя файла
Загрузите объектный файл общей библиотеки filename в качестве подключаемого модуля. Этот это привилегированный вариант.Если имя файла не содержит косой черты (/), pppd будет искать в каталоге / usr / lib / pppd / версии для плагина, где версия — это номер версии pppd (например, 2.4.2).
предсказатель1
Запросить у партнера сжатие кадров, которые он отправляет с помощью Predictor-1 сжатие и соглашаются сжимать передаваемые кадры с помощью Predictor-1 если требуется. Этот параметр не действует, если драйвер ядра поддерживает сжатие Predictor-1.
Privgroup имя группы
Позволяет членам группы имя-группы использовать привилегированные параметры. Это привилегированный вариант. Использование этой опции требует осторожности, поскольку нет гарантии, что члены имя-группы не могут использовать pppd стать root. Считайте это эквивалентным помещению члены группы имя группы в группе kmem или disk.
проксиарп
Добавьте запись в эту системную таблицу ARP [Протокол разрешения адресов] с IP-адресом однорангового узла и Ethernet-адресом этого система.Это приведет к тому, что партнер будет казаться другим системы должны быть в локальной сети Ethernet.
pty сценарий
Указывает, что сценарий команды должен использоваться для связи а не конкретное оконечное устройство. Pppd выделит себе пара псевдо-tty master / slave и использовать подчиненное устройство в качестве терминала устройство. Сценарий будет запущен в дочернем процессе с псевдо-tty master в качестве стандартного ввода и вывода.Явный имя устройства может не указываться, если используется эта опция. (Примечание: если Запись Опция используется вместе с опцией pty , у дочернего процесса будут каналы на стандартном вводе и выводе.)
принимать все
С этой опцией pppd будет принимать все управляющие символы из одноранговый узел, включая отмеченные в приеме asyncmap. Без этого опция, pppd отбросит эти символы, как указано в RFC1662. Эта опция нужна только в том случае, если одноранговый узел неисправен.
запись имя файла
Указывает, что pppd должен записывать все символы, отправленные и полученные в файл с именем имя файла . Этот файл открывается в режиме добавления, используя идентификатор пользователя и разрешения. Эта опция реализована используя псевдо-tty и процесс для передачи символов между псевдо-tty и реальное последовательное устройство, поэтому это увеличит задержку и накладные расходы ЦП на передачу данных через интерфейс ppp. В символы хранятся в помеченном формате с отметками времени, которые могут быть отображается в удобочитаемой форме с помощью программы pppdump (8).
удаленное имя имя
Установите предполагаемое имя удаленной системы для аутентификации на имя .
удаленный номер номер
Установите предполагаемый номер телефона удаленной системы для аутентификации целей на номер .
мусорщик
С этой опцией pppd не соглашается аутентифицировать себя в одноранговый узел, использующий CHAP.
мусор-мшап
С этой опцией pppd не соглашается аутентифицировать себя в одноранговый узел, использующий MS-CHAP.
отказаться-mschap-v2
С этой опцией pppd не соглашается аутентифицировать себя в одноранговый узел, использующий MS-CHAPv2.
мусорное ведро
С этой опцией pppd не соглашается аутентифицировать себя в одноранговый узел, использующий EAP.
мусорное ведро
С этой опцией pppd не соглашается аутентифицировать себя в одноранговый узел, использующий PAP.
require-chap
Требовать от однорангового узла аутентифицировать себя с помощью CHAP [Challenge Протокол аутентификации рукопожатия] аутентификации.
требуется-mppe
Требовать использования MPPE (Microsoft Point to Point Encryption). Этот опция отключает все другие типы сжатия. Эта опция включает как 40-битное, так и 128-битное шифрование. Для того, чтобы MPPE успешно вы должны пройти аутентификацию с помощью MS-CHAP или MS-CHAPv2. В настоящее время эта опция поддерживается только в Linux, и только если ваш Ядро настроено для включения поддержки MPPE.
требуется-mppe-40
Требовать использования MPPE с 40-битным шифрованием.
требуется-mppe-128
Требовать использования MPPE со 128-битным шифрованием.
require-mschap
Требовать от однорангового узла аутентифицироваться с помощью MS-CHAP [Microsoft Challenge Протокол аутентификации рукопожатия] аутентификации.
require-mschap-v2
Требовать от однорангового узла аутентифицироваться с помощью MS-CHAPv2 [Microsoft Challenge Протокол аутентификации рукопожатия, версия 2] аутентификации.
Требуется EAP
Требовать от однорангового узла аутентифицироваться с помощью EAP [Extensible Протокол аутентификации] аутентификация.
require-pap
Требовать от партнера аутентифицироваться с помощью PAP [Пароль Протокол аутентификации] аутентификация.
набор имя = значение
Установите переменную среды для скриптов, которые запускаются pppd. При установке из привилегированного источника переменная, указанная в , имя не могут быть изменены параметрами, содержащимися в непривилегированном источнике. Видеть также параметр не установлен и среда, описанная в СКРИПТЫ .
показать пароль
При регистрации содержимого пакетов PAP эта опция заставляет pppd показать строку пароля в сообщении журнала.
бесшумный
С этой опцией pppd не будет передавать пакеты LCP для инициации соединение до тех пор, пока действительный пакет LCP не будет получен от однорангового узла (как для `пассивный ‘вариант с древними версиями pppd).
интервал srp n
Если этот параметр задан и pppd использует EAP SRP-SHA1 для аутентификации пэр (т.е., это сервер), тогда pppd будет использовать необязательный легкий механизм повторного вызова SRP с интервалом n секунд. Эта опция быстрее, чем eap-interval повторная аутентификация, потому что он использует механизм на основе хэша и не получить новый сеансовый ключ.
srp-pn-secret строка
Установите долгосрочный секрет создания псевдонимов для сервера. Этот значение не является обязательным и, если установлено, должно быть известно на сервере только на стороне (аутентификатора) и должны быть разными для каждого сервера (или опрос одинаковых серверов).Он используется вместе с текущей датой для сгенерировать ключ для шифрования и расшифровки личности клиента, содержащейся в псевдониме.
srp-use-псевдоним
При работе в качестве клиента EAP SRP-SHA1 попытайтесь использовать псевдоним хранится в ~ / .ppp_pseudonym сначала в качестве идентификатора, и сохраните в этом укажите любой псевдоним, предложенный партнером во время аутентификации.
синхронизация
Используйте синхронное последовательное кодирование HDLC вместо асинхронного.Устройство, используемое pppd с этой опцией, должно иметь поддержку синхронизации. В настоящее время поддерживает адаптеры Microgate SyncLink под Linux и FreeBSD 2.2.8 и новее.
ед. число
Устанавливает номер модуля ppp (для имени интерфейса ppp0 или ppp1 и т. Д.) Для исходящего соединения. Если устройство уже используется, динамически назначаемый номер будет использоваться.
ifname строка
Установите имя интерфейса ppp для исходящих соединений.Если имя интерфейса уже используется, или если имя не может быть использовано по какой-либо другой причине, pppd будет прекратить.
снято название
Удалите переменную из переменной среды для скриптов, которые вызывается pppd. Если указано привилегированным источником, переменная имя не может быть задано параметрами, содержащимися в непривилегированном источник. См. Также параметр set и описанную среду в СКРИПТЫ .
updetach
С этой опцией pppd отключится от своего управляющего терминала один раз. он успешно установил соединение ppp (до точки, где первый протокол управления сетью, обычно протокол управления IP, подошел).
usehostname
Принудительное использование имени хоста (с добавлением имени домена, если оно указано) в качестве имени локальной системы для целей аутентификации (заменяет вариант имя ). Эта опция обычно не требуется, так как имя опция привилегированная.
usepeerdns
Спросите у партнера до 2 адресов DNS-серверов. Предоставленные адреса одноранговым узлом (если есть) передаются в сценарий / etc / ppp / ip-up в переменные среды DNS1 и DNS2, а также переменная среды USEPEERDNS будет установлен на 1.Кроме того, pppd создаст Файл /etc/ppp/resolv.conf, содержащий одну или две строки сервера имен с адрес (а), предоставленный партнером.
пользователь имя
Устанавливает имя, используемое для аутентификации локальной системы для однорангового узла название .
слоты vj-max n
Устанавливает количество разъемов для подключения, которые будет использовать Van Jacobson. Код сжатия и декомпрессии заголовка TCP / IP до n , который должно быть от 2 до 16 (включительно).
добро пожаловать сценарий
Запустите исполняемый файл или команду оболочки, указанную в сценарии перед инициирование согласования PPP после того, как сценарий подключения (если есть) завершено. Значение этой опции из привилегированного источника не может быть переопределено непривилегированным пользователем.
xonxoff
Используйте программное управление потоком (например, XON / XOFF) для управления потоком данных на последовательный порт.

ФАЙЛЫ ОПЦИЙ

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

Файл параметров разбивается на серию слов, разделенных пробел.В слово можно включить пробелы, заключив слово в двойных кавычках («). Обратная косая черта (\) помещает следующий символ в кавычки. Хеш (#) запускает комментарий, который продолжается до конца линия. Нет ограничений на использование файла или по телефону параметры в файле параметров.

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

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

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

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

При открытии устройства pppd использует ID пользователя вызывающего пользователя. или корневой UID (то есть 0), в зависимости от того, было ли имя устройства указывается пользователем или системным администратором. Если имя устройства поступает из привилегированного источника, то есть / etc / ppp / options или чтение файла опций с использованием опции вызова , pppd использует полный корень привилегии при открытии устройства.Таким образом, создав соответствующий файл в / etc / ppp / peers, системный администратор может разрешить пользователям установить соединение ppp через устройство, которое они обычно не есть разрешение на доступ. В противном случае pppd использует вызывающего пользователя настоящий UID при открытии устройства.

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

Аутентификация — это процесс, при котором один партнер убеждает другого в его личность. Это предполагает, что первый партнер отправляет свое имя другое, вместе с какой-то секретной информацией, которая могла только исходят от настоящего авторизованного пользователя с таким именем.В таком обмена, мы будем называть первого партнера «клиентом», а другого — «сервер». У клиента есть имя, по которому он идентифицирует себя сервер, и у сервера также есть имя, по которому он идентифицирует себя клиенту. Обычно настоящий клиент делится каким-то секретом (или пароль) с сервером и аутентифицируется, доказывая, что он знает этот секрет. Очень часто имена, используемые для аутентификации соответствуют именам хостов в Интернете одноранговых узлов, но это не существенный.

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

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

По умолчанию 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 при аутентификации других системы себе.

Каждая строка в файле секретов содержит один секрет. Данный секрет для конкретной комбинации клиента и сервера — он может использоваться только этим клиентом для аутентификации на этом сервере. Таким образом, каждая строка в файле секретов имеет как минимум 3 поля: имя клиент, имя сервера и секрет.Эти поля могут за ним следует список IP-адресов, которые указанный клиент может использоваться при подключении к указанному серверу.

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

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

Любые следующие слова в той же строке считаются списком допустимые IP-адреса для этого клиента. Если есть только 3 слова на строки, или если первое слово — «-«, то все IP-адреса запрещено. Чтобы разрешить любой адрес, используйте «*». Слово, начинающееся с «!» указывает, что указанный адрес неприемлем.An после адреса может следовать «/» и число n , чтобы указать вся подсеть, то есть все адреса, которые имеют одинаковое значение в большинстве значащие n бит. В этой форме можно следовать за адресом знаком плюс («+»), чтобы указать, что один адрес из подсети авторизован на основе номера используемого сетевого интерфейса ppp. В этом случае часть адреса хоста будет установлена ​​на устройство номер плюс один.

Таким образом, файл секретов содержит оба секрета для использования при аутентификации. другие хосты, а также секреты, которые мы используем для аутентификации другие.Когда pppd аутентифицирует однорангового узла (проверяя одноранговый identity), он выбирает секрет с именем партнера в первом поле и имя локальной системы во втором поле. В имя локальной системы по умолчанию — имя хоста, с доменом добавляется имя, если используется опция домена . Это значение по умолчанию может быть переопределено опцией name , кроме случаев, когда используется опция usehostname . (Для EAP SRP-SHA1 см. srp-entry (8) для создания правильных записей валидатора, которые будут используется в поле «секрет».)

Когда pppd выбирает секрет для аутентификации на peer, сначала он определяет, какое имя будет использовать для идентификации себя коллеге. Это имя может быть указано пользователем с помощью пользовательский вариант . Если этот параметр не используется, имя по умолчанию имя локальной системы, определенное, как описано в предыдущем пункт. Затем pppd ищет секрет с этим именем в первом поле и имя партнера во втором поле. Pppd будет знать имя партнера, если используется аутентификация CHAP или EAP, потому что одноранговый узел отправит его в пакете запроса.Однако, если PAP используется, pppd должен будет определить имя партнера по параметры, указанные пользователем. Пользователь может указать имя партнера непосредственно с опцией remotename . В противном случае, если пульт IP-адрес был указан по имени (а не в числовой форме), которое name будет использоваться как имя партнера. В противном случае pppd будет использовать пустая строка в качестве имени партнера.

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

Кроме того, если была указана опция для входа в систему , имя пользователя и пароль также проверяется по базе данных системных паролей. Таким образом, системный администратор может настроить файл pap-secrets, чтобы разрешить PPP доступ только для определенных пользователей, а также для ограничения набора IP-адресов что может использовать каждый пользователь.Обычно при использовании опции логин секрет в / etc / ppp / pap-secrets будет «», что соответствует любому пароль, предоставленный партнером. Это позволяет избежать необходимости иметь одинаковые секрет в двух местах.

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

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

МАРШРУТ

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

Иногда желательно добавить маршрут по умолчанию через пульт хост, как в случае с машиной, единственное подключение которой к Интернет через интерфейс ppp. Вариант defaultroute заставляет pppd создавать такой маршрут по умолчанию, когда появляется IPCP, и удалите его, когда ссылка будет разорвана.

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

Когда используется опция Demand , IP-адреса интерфейсов имеют уже был установлен в момент появления IPCP.Если у pppd нет удалось согласовать те же адреса, которые он использовал для настройки интерфейс (например, когда партнером является интернет-провайдер, использующий динамический Назначение IP-адреса), pppd должен изменить IP-адреса интерфейса по согласованным адресам. Это может нарушить существующие соединения, и использование набора номера по требованию с одноранговыми узлами, которые используют динамический IP-адрес назначение не рекомендуется.

МУЛЬТИЛИНК

Multilink PPP предоставляет возможность комбинировать два или более каналов PPP. между парой машин в единую «связку», которая выглядит как один виртуальный канал PPP, который имеет общую пропускную способность отдельные ссылки.В настоящее время многоканальный PPP поддерживается только в Linux.

Pppd обнаруживает, что канал, которым он управляет, подключен к тому же самому одноранговый узел в качестве другого канала, используя дискриминатор конечных точек однорангового узла и аутентифицированная личность партнера (если он аутентифицирует себя). В Дискриминатор конечной точки — это блок данных, который, надеюсь, является уникальным для каждого партнера. Можно использовать несколько типов данных, в том числе локально назначенные строки байтов, IP-адресов, MAC-адресов, случайные строки байтов или телефонные номера E-164.Конечная точка дискриминатор, посланный партнеру pppd, может быть установлен с помощью конечной точки вариант.

В некоторых случаях партнер может не отправлять дискриминатор конечной точки или неуникальное значение. Опция пакета добавляет дополнительную строку, которая добавлен в дискриминатор конечной точки однорангового узла и аутентифицированный идентификатор при сопоставлении ссылок, которые нужно объединить в связку. Пакет опция также может использоваться для создания нескольких пакетов между локальной системой и партнером. Pppd использует базу данных TDB в / var / run / pppd2.tdb для сопоставления ссылок.

Предполагая, что многоканальный режим включен и одноранговый узел желает согласовать многоканальный режим, затем, когда вызывается pppd, чтобы вызвать первый ссылку на одноранговый узел, он обнаружит, что никакая другая ссылка не подключена к однорангового узла и создайте новый пакет, то есть другую сеть ppp блок интерфейса. Когда вызывается другой pppd, чтобы открыть другую ссылку узлу, он обнаружит существующий пакет и присоединится к его ссылке Это.

Если первая ссылка прерывается (например, из-за зависания или получен запрос на завершение LCP) пакет не уничтожается, если в пакете не осталось других ссылок.Скорее, чем при выходе, первый pppd продолжает работать после разрыва связи, пока все ссылки в пакете отключены. Если первый pppd получает сигнал SIGTERM или SIGINT, он уничтожит пакет и отправить SIGHUP процессам pppd для каждой ссылки в связка. Если первый pppd получит сигнал SIGHUP, он завершится. его ссылка, но не комплект.

Примечание: режим по запросу в настоящее время не поддерживается при многоканальном подключении.

ПРИМЕРЫ

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

Вероятно, наиболее распространенное использование pppd — это дозвон к провайдеру. Этот можно сделать с помощью такой команды, как

pppd вызов isp

где файл / etc / ppp / peers / isp настроен системой администратор должен содержать что-то вроде этого:

ttyS0 19200 crtscts
подключение ‘/ usr / sbin / chat -v -f / etc / ppp / chat-isp’
noauth

В этом примере мы используем чат, чтобы набрать модем интернет-провайдера и перейти через любую требуемую последовательность входа в систему.Uppp- ~ »

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

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

pppd proxyarp

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

сервер joespc «секрет Джо» joespc.my.net

(См. Srp-entry (8) для получения информации о способах генерации записи сервера, когда SRP-SHA1 уже используется.) В качестве альтернативы вы можете создать имя пользователя с именем (например) «ppp», оболочка для входа в систему — pppd, а домашний каталог — / etc / ppp.] также ( asyncmap 200a0000 ). Если путь включает rlogin, вам нужно будет использовать escape ff в конце, на котором запущен клиент rlogin, поскольку многие Реализации rlogin непрозрачны; они удалят последовательность [0xff, 0xff, 0x73, 0x73, за которой следуют любые 8 байтов] из поток.

ДИАГНОСТИКА

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

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

Отладку также можно включить или отключить, отправив сигнал 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 не ждет завершения скриптов (кроме ip-pre-up сценарий). Скрипты выполняется как root (с реальным и эффективным идентификатором пользователя, установленным на 0), поэтому что они могут делать такие вещи, как обновлять таблицы маршрутизации или запускать привилегированные демоны.Будьте осторожны, чтобы содержимое этих скриптов не ставить под угрозу безопасность вашей системы. Pppd запускает скрипты с стандартный ввод, вывод и ошибка перенаправляются в / dev / null, и с среда пуста, за исключением некоторых переменных среды, которые дайте информацию о ссылке. Переменные среды, которые pppd наборы бывают:
УСТРОЙСТВО
Имя используемого последовательного устройства tty.
IFNAME
Имя используемого сетевого интерфейса.
IPLOCAL
IP-адрес локального конца ссылки. Это устанавливается только тогда, когда Появился IPCP.
IPREMOTE
IP-адрес удаленного конца ссылки. Это устанавливается только тогда, когда Появился IPCP.
ИМЯ
Аутентифицированное имя партнера. Это устанавливается, только если одноранговый узел аутентифицирует себя.
СКОРОСТЬ
Скорость передачи tty-устройства.
ORIG_UID
Реальный идентификатор пользователя, запустившего pppd.
PPPLOGNAME
Имя пользователя настоящего идентификатора пользователя, который вызвал pppd. Это всегда установлено.

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

CONNECT_TIME
Количество секунд с момента начала согласования PPP до соединение было прервано.
BYTES_SENT
Количество отправленных байтов (на уровне последовательного порта) во время подключение.
BYTES_RCVD
Количество полученных байтов (на уровне последовательного порта) во время связь.
ИМЯ ССЫЛКИ
Логическое имя ссылки, заданное параметром имя ссылки .
CALL_FILE
Стоимость опциона колл .
DNS1
Если одноранговый узел предоставляет адреса DNS-серверов, для этой переменной устанавливается значение первый предоставленный адрес DNS-сервера (независимо от того, используется ли usepeerdns был дан вариант).
DNS2
Если одноранговый узел предоставляет адреса DNS-серверов, для этой переменной устанавливается значение предоставлен второй адрес DNS-сервера (независимо от того, используется ли usepeerdns был дан вариант).

Pppd вызывает следующие сценарии, если они существуют. Это не ошибка если их не существует.

/ etc / ppp / auth-up
Программа или сценарий, который выполняется после удаленной системы. успешно аутентифицирует себя. Выполняется с параметрами
имя-интерфейса имя-узла имя-пользователя скорость tty-устройства
Обратите внимание, что этот сценарий не выполняется, если одноранговый узел не аутентифицируется. сам, например, когда используется опция noauth .
/ etc / ppp / auth-down
Программа или скрипт, который выполняется, когда ссылка разрывается, если / etc / ppp / auth-up был ранее выполнен.Выполнен в том же способом с теми же параметрами, что и / etc / ppp / auth-up.
/ etc / ppp / ip-pre-up
Программа или сценарий, который выполняется непосредственно перед сетью ppp. интерфейс поднят. Выполняется с теми же параметрами, что и сценарий ip-up (ниже). На данный момент интерфейс существует и имеет IP-адреса назначены, но все еще не работает. Это можно использовать для добавить правила брандмауэра, прежде чем любой IP-трафик сможет проходить через интерфейс. Pppd будет ждать завершения этого скрипта перед тем, как интерфейс, поэтому этот сценарий должен работать быстро.
/ и т. Д. / Ppp / ip-up
Программа или сценарий, который выполняется, когда ссылка доступна для отправка и получение IP-пакетов (то есть IPCP подошел). это выполняется с параметрами
имя-интерфейса скорость tty-устройства локальный IP-адрес удаленный IP-адрес ipparam
/ и т. Д. / PPP / IP-вниз
Программа или скрипт, который выполняется, когда ссылка больше не работает. доступен для отправки и получения IP-пакетов.Этот сценарий может быть используется для отмены эффектов / etc / ppp / ip-up и / etc / ppp / ip-pre-up скрипты. это вызывается таким же образом и с теми же параметрами, что и ip-up сценарий.
/ и т. Д. / Ppp / ipv6-up
Подобен / etc / ppp / ip-up, за исключением того, что он выполняется, когда ссылка доступна для отправки и получения пакетов IPv6. Выполняется с параметрами
имя-интерфейса скорость tty-устройства локальный-канал-локальный-адрес удаленный-канал-локальный-адрес ipparam
/ и т. Д. / Ppp / ipv6-down
Аналогично / etc / ppp / ip-down, но выполняется, когда пакеты IPv6 не могут дольше передаваться по ссылке.Выполняется с такими же параметрами как сценарий ipv6-up.
/ и т. Д. / Ppp / ipx-up
Программа или сценарий, который выполняется, когда ссылка доступна для отправка и получение пакетов IPX (то есть IPXCP подошел). это выполняется с параметрами
имя-интерфейса скорость tty-устройства номер сети локальный-IPX-узел-адрес удаленный-IPX-узел-адрес локальный-IPX-протокол-маршрутизации протокол удаленной-IPX-маршрутизации локальное-IPX-имя-маршрутизатора удаленное-IPX-имя-маршрутизатора ipparam pppd-pid
Поле local-IPX-routing-protocol и remote-IPX-routing-protocol может быть одним из следующих:
НЕТ, чтобы указать, что протокол маршрутизации отсутствует.
RIP, чтобы указать, что следует использовать RIP / SAP
NLSP, чтобы указать, что следует использовать Novell NLSP
RIP NLSP, чтобы указать, что следует использовать как RIP / SAP, так и NLSP
/ и т.д. / PPP / IPX-вниз
Программа или скрипт, который выполняется, когда ссылка больше не работает. доступен для отправки и получения IPX-пакетов.Этот сценарий может быть используется для отмены эффектов сценария / etc / ppp / ipx-up. это вызывается таким же образом и с теми же параметрами, что и ipx-up сценарий.

ФАЙЛОВ

/ var / run / ppp n .pid (BSD или Linux), / etc / ppp / ppp n .pid (другие)
ID процесса для процесса pppd на блоке интерфейса ppp n .
/ var / run / ppp- имя .pid (BSD или Linux),
/ etc / ppp / ppp- имя .pid (другие) ID процесса для процесса pppd для логической ссылки , имя (см. имя ссылки вариант).
/var/run/pppd2.tdb
База данных, содержащая информацию о процессах pppd, интерфейсах и ссылки, используемые для сопоставления ссылок с пакетами в многоканальной работе. май проверяться внешними программами для получения информации о запущенных экземпляры pppd, интерфейсы и устройства, которые они используют, IP-адрес задания и др. / и т.д. / ppp / pap-секреты Имена пользователей, пароли и 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
Пользовательские параметры по умолчанию, читайте перед / etc / ppp / options. ttyname .
/ etc / ppp / options. ttyname
Системные параметры по умолчанию для используемого последовательного порта, читать после ~ / .ppprc. При формировании ttyname часть этого filename, начальный / dev / удаляется из имени порта (если присутствует), а любые косые черты в оставшейся части преобразуются в точки.
/ etc / ppp / peers
Каталог, содержащий файлы опций, которые могут содержать привилегированные параметры, даже если pppd был вызван пользователем, отличным от root.В системный администратор может создавать файлы опций в этом каталоге, чтобы разрешить непривилегированным пользователям дозваниваться, не требуя от партнера аутентифицироваться, но только для определенных доверенных партнеров.

ПРИМЕЧАНИЯ

Можно осуществлять некоторую ограниченную степень контроля над работающим pppd. процесс, отправив ему сигнал из списка ниже.
SIGINT, SIGTERM
Эти сигналы заставляют pppd завершить соединение (закрывая LCP), восстановите настройки последовательного устройства и выйдите.Если разъем или процесс разъединителя в настоящее время запущен, pppd отправит то же самое сигнал к своей группе процессов, чтобы завершить соединитель или разъединитель процесса.
SIGHUP
Этот сигнал заставляет pppd завершить соединение, восстановить серийный настройки устройства и закройте последовательное устройство. Если сохраняется или указан параметр запроса , pppd попытается повторно открыть последовательное устройство и начать другое соединение (после периода задержки).В противном случае pppd выйдет. Если этот сигнал получен во время период задержки, это заставляет pppd немедленно завершить период задержки. Если запущен процесс коннектора или разъединителя, pppd отправит тот же сигнал для своей группы процессов.
СИГУСР1
Этот сигнал переключает состояние опции отладки .
SIGUSR2
Этот сигнал заставляет pppd повторно согласовывать сжатие. Это может быть полезно повторно включить сжатие после того, как оно было отключено в результате фатальной ошибки декомпрессии.(Обычно фатальные ошибки декомпрессии указать на ошибку в той или иной реализации.)

АВТОРОВ

Пол Маккеррас ([адрес электронной почты защищен]), основанный на более ранней работе автора Дрю Перкинс, Брэд Клементс, Карл Фокс, Грег Кристи, и Брэд Паркер.

АВТОРСКИЕ ПРАВА

Pppd защищен авторским правом и доступен на условиях, которые обеспечивают что его можно копировать и использовать в исходной или двоичной форме при условии, что условия, перечисленные ниже, выполнены. Части pppd покрываются следующие уведомления об авторских правах:

Авторское право (c) 1984-2000 Университет Карнеги-Меллона.Все права зарезервированный.
Copyright (c) 1993-2004 Пол Маккеррас. Все права защищены.
Copyright (c) 1995 Педро Роке Маркес. Все права защищены.
Copyright (c) 1995 Эрик Розенквист. Все права защищены.
Copyright (c) 1999 Томми Комулайнен. Все права защищены.
Авторские права (C) Эндрю Триджелл 1999 г.
Авторские права (c) 2000, Sun Microsystems, Inc. Все права защищены.
Авторские права (c) 2001, Sun Microsystems, Inc. Все права защищены.
Copyright (c) 2002 Google, Inc.Все права защищены.

Уведомления об авторских правах содержат следующие утверждения.

Распространение и использование в исходной и двоичной формах, с или без модификации, разрешены при соблюдении следующих условий которые встретились:

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

2. Распространение в двоичной форме должно воспроизводить указанное выше авторское право.
, этот список условий и следующий отказ от ответственности в
документацию и / или другие материалы, прилагаемые к
раздача.

3. Название «Университет Карнеги-Меллона» не должно использоваться для
рекомендовать или продвигать продукты, созданные на основе этого программного обеспечения, без
предварительное письменное разрешение. Для разрешения или любых юридических
подробнее, обращайтесь

Управление трансфера технологий

Университет Карнеги-Меллона

5000 Форбс Авеню

Питтсбург, Пенсильвания 15213-3890

(412) 268-4387, факс: (412) 268-7395

[адрес электронной почты защищен]

3b.Имена авторов этого программного обеспечения не должны использоваться для
рекомендовать или продвигать продукты, созданные на основе этого программного обеспечения, без
предварительное письменное разрешение.

4. При повторном распространении в любой форме должны сохраняться следующие
благодарностей:

«Этот продукт включает программное обеспечение, разработанное Computing Services
в Университете Карнеги-Меллона (http://www.cmu.edu/computing/) «.

«Этот продукт включает программное обеспечение, разработанное Полом Маккеррасом.
<[электронная почта защищена]> «.

«Этот продукт включает программное обеспечение, разработанное Педро Роке Маркесом.
<[электронная почта защищена]> «.

«Этот продукт включает программное обеспечение, разработанное Томми Комулайненом.
<[электронная почта защищена]> «.

УНИВЕРСИТЕТ КАРНЕГИ МЕЛЛОН ОТКАЗЫВАЕТСЯ ОТ ВСЕХ ГАРАНТИЙ В ОТНОШЕНИИ ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ, ВКЛЮЧАЯ ВСЕ ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ФИТНЕС, НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ УНИВЕРСИТЕТ КАРНЕГИ МЕЛЛОН НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ОСОБЫЕ, КОСВЕННЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ИЛИ ЛЮБЫЕ УБЫТКИ ЧТО ЯВЛЯЕТСЯ РЕЗУЛЬТАТОМ ПОТЕРЯ ИСПОЛЬЗОВАНИЯ, ДАННЫХ ИЛИ ПРИБЫЛИ, ЛИБО ДЕЙСТВИЕ ДОГОВОРА, НЕБРЕЖНОСТЬ ИЛИ ДРУГИЕ ЧУВСТВИТЕЛЬНЫЕ ДЕЙСТВИЯ, ВОЗНИКАЮЩИЕ ВНЕ ИЛИ В СВЯЗИ С ИСПОЛЬЗОВАНИЕМ ИЛИ РАБОТОЙ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

АВТОРЫ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ОТКАЗЫВАЮТСЯ ОТ ВСЕХ ГАРАНТИЙ В ОТНОШЕНИИ ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ, ВКЛЮЧАЯ ВСЕ ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ФИТНЕСА, АВТОРЫ НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ОСОБЫЕ, КОСВЕННЫЕ ИЛИ КОСВЕННЫЕ УБЫТКИ ИЛИ ЛЮБЫЕ УБЫТКИ ЧТО ЯВЛЯЕТСЯ РЕЗУЛЬТАТОМ ПОТЕРЯ ИСПОЛЬЗОВАНИЯ, ДАННЫХ ИЛИ ПРИБЫЛИ, ЛИБО ДЕЙСТВИЕ ДОГОВОРА, НЕБРЕЖНОСТЬ ИЛИ ДРУГИЕ ЧУВСТВИТЕЛЬНЫЕ ДЕЙСТВИЯ, ВОЗНИКАЮЩИЕ ВНЕ ИЛИ В СВЯЗИ С ИСПОЛЬЗОВАНИЕМ ИЛИ РАБОТОЙ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

Разъяснение BFD и BFD Echo

В чем разница между «обычным» эхом BFD и BFD, а также для чего нужен «медленный таймер BFD»? Это BFD, как в слове «Обнаружение двунаправленной пересылки» — как вы думаете, что я имел в виду? Я некоторое время просматривал документацию Cisco и иногда искал в Google, чтобы попытаться понять это, и за это время я обнаружил, что документация Cisco, с которой я столкнулся, не очень полезна по этой теме.Он говорит мне, как настроить эхо BFD и медленный таймер, но не почему. Википедия выиграла мой конкурс «Самая понятная документация» для Cisco BFD. Однако теперь я обнаружил, что документация Cisco, по-видимому, была обновлена ​​(и / или я заметил обновления и нашел более качественные документы Cisco на BFD). В частности, технический писатель / инженер, улучшивший текст в документации Nexus, заслуживает бонуса (или, по крайней мере, упоминания в печати).

Существует также RFC 5880, Bidirectional Forwarding Detection (BFD), который доступен с июня 2010 года и, как и большинство RFC, довольно удобочитаем.Думаю, мне следовало бы иметь RTFRFC (прочтите The Fine RFC) вместо того, чтобы искать заметки утеса (так сказать).

Давайте вернемся назад и посмотрим, почему мы можем заботиться о BFD, а затем посмотрим, как лучше всего это сделать.

Почему BFD?

BFD был создан Juniper Networks. Это обеспечивает быстрый способ маршрутизации соседей, чтобы обнаружить, что их одноранговый узел не работает. BFD может использовать миллисекундные таймеры для связи с соседями по маршрутизации. При этом рекомендуется использовать демпфирование интерфейса, чтобы свести к минимуму влияние нестабильного интерфейса на маршрутизацию и ЦП.

По сравнению, например, с менее секунды OSPF привет, BFD находится на более низком уровне в стеке протоколов и имеет меньший вес для ЦП. Это позволяет использовать BFD на большем количестве интерфейсов (физических или логических).

BFD также предоставляет общий механизм обнаружения событий сбоя интерфейса, который может использоваться всеми протоколами маршрутизации (включая статические маршруты и FHRP, такие как HSRP). BFD может быть полезен с EIGRP, потому что в различных документах Cisco рекомендуется не устанавливать таймер EIGRP Hello ниже 2–4 секунд — по сообщениям, EIGRP может стать нестабильным, если вы это сделаете.В то время как EIGRP должен хорошо работать, например, с Таймеры BFD на 50 мсек, поскольку они отделяют обнаружение сбоя интерфейса от механизмов поддержки приветствия / смежности протокола.

BFD особенно полезен, когда между вашим граничным маршрутизатором и вашим оператором связи есть устройство уровня 1 или уровня 2, особенно если устройство не передает надежно статус канала на ваш маршрутизатор. Устройство может действовать как медиаконвертер, медь-оптика. Или это может быть какая-то форма Ethernet для SONET или другого граничного устройства операторского класса.Или он может действовать как концентратор L2.

В таких случаях вам, возможно, придется подождать, пока истечет время ожидания приветствия вашего протокола маршрутизации (возможно, EIGRP, OSPF или BGP). Поскольку это занимает десятки секунд, пройдет некоторое время, прежде чем ваша маршрутизация сможет повторно сойтись и использовать альтернативный канал или оператора, который все еще работает. BFD позволяет вашему пограничному маршрутизатору очень быстро узнать о потере своего соседа и отреагировать.

Обратите внимание, что такая быстрая реакция немного расходится с поведением постепенного перезапуска SSO / NSF, которое больше связано с спокойным взвешенным (отложенным) подходом, позволяющим второму супервизору перейти на смену первому.Идея SSO / NSF состоит в том, чтобы «пережить» переход. Если вам нравятся аналогии, SSO / NSF похож на транквилизатор маршрутизатора, успокаивающий его, тогда как BFD похож на двойной эспрессо кофе, делая маршрутизатор более резким и гипер. Эти двое несколько диаметрально противоположны в том, что они пытаются сделать. См. Также один из моих предыдущих блогов под названием «Непрерывная пересылка и быстрая переадресация» по адресу https://netcraftsmen.com/blogs/entry/non-stop-forwarding-and-fast-re-routing.html

.

Кстати, если промежуточного устройства нет, а носитель — Ethernet, можно установить задержку несущей.См., Например, http://www.cisco.com/en/US/docs/ios-xml/ios/interface/command/ir-c1.html#GUID-7ED1B93D-93F7-425A-8628-D48EC51679EC.

Задержка несущей — это задержка перед тем, как считается, что интерфейс Ethernet включен или отключен, что-то вроде простого демпфирования. Это полезно с прямыми двухточечными соединениями Ethernet — для ускорения аварийного переключения можно установить низкое значение. Это бесполезно, когда между одноранговыми узлами маршрутизатора есть устройство L1 или L2.

История BFD

BFD, очевидно, начинался на основе опроса («асинхронного») подхода с использованием пакетов управления.Один маршрутизатор опрашивает другой и получает быстрый ответ. Проблема заключается в задержке пробуждения процесса BFD для отправки ответа, что приводит к изменению дрожания ответа. Если другой конец медленно реагирует и BFD запускает соединение, это нехорошо. Отказ от агрессивных таймеров, чтобы предотвратить возникновение проблемы, в некоторой степени подрывает намерения BFD.

BFD echo решает эту проблему и предоставляет умный способ уменьшить задержку вышеупомянутого процесса. В новом коде Cisco по умолчанию используется режим BFD Echo для проверки двунаправленного соединения, чтобы воспользоваться этим.

Достижение ясности

В документации Nexus теперь указано

«Функция эха BFD отправляет эхо-пакеты от механизма пересылки удаленному соседу BFD. Сосед BFD пересылает эхо-пакет обратно по тому же пути, чтобы выполнить обнаружение; сосед BFD не участвует в фактической пересылке эхо-пакетов ».

RFC говорит нечто подобное. Ключевым моментом (насколько я понимаю) является то, что эхо BFD использует быстрый / аппаратный путь пересылки на соседе, чтобы вернуть эхо-пакет самому себе, не дожидаясь прерывания и специальной обработки со стороны ЦП.

В документации говорится: «Кроме того, механизм пересылки тестирует путь пересылки в удаленной (соседней) системе без участия удаленной системы, поэтому меньше изменчивость межпакетной задержки и более быстрое время обнаружения сбоев».

Ага, быстрый / аппаратный путь пересылки. Другими словами, у вас могут быть более жесткие таймеры, потому что вам не нужно так долго ждать ответа от соседа.

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

То есть эхо BFD может выполняться быстро, не прерывая работу ЦП, и, поскольку это обнаружит сбой, вам не нужно запускать управляющие пакеты BFD так часто, поскольку управляющие пакеты не используются для функции быстрого обнаружения. Это, в свою очередь, снижает нагрузку на ЦП и позволяет больше использовать BFD. Умная!

Реализация Cisco BFD echo согласовывает соответствующие таймеры, что делает его более защищенным от администратора (и меньшим объемом обслуживания). Подробности можно найти на http://www.cisco.com / en / US / technologies / tk648 / tk365 / tk480 / technologies_white_paper0900aecd80244005.html

Обратите внимание, что выше также объясняется роль медленного таймера. Это таймер, управляющий взаимодействием управления BFD, а не синхронизация эхо-пакетов.

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

Если вы внимательно посмотрите на RFC 5880, он не определяет фактическую инкапсуляцию для BFD.Для односкачковых ситуаций применяется RFC 5881:

«Пакеты управления BFD ДОЛЖНЫ передаваться в пакетах UDP с портом назначения 3784 в пакете IPv4 или IPv6. Порт источника ДОЛЖЕН находиться в диапазоне от 49152 до 65535 ».

Cisco BFD следует этой спецификации согласно различным документам Cisco.

Лучшие практики BFD

Я еще не нашел ни одного документа Cisco по этому поводу, поэтому этот раздел будет коротким! Вот мои мысли о лучших практиках BFD:

Используйте BFD echo, если можете.

Отмените асинхронный опрос с помощью команды медленного таймера.

Используйте подавление событий интерфейса. Таймеры по умолчанию выглядят неплохо. Идея состоит в том, что лучше отложить рассмотрение маршрутизацией интерфейса как работающего, если интерфейс перескочил вниз / вверх / вниз за довольно короткий период времени. Если вы этого не сделаете, маршрутизация, особенно OSPF, может выполнять много повторных конвергентных операций и лавинной рассылки, и вы можете пересылать пакеты в 50% случаев и блокировать их все остальное время, пока выполняется маршрутизация.

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

Список литературы

См. Также RFC 5881-5884 для получения информации о различных настройках BFD. Страница ссылок на документы рабочей группы BFD по адресу http://tools.ietf.org/wg/bfd/ полезна.

Два весьма полезных документа Cisco о BFD:

Блог Дениз Фишберн на BFD по адресу http: // www.networkworld.com/community/blog/bidirectional-forwarding-detection-bfd-–-little-about-timers-0

Подавление интерфейса Cisco:

pppd: Демон протокола точка-точка — Linux Man Pages (8)

pppd: демон протокола точка-точка

Команда для отображения руководства pppd в Linux: $ man 8 pppd

НАЗВАНИЕ

pppd — Демон протокола точка-точка

ОБЗОР

pppd [ варианты ]

ОПИСАНИЕ

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

ЧАСТО ИСПОЛЬЗУЕМЫЕ ОПЦИИ

ttyname
Используйте последовательный порт под названием ttyname для связи с сверстник.Если ttyname не начинается с косой черты (/), строка «/ dev /» добавляется к ttyname для формирования имя открываемого устройства. Если имя устройства не указано или название терминала подключен к стандартному входу, pppd будет использовать этот терминал, и не будет развиваться, чтобы перейти в фоновый режим. Значение для этого параметр из привилегированного источника не может быть отменен непривилегированный пользователь.
скорость
Параметр, представляющий собой десятичное число, принимается в качестве желаемой скорости передачи данных. для последовательного устройства.В таких системах, как 4.4BSD и NetBSD, скорость может быть любая. Другие системы (например, Linux, SunOS) поддерживают только обычно используемые скорости передачи данных.
asyncmap карта
Эта опция устанавливает Async-Control-Character-Map (ACCM) для этой цели. ссылки. ACCM — это набор из 32 бит, по одному для каждого из Управляющие символы ASCII со значениями от 0 до 31, где 1 бит указывает, что соответствующий управляющий символ не должен использоваться в пакетах PPP, отправленных в эту систему.Карта закодирована как шестнадцатеричное число (без начального 0x), где наименее значимое бит (00000001) представляет символ 0 и самый старший бит (80000000) представляет собой символ 31. Pppd попросит одноранговый узел отправить эти символы в виде 2-байтового escape-последовательность. Если указано несколько параметров asyncmap , значения объединяются по ИЛИ все вместе. Если параметр asyncmap не задан, значение по умолчанию равно нулю, поэтому pppd попросит партнера не экранировать управляющие символы. Чтобы избежать передаваемых символов, используйте опцию escape .
аутентификация
Требовать от однорангового узла аутентифицировать себя перед тем, как разрешить сеть пакеты для отправки или получения. Эта опция используется по умолчанию, если система имеет маршрут по умолчанию. Если ни этот вариант, ни noauth опция указана, pppd разрешит использовать только одноранговому узлу IP-адреса, к которым у системы еще нет маршрута.
позвонить имя
Прочтите дополнительные параметры в файле / etc / ppp / peers / name .Этот файл может содержать привилегированные параметры, такие как noauth , даже если pppd не запускается от root. Строка имени не может начинаться с / или включить .. как компонент имени пути. Формат файла опций описан ниже.
подключить скрипт
Обычно нужно что-то сделать, чтобы подготовить ссылку. перед запуском протокола PPP; например, с набором номера модему, необходимо отправить команды модему для набора соответствующего телефонный номер.Эта опция определяет команду для выполнения pppd (передав его в оболочку) перед попыткой начать согласование PPP. Здесь часто бывает полезна программа chat (8), поскольку она дает возможность отправлять модему произвольные строки и отвечать на полученные символы. Ценность для этой опции из привилегированного источника нельзя переопределить непривилегированный пользователь.
crtscts
Указывает, что pppd должен установить последовательный порт для использования аппаратного потока управление с помощью сигналов RTS и CTS в интерфейсе RS-232.Если ни один из не отвечает , nocrtscts , cdtrcts или вариант nocdtrcts задано, настройка аппаратного управления потоком для последовательного порта оставлен без изменений. Некоторые последовательные порты (например, последовательные порты Macintosh) не имеют Выход RTS. Такие последовательные порты используют этот режим для реализации однонаправленное управление потоком. Последовательный порт будет приостановить передачу по запросу модема (через CTS) но не сможет запросить модем прекратить отправку на компьютер.В этом режиме сохраняется возможность использования DTR как линия управления модемом.
defaultroute
Добавьте маршрут по умолчанию в системные таблицы маршрутизации, используя однорангового узла как шлюз, когда согласование IPCP успешно завершено. Эта запись удаляется при разрыве PPP-соединения. Этот вариант является привилегированным, если была указана опция nodefaultroute .
replacedefaultroute
Эта опция является флагом опции defaultroute.Если defaultroute установлен и этот флаг также установлен, pppd заменяет существующий маршрут по умолчанию с новым маршрутом по умолчанию.
отключить скрипт
Выполните команду, указанную в сценарии , передав ее в оболочка, после pppd прервал связь. Эта команда может, например, выдать команды модему, чтобы заставить его повесить трубку, если аппаратное управление модемом сигналов не было. Сценарий отключения не запускается, если модем уже повесил трубку.Значение этой опции от привилегированного источник не может быть изменен непривилегированным пользователем.
escape xx, yy, …
Указывает, что определенные символы следует экранировать при передаче (независимо от того, запрашивает ли партнер их экранирование с помощью карта символов управления async). Экранируемые символы: заданный как список шестнадцатеричных чисел, разделенных запятыми. Обратите внимание, что для опции escape можно указать почти любой символ, в отличие от опции asyncmap , которая допускает только управляющие символы подлежит уточнению.Символы, которые нельзя экранировать, — это те с шестнадцатеричными значениями 0x20 — 0x3f или 0x5e.
файл название
Прочтите параметры из файла с именем (формат описан ниже). Файл должен быть доступен для чтения пользователю, запустившему pppd.
init скрипт
Выполните команду, указанную в сценарии , передав ее оболочке, чтобы инициализировать последовательную линию. Этот сценарий обычно использует chat (8) программа для настройки модема на автоматический ответ.Ценность для этой опции из привилегированного источника нельзя переопределить непривилегированный пользователь.
замок
Указывает, что pppd должен создать файл блокировки в стиле UUCP для последовательное устройство для обеспечения монопольного доступа к устройству. По умолчанию, pppd не будет создавать файл блокировки.
mru n
Установите значение MRU [Максимальный блок приема] на n . Pppd запросит у однорангового узла пакеты размером не более n байтов.Значение n должно быть от 128 до 16384; по умолчанию 1500. Ценность 296 хорошо работает на очень медленных каналах (40 байт для заголовка TCP / IP + 256 байтов данных). Обратите внимание, что для протокола IPv6 MRU должен быть не менее 1280.
MTU n
Установите значение MTU [Maximum Transmit Unit] на n . Если только одноранговый узел запрашивает меньшее значение через согласование MRU, pppd будет запросить, чтобы сетевой код ядра отправлял пакеты данных не более чем n байта через сетевой интерфейс PPP.Обратите внимание, что для протокол IPv6, MTU должен быть не менее 1280.
пассивное
Включает «пассивную» опцию на LCP. С этой опцией pppd будет попытаться установить соединение; если не получено ответа от peer, тогда pppd будет просто пассивно ждать действительного пакета LCP от узел вместо выхода, как это было бы без этой опции.

ОПЦИИ

<локальный IP-адрес> : <удаленный IP-адрес>
Задайте IP-адреса локального и / или удаленного интерфейса.Либо один может быть опущено. IP-адреса могут быть указаны с именем хоста или в десятичная точка (например, 150.234.56.78). Локальный по умолчанию адрес — (первый) IP-адрес системы (если только noipdefault вариант дан). Удаленный адрес будет получен от однорангового узла. если не указано ни в одном из вариантов. Таким образом, в простых случаях этот вариант не требуется. Если локальный и / или удаленный IP-адрес указан с эта опция, pppd не будет принимать другое значение от однорангового узла в IPCP согласование, если ipcp-accept-local и / или ipcp-accept-remote опции соответственно.
+ ipv6
Включите протоколы IPv6CP и IPv6.
ipv6 ,
Установите локальный и / или удаленный 64-битный идентификатор интерфейса. Либо один может быть опущено. Идентификатор должен быть указан в стандартной нотации ASCII Адреса IPv6 (например, :: dead: beef). Если ipv6cp-use-ipaddr задана опция, локальным идентификатором является локальный IPv4-адрес (см. выше).В системах, которые поддерживают уникальный постоянный идентификатор, например, производный от EUI-48 с MAC-адреса Ethernet можно настроить параметр ipv6cp-use-persistent .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *