めっちゃハマった
環境
- Ubuntu 17.04以降
ネームサーバーを変更できない問題
DNSの変更は/etc/resolv.conf、という時代は古い。Ubuntu 17.04以降ではsystemd-resolvedがデフォルトで動作しているため、/etc/resolv.confを書き換えても変更されない
そもそも/etc/resolv.confは/run/resolvconf/resolv.confのシンボリックリンクになっている()
$ ls -l /etc/resolv.conf lrwxrwxrwx 1 root root 29 1月 15 11:13 /etc/resolv.conf -> ../run/resolvconf/resolv.conf
UbuntuでDNSサーバーを変更する方法
systemd-resolve --status
を実行すると現在の設定されているDNSサーバーが表示される。
変更したいときは /etc/systemd/resolved.confのDNSの項目に追加する 複数ある場合は半角スペースで区切って追加
[Resolve] DNS=8.8.8.8 8.8.4.4
で再起動して反映
systemctl restart systemd-resolved
再度systemd-resolve --status
を実行すると設定したネームサーバーに変わっている。
# systemd-resolve --status Global DNS Servers: 8.8.8.8 8.8.4.4 DNSSEC NTA: 10.in-addr.arpa 16.172.in-addr.arpa 168.192.in-addr.arpa 17.172.in-addr.arpa 18.172.in-addr.arpa 19.172.in-addr.arpa 20.172.in-addr.arpa 21.172.in-addr.arpa 22.172.in-addr.arpa 23.172.in-addr.arpa 24.172.in-addr.arpa 25.172.in-addr.arpa 26.172.in-addr.arpa (略)