Ubuntu Server 18.04のインストール中に、192.168.0.1
などの間違ったDNSサーバーを提供しました。 8.8.8.8
などの別のサーバーに変更したいのですが、これを行う正しい場所が見つかりません。
/etc/systemd/resolved.conf
でグローバルDNS設定を構成できることを知っています。これで問題は解決しましたが、systemd-resolve --status
に元の間違ったサーバーエントリがまだ表示されています。
Global
DNS Servers: 8.8.8.8
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
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 2 (ens3)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 192.168.0.1
DNS Domain: xyz.com
Sudo systemd-resolve --interface ens3 --set-dns 8.8.8.8
を使用して変更しようとすると、エラーメッセージが表示されます。
The specified interface ens3 is managed by systemd-networkd. Operation refused.
Please configure DNS settings for systemd-networkd managed interfaces directly in their .network files.
残念ながら、/etc/systemd/network/
ディレクトリは空です。 *.network
ファイルはありません。
しかし、/run/systemd/network/10-netplan-ens3.network
でエントリを変更できる設定ファイルを見つけましたが、実行後に間違った値にリセットされます
Sudo systemctl daemon-reload
Sudo systemctl restart systemd-networkd
Sudo systemctl restart systemd-resolved
次に、リンク固有の設定を永続的に変更するにはどうすればよいですか?
編集:入力いただきありがとうございます!
/etc/netplan/01-netcfg.yaml
のDNSサーバーを変更しました
出力cat /etc/netplan/01-netcfg.yaml
:
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
ens3:
addresses: [ 192.168.0.2/24 ]
gateway4: 192.168.0.1
nameservers:
search: [ xyz.com ]
addresses:
- "8.8.8.8"
(たぶん貼り付けのためにスペースが完全に正しくないかもしれません...)
編集2:スペースを再確認しました
編集3:@George Udosenの答えは問題を解決しました、ありがとうございます。
Sudo netplan --debug apply
の出力:
** (generate:10422): DEBUG: 00:54:03.168: Processing input file //etc/netplan/01-netcfg.yaml..
** (generate:10422): DEBUG: 00:54:03.168: starting new processing pass
** (generate:10422): DEBUG: 00:54:03.169: ens3: setting default backend to 1
** (generate:10422): DEBUG: 00:54:03.169: Generating output files..
** (generate:10422): DEBUG: 00:54:03.169: NetworkManager: definition ens3 is not for us (backend 1)
DEBUG:netplan generated networkd configuration exists, restarting networkd
DEBUG:no netplan generated NM configuration exists
DEBUG:device lo operstate is unknown, not replugging
DEBUG:netplan triggering .link rules for lo
DEBUG:device ens3 operstate is up, not replugging
DEBUG:netplan triggering .link rules for ens3
systemd-resolve --status
に正しいDNSサーバーがリストされるようになりました。
...
Link 2 (ens3)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 8.8.8.8
DNS Domain: xyz.com
Netplan構成ファイルを編集して、古いDNSサーバー名を削除し、新しいDNSサーバー名を追加します。 Sudo nano /etc/netplan/01-netcfg.yaml
を使用してファイルを編集すると、次の例のようになります。
network:
version:2
renderer: networkd
ethernets:
enp0s3:
dhcp4: true
nameservers:
search: [mydomain, otherdomain]
addresses: [10.10.10.1, 1.1.1.1]
関心のある行は、設定addresses
の下でnameserver
と表示されている行です。次のように書かれている場合もあります。
nameservers:
search:
- mydomain
- otherdomain
addresses:
- "10.10.10.1"
- "1.1.1.1"
そこのアドレスを希望するアドレスに変更します。インデントを確認してください。次に、thatvでファイルを保存し、変更を適用します。
Sudo netplan --debug apply