Вопрос или проблема
Я только что начал использовать Ubuntu на своем ноутбуке. После настройки я не смог подключиться к своему серверу по SSH. После некоторых поисков я выяснил, что DHCP-клиент на моем ноутбуке и сервере (оба работают на 24.04 LTS) устанавливает мой шлюз по умолчанию в качестве вторичного DNS-сервера, хотя это не настроено на DHCP-сервере, и никакое другое устройство в моей сети этого не делает.
Сначала я узнал это из сетевых настроек. Это относится как к Ethernet, так и к Wi-Fi и VPN, если используется DHCP.
Настройки Wi-Fi в Ubuntu 24.04 Desktop
Затем я проверил настройки resolv.conf, которые, конечно, показывали 127.0.0.53. Затем я проверил systemd-resolved.
user@lenovo:~$ cat /etc/systemd/resolved.conf
# Этот файл является частью systemd.
#
# systemd — это свободное программное обеспечение; вы можете перераспределять его и/или модифицировать его в соответствии с
# условиями GNU Lesser General Public License, как это опубликовано Free
# Software Foundation; либо версии 2.1 Лицензии, либо (по вашему выбору)
# любой более поздней версии.
#
# Записи в этом файле показывают значения по умолчанию при компиляции. Локальная конфигурация
# должна быть создана путем изменения этого файла (или его копии, помещенной в
# /etc/, если оригинальный файл находится в /usr/), или путем создания "дроп-инов" в
# директории /etc/systemd/resolved.conf.d/. Последний вариант обычно
# рекомендуется. Значения по умолчанию могут быть восстановлены просто удалив основной
# конфигурационный файл и все дроп-ины, находящиеся в /etc/.
#
# Используйте 'systemd-analyze cat-config systemd/resolved.conf', чтобы отобразить полную конфигурацию.
#
# См. resolved.conf(5) для подробностей.
[Resolve]
# Некоторые примеры DNS-серверов, которые могут использоваться для DNS= и FallbackDNS=:
# Cloudflare: 1.1.1.1#cloudflare-dns.com 1.0.0.1#cloudflare-dns.com 2606:4700:4700::1111#cloudflare-dns.com 2606:4700:4700::1001#cloudflare-dns.com
# Google: 8.8.8.8#dns.google 8.8.4.4#dns.google 2001:4860:4860::8888#dns.google 2001:4860:4860::8844#dns.google
# Quad9: 9.9.9.9#dns.quad9.net 149.112.112.112#dns.quad9.net 2620:fe::fe#dns.quad9.net 2620:fe::9#dns.quad9.net
#DNS=
#FallbackDNS=
#Domains=
#DNSSEC=no
#DNSOverTLS=no
#MulticastDNS=no
#LLMNR=no
#Cache=no-negative
#CacheFromLocalhost=no
#DNSStubListener=yes
#DNSStubListenerExtra=
#ReadEtcHosts=yes
#ResolveUnicastSingleLabel=no
#StaleRetentionSec=0
и resolvctl напрямую
user@lenovo:~$ resolvectl status
Global
Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: stub
Link 2 (enp0s31f6)
Current Scopes: none
Protocols: -DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Link 3 (wlp0s20f3)
Current Scopes: DNS
Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 192.168.0.1
DNS Servers: 192.168.0.207 192.168.0.1
user@lenovo:~$
Я вижу, что resolvctl устанавливает этот сервер имен, но не знаю, почему. Это ожидаемое поведение? Мне просто нужно смириться с этим и использовать ручные настройки DNS для всей локальной сети?
Забудьте об этом, я проверил свои устройства, и у всех из них теперь шлюз по умолчанию в DNS. Такого не было несколько недель. Виноват мой маршрутизатор TPLink AX1800. Я не знаю, вызвана ли это обновлением прошивки или я просто осознал это сейчас, но это определенно DHCP-сервер.
Ответ или решение
Проблема, с которой вы столкнулись, заключается в том, что ваш маршрутизатор TP-Link AX1800 добавляет основной шлюз в качестве DNS-сервера в DHCP-сервере. Это поведение может возникать по нескольким причинам и может быть связано с прошивкой маршрутизатора.
Вот несколько рекомендаций по решению данной проблемы:
-
Проверка настроек маршрутизатора:
- Войдите в административный интерфейс вашего маршрутизатора, используя его IP-адрес (обычно что-то вроде 192.168.0.1 или 192.168.1.1).
- Проверьте раздел DHCP, чтобы убедиться, что в качестве DNS-серверов у вас указаны правильные DNS-адреса. Обычно здесь можно указать первичный и вторичный DNS-серверы (например, 8.8.8.8 и 8.8.4.4 от Google или 1.1.1.1 и 1.0.0.1 от Cloudflare).
-
Обновление прошивки маршрутизатора:
- Убедитесь, что вы используете последнюю версию прошивки для вашего маршрутизатора. Иногда производители исправляют баги и улучшают функциональность с помощью обновлений.
-
Изменение настроек на клиентских устройствах:
- Если проблема сохраняется, вы можете вручную настроить DNS на клиентских устройствах, чтобы игнорировать конфигурацию DHCP. Для этого откройте настройки сети на вашем Ubuntu и укажите желаемые DNS-серверы в ручном режиме.
- Вы также можете редактировать файл /etc/systemd/resolved.conf для указания конкретных DNS-серверов, добавив строки:
[Resolve] DNS=8.8.8.8 8.8.4.4
-
Отключение опции "DNS-сервер шлюза" (если доступно):
- В некоторых маршрутизаторах можно отключить автоматическое использование шлюза в качестве DNS. Это может быть упомянуто в документации к маршрутизатору.
-
Ограничение настройками DHCP:
- Вы можете рассмотреть возможность использования статической IP-адресации на ваших устройствах или настроить DHCP-сервер на использование конкретных DNS-серверов.
После внесения изменений обязательно перезагрузите ваши устройства и маршрутизатор, чтобы новые настройки вступили в силу. Надеюсь, это поможет решить вашу проблему с неправильной конфигурацией DNS! Если проблема сохраняется, возможно, стоит рассмотреть замену маршрутизатора на более надежный или подключить другой DHCP-сервер в сети.