У меня есть два недавно созданных экземпляра 20.04 на AWS (Amazon Web Services). Один относится к типу t2, а другой - к типу t3.
В этих экземплярах настроены как IPv4, так и IPv6. Как вы, наверное, знаете, эти адреса не статичны с точки зрения ОС, а получаются через DHCP AWS. Однако такой экземпляр всегда получает одинаковые адреса IPv4 и IPv6.
У обоих экземпляров одна и та же проблема.
Я установил и настроил DNS-сервер (привязка 9.16.1). DNS-сервер запускается автоматически после перезагрузки, но, похоже, не привязан к IPv6-адресу (он использует только «локальный адрес ссылки»).
Например, netstat
после перезагрузки дает:
# netstat -natpu | grep /named
tcp 0 0 172.31.xx.xxx:53 0.0.0.0:* LISTEN 581/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 581/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 581/named
tcp6 0 0 fe80::xxx:xxxx:xxxx::53 :::* LISTEN 581/named
tcp6 0 0 ::1:53 :::* LISTEN 581/named
tcp6 0 0 ::1:953 :::* LISTEN 581/named
udp 0 0 172.31.xx.xxx:53 0.0.0.0:* 581/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 581/named
udp6 0 0 ::1:53 :::* 581/named
udp6 0 0 fe80::xxx:xxxx:xxxx::53 :::* 581/named
Итак, мне нужно перезапустить сервер:
# systemctl restart named
# netstat -natpu | grep /named
tcp 0 0 172.31.xx.xxx:53 0.0.0.0:* LISTEN 31425/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 31425/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 31425/named
tcp6 0 0 fe80::xxx:xxxx:xxxx::53 :::* LISTEN 31425/named
tcp6 0 0 2600:xxxx:xxx:xxxx:x:53 :::* LISTEN 31425/named
tcp6 0 0 ::1:53 :::* LISTEN 31425/named
tcp6 0 0 ::1:953 :::* LISTEN 31425/named
udp 0 0 172.31.xx.xxx:53 0.0.0.0:* 31425/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 31425/named
udp6 0 0 ::1:53 :::* 31425/named
udp6 0 0 2600:xxxx:xxx:xxxx:x:53 :::* 31425/named
udp6 0 0 fe80::xxx:xxxx:xxxx::53 :::* 31425/named
Эта проблема не связана с сетевым интерфейсом, поскольку экземпляры t2 и t3 использовать совсем другие типы сетевых интерфейсов, и предыдущая версия Ubuntu (18.04) не имела такой проблемы.
Я предполагаю, что DNS-сервер запускается очень рано (до того, как глобальный IPv6 будет получен от DHCP и назначен сетевому интерфейсу).
Примечание : Эта проблема также возникает, когда установлены некоторые пакеты (я еще не определил, какие из них), и в результате обрабатываются некоторые триггеры.
Как я могу отложить запуск службы DNS после получения правильного адреса IPv6 от DHCP? Или вы можете предложить другое решение?
У меня возникла та же проблема, и я безуспешно пытался изменить названные скрипты «bind» в 20.04 LTS. Потом передумал, а потом нашел решение отложить запуск именованного сервиса через систему и нашел статью через ASK.
Не знаю, почему инициализация подсистем ipv6 и сетевых интерфейсов занимает так много времени.
Решение, которое я использую, заключается в том, что я добавил строку в файл /lib/systemd/system/named.service. в служебной строфе вот так. «Вставил строку прямо под заголовком строфы».
[Service]
ExecStartPre=-/bin/sleep 10
Похоже, это лучший способ решить эту проблему, поэтому вам не нужно возиться со сценариями запуска, поскольку они будут меняться вместе с пакетами. обновляться со временем.
Я использую несколько ноутбуков Acer с новейшими процессорами I5 9-го поколения поверх SSD-накопителя, и он загружается так быстро, что у меня также есть другие условия гонки с периферийными аппаратными интерфейсами и сценариями запуска брандмауэра, которые можно решить таким же образом. .
Надеюсь, это поможет!