По какой-то причине мой DNS, похоже, установлен на 127.0.0.53. Это не такДействительнопроблема, так как мой локальный (т.е. на моем ноутбуке) DNS, похоже, перенаправляет DNS-запросы на шлюз по умолчанию. Но я бы хотел, чтобы так не было. Полагаю, я установил какой-то DNS-сервер в прошлом...
Когда я запускаю $ nslookup
, сервер по умолчанию всегда 127.0.0.53.
Я нашел пост, предлагающий установить DNSStubListener=no
, /etc/systemd/resolved.conf
но это привело к отсутствию DNS-запросов. Я, конечно, мог бы вручную ввести свой шлюз по умолчанию, но тогда мне пришлось бы менять его каждый раз, когда я приносил свой ноутбук на работу.
Какие-либо предложения?
EDIT: Добавление строки «hosts» /etc/nsswitch.conf
:
hosts: files mdns4_minimal [NOTFOUND=return] dns
решение1
DNS-серверы управляются systemd-resolved
, или dnsmasq
(если у вас это установлено).
Если dnsmasq
он установлен, необходимо отредактировать /etc/systemd/resolved.conf, иначе у вас будут два механизма DNS, конкурирующие за порт 53, так что...
изменять:
#DNSStubListener=yes
к этому:
DNSStubListener=no
/etc/resolv.conf обычно содержит 127.0.0.53, который является локальным адресом для локального механизма DNS.НЕТвручную отредактируйте этот файл (об этом прямо в файле говорится).
Чтобы узнать, какие именно DNS-серверы используются, сделайте следующее...
resolvectl status | grep -i "DNS Serve"
Скорее всего, он сообщит 192.168.0.1 (адрес вашего маршрутизатора или DNS-серверов вашего VPN-сервиса, если вы используете VPN). Ваш маршрутизатор, скорее всего, будет использовать DNS-серверы вашего интернет-провайдера, если только вы не изменили это вручную на странице конфигурации администратора маршрутизатора (настоятельно рекомендуется).