UbuntuではDNSサーバーの指定は /etc/resolv.conf で 127.0.0.53 と指定されていますが、実際はDHCPサーバから取得したDNSサーバや、GUI等で指定したDNSサーバが参照されます。
従って、DNSサーバーの指定は、GUI等での指定や、DHCPサーバの設定変更で行う必要があります。/etc/resolv.conf を直接いじったりでは、いけません。(このあたりの話は次の記事に書いています)
ここでは、DNSサーバーをCUIから指定する方法を説明します。
Ubuntuで指定されているDNSサーバ 127.0.0.53 – パソコン鳥のブログ
NetplanのYAMLファイルで指定
.yaml に dhcp4: false の行がある場合
/etc/netplan/ の下にある .yaml ファイルに dhcp4: false の行がある場合の設定方法です。
(dhcp4 の行自体が無い場合は、以降の「nmtuiコマンドで設定」の手順を確認してください)
次のように nameservers の下の addresses の箇所でDNSサーバーを記述します。
以下の例では 10.8.46.2 です。
network:
ethernets:
eth0:
dhcp4: false
addresses:
- 10.8.46.57/24
gateway4: 10.8.46.1
nameservers:
addresses:
- 10.8.46.2
version: 2
変更後、次のコマンドで反映させます。
netplan apply
.yaml に dhcp4: true の行がある場合
/etc/netplan/ の下にある .yaml ファイルに、次のように dhcp4: true の行がある場合です。
(dhcp4 の行自体が無い場合は、以降の「nmtuiコマンドで設定」の手順を確認してください)
network:
ethernets:
eth0:
dhcp4: true
この場合は、DHCPサーバーで設定されているDNSサーバーが使用されます。
(使用するDNSサーバーは /run/systemd/resolve/resolv.conf で確認できます)
この時、DHCPサーバーでの設定を無視してDNSサーバーを指定することはできません。
無理やり下のように DNSサーバーの設定を記述できますが(netplan apply 実行で反映)、DHCPサーバーから取得したDNSサーバーと、ここで指定したDNSサーバー両方が指定されます。
このようにUbuntuで複数DNSサーバが指定された場合は、最も早いDNSサーバの応答が利用されます。
network:
ethernets:
eth0:
dhcp4: true
nameservers:
addresses:
- 8.8.8.8
version: 2
nmtuiコマンドで設定
/etc/netplan/ の下にある .yaml ファイルが、次のように renderer: NetworkManager となっている場合は、nmtuiコマンドで設定します。
network:
version: 2
renderer: NetworkManager
nmtuiコマンドを実行します。
nmtui
次のようなメニューが出るので、”接続の編集”を選択して Enterを押します。
設定を編集する接続を選択して Enter を押します。
以降は、「IPアドレスを手動設定している場合」「IPアドレスを自動取得にしている場合」いずれかの手順を確認してください。
IPアドレスを手動設定している場合
次のような画面になるので、DNSサーバーを指定し、<OK>を選択してEnterを押します。
後は Escキーを押すと、元の画面に戻っていき、最後に nmtui が終了します。
設定の反映は次のコマンドで行います。
systemctl restart NetworkManager
IPアドレスを自動取得にしている場合
次のような画面になるので、<表示する> を選択して Enter を押します。
DNSサーバーの箇所の <追加…> を押します。
DNSサーバーを記述します。
また、”自動的に取得された DNS パラメーターを無視” にチェックします。
もしチェックしない場合は、DHCPサーバーから取得したDNSサーバーと、ここで指定したDNSサーバー両方が指定されたことになります。Ubuntuで複数DNSサーバが指定された場合は、最も早いDNSサーバの応答が利用されます。
最後に、画面下部の <OK>を選択してEnterを押します。
後は Escキーを押すと、元の画面に戻っていき、最後に nmtui が終了します。
設定の反映は次のコマンドで行います。
systemctl restart NetworkManager
コメント