У меня маршрутизированная / 64 от моего провайдера, и я использую radvd. Мои клиенты (Linux, Windows) работают без дополнительной настройки, когда они подключены к маршрутизатору. Все они назначают себе уникальные адреса с префиксом ISPs / 64 через SLAAC для временного и постоянного (1) назначения адресов.
Я не использую DHCPv6 и не собираюсь этого делать. Как я узнал здесь , для клиентов SLAAC совершенно бесполезно, если они не имеют специальной конфигурации для использования назначенного адреса DHCP, потому что они, скорее всего, будут игнорировать его по умолчанию (2), что хорошо и в любом случае предпочтительнее. Я абсолютно не хочу делать какую-либо работу на «стандартных» клиентских машинах, которые подключаются к сети.
Итак, пункт (1) выше: адреса SLAAC IPv6, используемые клиентами, на самом деле не постоянны. Помещение их в Bind для DNS AAAA-записи работает ... на некоторое время. Это суть моей проблемы.
Я не могу понять, как заставить DNS-сервер заполнять свои записи на основе IP-адресов SLAAC.
Вопрос:
1) Может ли radvd запустить скрипт на RA, а затем перейти к шагу 2 ...
2) Из предыдущего шага я знаю, что у меня есть новый адрес FE80 для нового клиента. Как я могу получить глобальный IPv6-адрес этого клиента, который он назначил себе, используя его адрес FE80?
3) Затем я хотел бы обновить запись Bind DNS, указав его глобальный IPv6-адрес, полученный на шаге 2.
Вышеперечисленные вещи, которые я пытаюсь выполнить, выглядят так, как будто они должны быть намазаны по всему Интернету - я изо всех сил пытаюсь выяснить, что я делаю неправильно, что делает мой вариант использования настолько редким. Есть ли уже механизм, который автоматически выполняет это, что я упускаю (имея в виду, что DHCPv6 исключен)?
С уважением и благодарностью
(2) Клиенты SLAAC Ubuntu определенно игнорируют назначения DHCPv6, даже когда radvd сообщает им об этом. На самом деле, Ubuntu (а может и больше) даже имеет старую ошибку при использовании в этой конфигурации, когда он фактически не добавляет маршрут, что делает соединение бесполезным без какого-либо ручного вмешательства. Я предполагаю, что эта ошибка имеет очень низкий приоритет, так как DHCPv6 в сочетании с radvd на самом деле не является рекомендуемым решением, и я прекрасно с этим справляюсь.
Ответы:
Radvd рассылает многоадресные сообщения с информацией о сети, но не получает от клиентов ответов о том, что они делают с этой информацией. Так (1) не работает.
Локальные адреса (
fe80:
адреса) не связаны с глобальными одноадресными адресами, которые использует клиент. Этап (2) поэтому также невозможен.Общие решения для того, что вы хотите сделать:
A
флаг в RA) и позвольте серверу DHCPv6 поместить адреса в DNS. Устройства на базе Android не будут работать в такой среде, поэтому не очень хорошая идея.Помимо этого вы также можете создавать сценарии на устройствах, где вы можете видеть как MAC-адрес, так и IPv6-адреса, используемые в сети, например, на коммутаторах и маршрутизаторе шлюза по умолчанию. Вы можете написать скрипт, который отслеживает, какие IPv6-адреса используются, посмотреть MAC-адрес, чтобы определить, какое это физическое устройство, найти имя хоста для этого устройства в базе данных, а затем обновить DNS на основе этого. Я не думаю, что есть стандартное программное обеспечение, которое сделает это за вас.
источник