В настоящее время я тестирую Ubuntu 20.04.1 (после десятилетий использования Fedora от Core 2 до 31), и в настоящее время у меня есть проблема с локальным / частным разрешением DNS.
Систематически получаю сообщения об ошибках, связанных с этой уязвимостью:
Сервер вернул ошибку NXDOMAIN, смягчение потенциального нарушения DNS DVE-2018-0001, повторная попытка транзакции с пониженным уровнем возможностей UDP
Упрощенный контекст:
Для упрощения, рассмотрим устройство с именем 'nas'.
Из коробки, моя Ubuntu 20.04.1 LTS отказывается разрешать nas, независимо от используемой команды, см. конец этого вопроса.
После обильного чтения на Stackoverflow и форуме, я безуспешно пытался:
sudo systemd-resolve --flush-caches
Тесты:
systemd-resolve nas
nas: resolve call failed: No appropriate name servers or networks for name found
dig nas
; <<>> DiG 9.16.1-Ubuntu <<>> nas
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 65082
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;nas. IN A
;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: mer. juil. 29 15:13:09 CEST 2020
;; MSG SIZE rcvd: 32
dig @192.168.56.1 nas
; <<>> DiG 9.16.1-Ubuntu <<>> @192.168.56.1 nas
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 34633
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;nas. IN A
;; AUTHORITY SECTION:
. 86064 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2020072900 1800 900 604800 86400
;; Query time: 24 msec
;; SERVER: 192.168.56.1#53(192.168.56.1)
;; WHEN: mer. juil. 29 15:13:30 CEST 2020
;; MSG SIZE rcvd: 107
nslookup nas
Сервер: 127.0.0.53 Адрес: 127.0.0.53#53
** сервер не может найти nas: SERVFAIL
Текущее содержимое моего /etc/resolv.conf (по умолчанию):
nameserver 127.0.0.53
options edns0
Текущее содержимое моего /etc/nsswitch.conf:
passwd: files systemd
group: files systemd
shadow: files
gshadow: files
hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
Конечно, добавление @ip/name mapping в /etc/hosts работает, но это НЕ решение.
Как я могу решить эту проблему?
.Эта ошибка означает, что DNS-сервер может не разрешить домен. Обычно это означает, что ваша локальная настройка DNS отправляет запросы о локальных доменах (.local, .lan, .home, ...) на серверы remode dns. В моем случае я настроил «Domains=» (с моим локальным поисковым доменом) в /etc/systemd/resolved.conf, но не «DNS=» (оставив это DHCP), что неправильно. Когда DNS-сервер предоставляется DHCP, домен поиска должен быть указан таким же образом.