NetworkManagerを有効にしている場合は、/etc/resolv.conf
がNetworkManagerの管理下にあるため、ファイルを編集してDNS関連の設定をしていたとしても、NetworkManagerを再起動したり、ホストを再起動した時にresolv.conf
が再生成されるため、これまでに記入した設定が上書きされて消えてしまうことになる。
resolv.conf
にGenerated by NetworkManager
と記述されていることからもファイルが生成されたものであることが分かる。
cat /etc/resolv.conf
# Generated by NetworkManager
search example.com
nameserver 192.0.2.1
NetworkManagerの設定ファイルである/etc/NetworkManager/NetworkManager.conf
のmain
のセクションにdns=none
の設定を追加して、NetworkManagerを再起動することで、それ以降はresolv.conf
が自動に生成されなくなる。
vi /etc/NetworkManager/NetworkManager.conf
---
[main]
dns=none
---
systemctl restart NetworkManager
NetworkManager.conf: NetworkManager Reference Manual
none
: NetworkManager will not modify resolv.conf. This impliesrc-manager
unmanaged
ネットワーク周りの設定を全てNetworkManagerで管理できていれば問題はないのかもしれないが、resolv.conf
を直接編集することでリゾルバの設定を細かく変えたいというような場合は、NetworkManagerがresolv.conf
を自動で生成しないように設定するとよいだろう。