pppd
pppd — демон протокола PPP (Point-to-Point Protocol), который используется для управления сетевыми подключениями между двумя узлами в UNIX-подобных операционных системах. Основная задача pppd — это установление PPP сессии и её закрытие. Во время установления сессии pppd выполняет следующие задачи:
- поиск соединений-петель с помощью сигнатур. pppd посылает клиенту LCP-пакет (Link Control Protocol) содержащий свою сигнатуру, клиент должен ответить таким же пакетом, но со своей сигнатурой. Если этого не происходит, то соединение признается петлёй и обрывается;
- автоматическое конфигурирование. Используя протокол LCP, pppd сам определяет методы аутентификации шифрования и компрессии пригодные для клиента;
- управление доступом и аутентификация. Для аутентификации pppd может использовать такие протоколы как PAP, CHAP и EAP;
- конфигурация третьего уровня. Используя протокол IPCP (Internet Protocol Control Protocol), pppd «договаривается» с клиентом о ip-параметрах, таких как: ip-адрес, максимальная длина пакета, адрес сервера имён;
- после того как все «переговоры» с клиентом завершены, устанавливает все необходимые сетевые интерфейсы и пути и передает управление ядру системы.
pppd обрывает соединение если:
- было получено слишком много фреймов с неправильной контрольной суммой;
- соединение признается неиспользуемым;
- другая программа или клиент просит закончить соединение.