pppoectl

Просмотр или установка параметров для интерфейса PPPOE

Синтаксис:

pppoectl [-v] имя_интерфейса [параметр[=значение]] [...] 
pppoectl -e имя_интерфейса_Ethernet [-s имя_службы] [-a имя_концентратора_доступа] [-d] [-n 1 | 2] имя_интерфейса
pppoectl -f конфигурационный_файл имя_интерфейса [...]

Опции:

-e имя_интерфейса_Ethernet
Интерфейс Ethernet для обмена данными с концентратором доступа (обычно через модем DSL).
-a имя_концентратора_доступа
Имя концентратора доступа.
-s имя_службы
Имя службы, с которой устанавливается соединение.
-d
Выполнить дамп информации о текущем состоянии соединения. Обычно этот параметр используется отдельно в информационных целях и не используется при конфигурировании интерфейса.
-n 1
| 2 Вывести IP-адрес первичного или вторичного сервера имен DNS для данного соединения PPP. Данная опция доступна только в том случае, если включена функция запросов DNS. См. описание параметра query-dns.
-f конфигурационный_файл
Выполнить синтаксический анализ файла, указанного аргументом конфигурационный_файл с игнорированием строк, начинающихся с символа #, для поиска пар параметр[=значение] (по одной паре в каждой строке), как в случае их ввода в командной строке. Это исключает необходимость передачи пароля в виде аргумента командной строки.

Платформы:

ЗОСРВ «Нейтрино»

Целевые архитектуры:

aarch64, arm, armv7, e2k, mips, ppc, x86

Описание:

Утилита pppoectl отображает или устанавливает параметры для интерфейса pppoe. Предусмотрены два стандартных режима работы:

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

Кроме настроек, которые можно установить с помощью команды ifconfig, для драйверов PPPOE требуется ряд дополнительных аргументов или необязательных параметров. Они представлены такими параметрами, как параметры протокола аутентификации, а также настраиваемыми конфигурационными переменными. Утилиту pppoectl можно использовать для отображения текущих настроек или при необходимости для конфигурирования этих параметров.

Для идентификации интерфейса, параметры которого требуется отобразить или настроить, необходимо определить аргумент имя_интерфейса. Для просмотра списка доступных интерфейсов следует использовать утилиту ifconfig или netstat.

Если другие параметры не заданы, утилита pppoectl выводит только список текущих параметров интерфейса, определенного аргументом имя_интерфейса, и завершает работу. Среди представленных в отчете параметров отображается одна из следующих фаз PPP, в которой находится интерфейс: dead ("неактивная"), establish ("установление соединения"), authenticate ("аутентификация"), network ("сеть") или terminate ("завершение"). Если для интерфейса указан протокол аутентификации, то выводится имя используемого протокола, а также ожидаемое или используемое имя системы вместе с любыми возможными опциями протокола аутентификации при их наличии. Следует отметить, что аутентификационные ключи, не возвращаются базовыми системными вызовами и по этой причине не отображаются.

В случае установки какого-либо дополнительного параметра требуются полномочия суперпользователя, и команда выполняется в режиме "установки". Обычно она выполняется в режиме вывода краткой информации. Однако если указана опция -v, то после выполнения всех прочих действий выводится полный список параметров согласно приведенному выше описанию. Если интерфейс в текущий момент находится в фазе, отличающейся от фазы "dead" ("неактивная"), то переход в режим "установки" не выполняется. Следует отметить, что можно принудительно перевести интерфейс в фазу "dead" путем вызова команды ifconfig с параметром down.

Поддерживаемые параметры

В настоящее поддерживаются следующие параметры:

authproto=имя_протокола
Установить в качестве протокола аутентификации для локального и удаленного узлов протокол, указанный аргументом имя_протокола. В качестве имени протокола можно указать одно из следующих значений:
chap
pap
none

В последнем случае использование протокола аутентификации для указанного интерфейса будет отключено. Это приводит к возникновению побочного эффекта, заключающегося в сбросе и других параметров данного интерфейса, связанных с аутентификацией (т.е. имя системы и аутентификационный ключ не сохраняются).
myauthproto=имя_протокола
Аналогичен параметру authproto за исключением того, что применяется только для ближнего конца канала связи. Другими словами, это протокол, используемый в том случае, если в качестве аутентификатора выступает удаленный узел, а локальный узел выступает в качестве хоста, подлежащего аутентификации.
hisauthproto=имя_протокола
Аналогичен параметру authproto за исключением того, что применяется только для дальнего конца канала связи.
myauthname=имя
Установить имя локальной системы для протокола аутентификации.
hisauthname=имя
Установить имя удаленной системы для протокола аутентификации. В случае протокола CHAP этот параметр используется только в качестве подсказки, обеспечивающей вывод предупреждающего сообщения в случае передачи со стороны удаленного узла другого имени. В случае протокола PAP это имя, которое должно использоваться удаленной стороной для аутентификации (вместе с соответствующим ключем).
myauthsecret=ключ
Установить ключ (пароль) для локального узла, используемый в фазе аутентификации. В случае протокола CHAP этот параметр используется для вычисления значения хэш-функции ответа в соответствии с запросом удаленной стороны. В случае протокола PAP данное значение передается в формате открытого текста вместе с именем системы. Не следует забывать экранировать ключи от командного интерпретатора, если в них содержатся метасимволы командного интерпретатора (или пробельные символы).
myauthkey=ключ
Аналогичен параметру myauthsecret.
hisauthsecret=ключ
Аналогичен параметру myauthsecret. Используется в том случае, если локальный узел выступает в качестве аутентификатора, а аутентификации подлежит удаленный узел.
hisauthkey=ключ
Аналогичен параметру hisauthsecret.
callin
Требовать аутентификации удаленного узла только в том случае, если вызов осуществляется с его стороны, а не со стороны локального узла. Это необходимо для некоторых узлов, на которых не предусмотрена симметричная реализация протоколов аутентификации (например, для маршрутизаторов Ascend).
always
Параметр с противоположными функциями по отношению к параметру callin. Всегда требовать аутентификации удаленного узла вне зависимости от того, с какой стороны инициируется вызов. Это параметр по умолчанию, который не выводится явно в режиме списка list.
norechallenge
Данный параметр применяется только в случае работы с протоколом CHAP. Не передавать повторный запрос хосту, если начальное квитирование связи по протоколу CHAP прошло успешно. Данный параметр следует использовать для обхода проблем с неисправными реализациями хостов, не способными обеспечить обработку повторных запросов после установления соединения.
rechallenge
В случае использования протокола CHAP отправлять повторные запросы с произвольным интервалом, когда соединение находится в фазе работы по сети. (В настоящее время используются интервалы в диапазоне от 300 до приблизительно 800 секунд.) Это параметр по умолчанию, который не выводится явно в режиме списка list.
idle-timeout=время_простоя_в_секундах
Для услуг, тарификация которых осуществляется в соответствии с продолжительностью соединения, по необходимости можно настроить разъединение интерфейса после заданного времени простоя. Если установлено значение 0, эта функция отключена.

Note: Для устройств ISDN рекомендуется использовать механизм таймаута на базе утилиты isdnd, поскольку утилита isdnd может заранее определить единицу тарификации для соединений ISDN и оптимизировать таймаут в соответствии с этой информацией.

lcp-timeout=значение_таймаута
Изменить значение таймаута LCP. В настоящее время значение таймаута LCP по умолчанию составляет 1 секунду. Аргумент значение_таймаута задается в миллисекундах.
max-noreceive=количество_секунд
Установить интервал времени (в секундах) после последнего приема данных от хоста перед проверкой состояния линии связи путем отправки запросов отклика LCP. Интервал, определяемый аргументом количество_секунд, не соблюдается точно: отправка первого запроса отклика может произойти с задержкой до 10 секунд по истечении заданного времени.
max-alive-missed=количество
Установить допустимое количество запросов отклика LCP, оставшихся без ответа, по достижении которого соединение считается неактивным. В случае отсутствия передаваемых данных со стороны однорангового узла по истечении интервала, заданного с помощью параметра max- noreceive, отправка запросов отклика LCP производится с интервалом в 10 секунд.
max-auth-failure=количество
Поскольку некоторые поставщики интернет-услуг деактивируют учетные записи в случае слишком большого количества неуспешных попыток аутентификации, предусмотрено максимальное количество ошибок аутентификации, по достижении которого повторные попытки прекращаются до вмешательства администратора. Вмешательство заключается либо в изменении аутентификационных данных (имя, пароль), либо в настройке максимального количества повторных попыток. Если для аргумента количество установлено значение 0, эта функция отключена.
clear-auth-failure
Эту команду можно использовать для обнуления счетчика ошибок, если причиной ошибки аутентификации стали проблемы на удаленном узле и необходимо выполнить повторную попытку установления соединения с использованием существующих локальных настроек.
query-dns=флаги
Во время согласования соединеня по протоколу PPP можно отправить запрос хосту для получения адресов двух серверов имен. Если для аргумента флаги установлено значение 1, то запрашивается адрес только первого сервера. Если для аргумента флаги задано значение 2, то запрашивается адрес второго сервера. Установка для аргумента флаги значения 3 обеспечивает запрос обоих адресов.

Для получения информации о результате согласования используется опция -n.

Примеры:

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

# Интерфейс Ethernet должен быть активирован (находится в состоянии UP), иначе пакеты не будут передаваться. ifconfig ne0 up # Создание интерфейса PPPOE ifconfig pppoe0 create # В качестве Ethernet-интерфейса для pppoe0 используется ne0 pppoectl -e ne0 pppoe0 # Конфигурирование аутентификации pppoectl pppoe0 myauthproto=pap myauthname=XXXXX \ myauthsecret=YYYYY hisauthproto=none # Конфигурирование собственно интерфейса pppoe0. Эти адреса являются "магическими", # т.е. их можно не настраивать, их выбор осуществляется # удаленным ppp. ifconfig pppoe0 0.0.0.0 0.0.0.1 netmask 0xffffffff up

Для определения сервера PPPOE интерфейс pppoe следует перевести в режим link0, т.е. в режим ожидания входящих запросов на установление сеанса PPPOE. Интерфейс переводится в режим ожидания запросов, поступающих с интерфейса en0, например, с помощью следующих команд:

ifconfig pppoe0 create # создание интерфейса PPPOE ifconfig pppoe0 link0 # установка режима link0 pppoectl -e en0 pppoe0 # установление связи с Ethernet-интерфейсом en0 pppoectl pppoe0 hisauthproto=pap hisauthname=XXX hisauthsecret=YYY # конфигурирование аутентификации ifconfig pppoe0 inet ip_address_self ip_address_client # назначение IP-адресов ifconfig en0 up # активация en0 для получения входящих данных.

Файлы:

/dev/io-net/ppp_en
Устройство PPPOE по умолчанию.
/etc/ppp/pppoe-down
Сценарий деактивации по умолчанию.
/etc/ppp/pppoe-up
Сценарий активации по умолчанию.

Классификация:

Базовые подсистемы ЗОСРВ «Нейтрино»

Тематические ссылки:

io-pkt-*, pppd




Предыдущий раздел: Утилиты