Ubuntu20.04でDNSの設定を変更する

ubuntu20.04 LTS server で DNSの問い合わせ先を変更する

今までは、CentOS7,8 を使用していたため「/etc/resolv.conf」を変更するものだと思っていたが、
Ubuntu 20.04 ではどうやら違うらしい。

Netplan とは

ubuntu では、ネットワークの設定(IP address , default gateway , nameserver ...etc)は、「Netplan」というネットワーク構成ユーティリティを使用することを推奨してるっぽい。
以下、Canonical公式ページ
netplan.io

CentOSでよくお世話になった、「NetworkManager」や「systemd-networkd」デーモンのフロントエンドで動作する構成ファイルみたいな感じ。

Netplan 使用方法

「Netplan」の構成ファイルは、「/etc/netplan」ディレクトリにあります。
Ubuntu 20.04 server では、デフォルトで「00-installer-config.yaml」ファイルが存在していた。
中身はこんな感じ。
ファイルの拡張子に「yaml」がついている通り、Netplanでは「yaml」形式で記述する

# This is the network config written by 'subiquity'
network:
  ethernets:
    enp0s3:
      addresses:
      - 192.168.1.101/24
      gateway4: 192.168.1.1
      nameservers:
        addresses:
        - 192.168.1.1
    enp0s8:
      addresses:
      - 172.19.0.101/24
      nameservers:
        addresses:
        - 172.19.0.254
  version: 2

nameserver の変更

今回は、DNSサーバを別途ローカル内に構築し、それに対して問い合わせを行うように設定する。

network:
  ethernets:
    enp0s3:
      addresses:
      - 192.168.1.101/24
      gateway4: 192.168.1.1
      nameservers:
        addresses:
         [192.168.1.254,8.8.8.8,4.4.4.4]
    enp0s8:
      addresses:
      - 172.19.0.101/24
      gateway4: 172.19.0.254
      nameservers:
        addresses:
        - 172.19.0.254
  version: 2

以上のように設定すればOK。

設定の反映

netplan apply

これで設定が反映され、シャットダウンしても設定は残るはず。