Я начинаю экспериментировать с IPv6 и пытаюсь работать в рамках ограничений существующей платформы и набора сервисов. Прямо сейчас я пытаюсь заставить DNS работать через IPv6 с помощью pdnsd.
С моей клиентской машины я могу ping6 и ssh (используя адрес IPv6) на сервер, на котором запущен pdnsd (и наоборот). Когда я выполняю поиск хоста с клиентского компьютера, который вызывает запрос к моему серверу, на котором запущен pdnsd, с помощью «tcpdump ip6» я вижу, что DNS-запрос уходит, ища запись AAAA. Когда отладка включена, я вижу следующее, регистрируемое pdnsd на сервере каждый раз, когда делается запрос:
pdnsd [4032]: не удалось обнаружить адрес назначения udp
Поиск того же хоста через pdnsd локально с сервера, на котором запущен pdnsd, работает нормально. Любые идеи? Кто-нибудь еще использует pdnsd с адресами IPv6?
Может быть, это поможет кому-то другому в будущем.
Я использовал версию pdnsd для дистрибутива Debian, которая, очевидно, скомпилирована с включенным "обнаружением адреса источника". Я получил исходный код и настроил его с помощью:
./configure --disable-src-addr-disc --enable-ipv6 --prefix = / usr --sysconfdir = / и т. д.
После развертывания этой версии я могу разрешить проблему с удаленного компьютера.
Признаюсь, я действительно не понимаю, какие компромиссы заключаются в включении / исключении опции обнаружения исходного адреса, кроме того, что она не работает для меня с включенной опцией.
Однако для моих краткосрочных экспериментов достаточно просто заставить его работать. :)