У меня есть два сервера buster, которым назначаются статические IP-адреса через DHCP (dhclient). DHCP-сервер назначает все параметры, включая домен (mydomain.org). Один сервер работает нормально, т.е. hostname -f
. На этом сервере /etc/resolv.conf
правильно:
# Generated by NetworkManager
search mydomain.org
nameserver x.x.x.x
hostname -f
на рабочем сервере возвращает полное доменное имя как надо.
Но другой сервер не получает домен должным образом. hostname -f
просто возвращает имя хоста и /etc/resolv.conf
не заполняется согласно настройкам DHCP:
# Generated by NetworkManager
search lan
nameserver x.x.x.x
Если я запустил вручную sudo dhclient -4 -v
/etc/resolv.conf правильно обновляется с search mydomain.org
. Однако после перезапуска или systemctl restart NetworkManager
/etc/resolv.conf
возвращается в неправильное состояние.
Что мне здесь не хватает? Как заставить networkmanager правильно назначать поисковый домен в /etc/resolv.conf
?
Оказывается, NetworkManager просматривает файлы конфигурации в /etc/NetworkManager/system-connections
. Глядя на файл Wired Connection 1
в этой папке я нашел несколько статических назначений под заголовком [ipv4], в частности проблема была в этой строке:
[ipv4]
dns-search=lan
удаление этой строки и перезапуск NetworkManager с systemctl restart NetworkManager
исправил проблему.