Выпуск VPN-демона MPD 5.8

После более чем двух лет разработки выпущен релиз MPD 5.8 (Multi-link PPP Daemon), VPN-демона для FreeBSD с базирующейся на Netgraph реализацией протокола PPP. В зависимости от сконфигурированных правил и параметров соединения mpd может работать как PPP клиент/сервер или перенаправлять соединение без модификации на другие хосты, используя поддерживаемые типы связи, предоставляющие функциональность LAC/PAC/TSA для построения распределенных сетей.

В mpd реализована унифицированная поддержка различных типов соединений (modem, PPTP, L2TP, PPPoE, TCP, UDP и Netgraph), а также многочисленных субпротоколов и расширений PPP (Multi-link PPP, аутентификация PAP, CHAP, MS-CHAP и EAP, сжатие MPPC, Deflate, Predictor-1, шифрование MPPE, DESE, DESE-bis, согласование соединений IPCP и IPV6CP). Mpd также включает много дополнительных возможностей, среди которых:

  • Поддержка IPv4 и IPv6.
  • Интерфейсы управления Telnet и HTTP.
  • Различные методы аутентификации и ведения учетных записей (RADIUS, PAM, script, file и т.п.).
  • Учет трафика через NetFlow.
  • Трансляция сетевых адресов (NAT).
  • Вызов по запросу (Dial-on-demand).
  • Динамическое управление связью ("rubber bandwidth").
  • Мощный скриптовый язык для отправки и обработки команд через асинхронные последовательные порты.
  • Независимость от типа аппаратных устройств.
  • Расширенные средства для ведения логов.

Особенности выпуска mpd 5.8:

  • В web-консоли реализована поддержка вывода в формате JSON;
  • Новая команда "set l2tp pmask ...";
  • Новая команда "set pppoe mac-format ...";
  • Новая команда "set pppoe max-payload ..." для увеличения максимального размера MTU/MRU в соответствии с RFC 4638;
  • Новая команда "set radius src-addr ...";
  • Опция "set iface keep-timeout" для предотвращения обнуления таймаута при CoA-запросах;
  • Опция "set console auth" для отключения аутентификации в консоли;
  • Глобальная опция "agent-cid" для показа PPPoE ADSL-Agent-Circuit-Id в выводе команды "show session";
  • Глобальная опция "session-time" для показа времени сессии в выводе команды "show session";
  • Поддержка указания шаблона "peer_addr" в ACL, при котором осуществляется подстановка IP-адреса внешнего пира из mpd-table;
  • Расширение числа шаблонов, принимаемых из ACL;
  • Расширение числа шаблонов, принимаемых из команды "set iface description ..." или RADIUS аттрибута `mpd-iface-descr";
  • Поддержка RADIUS-аттрибута "Filter-Id";
  • Поддержка библиотеки Backtrace Access;
  • Поддержка библиотеки LibreSSL.
  • Команда "quit" переименована в "shutdown";
  • Обеспечена регистронезависимость команда "authname ...";
  • Реализована возможность одновременно использовать IPv4 и IPv6 адреса на одном и том же интерфейсе.
  • Решена проблема с отсылкой MAC-адреса на сервер RADIUS в виде RAW-значения;
  • Устранена ошибка, не позволяющая устанавливать соединения, используя шифрование ECP.