После четырёх лет разработки организация ISC (Internet Systems Consortium) опубликовала новый значительный выпуск пакета DHCP 4.4.0 с реализацией сервера, транзитного релея и клиента для динамической настройки параметров сетевого соединения хоста с использованием протокола DHCP.
Как и в случае с проектом BIND кодовая база DHCP переведена на лицензиею MPL 2.0 (Mozilla Public License). Ранее применялась лицензия ISC, созданная более 20 лет назад и являющейся аналогом 2-пунктовой лицензии BSD. Лицензия MPLv2 относится к категории слабого копилефта и требует открывать все внесённые в проект изменения, в то время как лицензия ISC предоставляла полную свободу по использованию кода в своих целях. При использовании MPL изменения требуется открывать только при поставке продукта, содержащего модифицированную версию кода. Для внутреннего использования изменения могут вноситься без их публикации. Лицензия MPL совместима с лицензиями GPLv2 и Apache, и выбрана как разумный компромисс между разрешительной лицензией ISC и жестким копилефтом GPL.
Основные новшества:
- Расширены возможности динамического сервера DNS (DDNS): Реализованы три новых конфигурационных параметра, нацеленных на устранение конфликтов:
- ddns-dual-stack-mixed-mode - изменяет штатное поведение по разрешению конфликтов механизмом обхода проблем при наличии несовместимых клиентов в смешанных сетевых окружениях (IPv4 и IPv6).
- ddns-guard-id-must-match - смягчает требования по проверке идентификаторов клиента DHCID RR;
- ddns-other-guard-is-dynamic - вариант режима dual-stack-mixed-mode, при определённых обстоятельствах допускающий перезапись незащищённых DNS-записей;
- В сервере DDNS для статически заданных хостов DHCPv6 теперь учитывается параметр update-static-leases;
- Добавлена поддержка динамического связывания с разделяемыми библиотеками. Подготовлен вариант скрипта configure с поддержкой libtool, который может быть использован для настойки сборки ISC DHCP с использованием libtool и разделяемых библиотек;
- В DHCP-сервер добавлена поддержка опции dhcp-cache-threshold для DHCPv6 и возможность распределения адресов IPv6 на основе уникальных 64-разрядных идентификаторов EUI-64 (Extended Unique Identifier);
- В dhcpd добавлена опция "--release-on-roam", при указании которой сервер высвобождает привязку для старой сети, если определён переход клиента
DHCPv6 (IAID+DUID) в новую сеть;
- В dhcpd добавлена возможность определения адреса (local-address6), с которого будут отправляться пакеты;
- Добавлена экспериментальная поддержка изменения номера UDP-порта (DHCPv4, DHCPv6 и DHCPv4-over-DHCPv) для связи DHCP Relay с сервером;
- В dhclient обеспечена генерация сообщений DHCPv6 DECLINE в случае выдачи скриптом ошибки определения дубликата адреса (DAD, Duplicate Address Detection). Возможность определения дубликаторв при привязке к новому адресу IPv6 добавлена для скриптов linux, freebsd, netbsd, openbsd и macos;
- В dhcpd и dhclient добавлена поддержка отправки и приёма дополнительных опций DHCP4 (93,94, 97 (RFC 4578), 150 (RFC 5859), 209,219, 211 (RFC 5071));
- В dhclient добавлены новые опции:
- "--prefix-len-hint" - позволяет передать информацию о размере желаемого префикса при запросе префиксов;
- "--decline-wait-time" - задаёт время в секундах, которое клиент будет ждать после устаревания IPv4-адреса и до отправки запроса discover. Для соответствия RFC 2131 dhclient теперь ждёт по умолчанию 10 секунд (ранее задержка отсутствовала);
- "--address-prefix-len" - задаёт размер префикса, передаваемый в клиентский скрипт через переменную окружения ip6_prefixlen для каждого адреса IPv6. Опция позволяет переопределить применяемый по умолчанию префикс, который был изменён с 64 до 128 для соответствия требованиям RFC3315bis.
|