С помощью сервера Windows DHCP я могу иметь два сервера, обслуживающих область сети, так что если один выйдет из строя, другой подхватит его. С DHCPv4 есть два варианта сделать это, первый — настроить отказоустойчивое отношение, другой — установить начало и конец области на каждом из серверов, чтобы они не перекрывались.
Я пытаюсь понять, как это работает с DHCPv6. Когда я настраиваю область с v6, нет возможности задать начальный и конечный диапазон, и нет возможности настроить отказоустойчивость. Поэтому мой вопрос заключается в том, как два сервера предотвращают ситуацию, когда один и тот же IP-адрес выделяется двум разным клиентам по одному на каждом из двух серверов?
решение1
Назначьте разные области каждому DHCP-серверу, каждый из которых будет иметь свой собственный /64. Например, 2001:db8:8721:d001::/64
и 2001:db8:8721:d002::/64
. Перекрытие невозможно, так как у каждого есть свое собственное пространство вне вашего адресного плана.
Нет выбора размера, поскольку подсети имеют один размер для всех /64. Существует множество /64, чтобы оправдать один на сервер DHCP, это естественный вариант использования подсети. Или даже просто желание, чтобы люди могли определить, какой сервер DHCPv6 по назначенным им адресам, является разумным вариантом использования для каждого из них /64.
A /64 практически не ограничен. Шансы случайного выбора одного и того же адреса ничтожны. Не то чтобы этот отдаленный шанс имел значение, когда они используют отдельные сети.
И в качестве окончательной защиты от взлома, IP-хосты должны делатьобнаружение дубликатов адресовна их IP-адресах. В худшем случае это предотвращает долгое существование дублирующихся адресов, в лучшем случае умный клиент DHCPv6 отправит отказ на сервер.
Видимо, сервер Windows DHCPv6не реализует отказоустойчивость. Нехватка адресов IPv6 не является одной из причин отказа от внедрения этой функции.