LANにDHCPを提供するdnsmasqを実行するローカルサーバー(192.168.0.10)と、DHCPクライアントのホスト名を解決するDNSサーバーを持っています。
16.04を実行していたとき、これは正常に機能しました。サーバーからDHCPアドレスを取得するマシンはすべてDNSサーバーを使用し、ネットワーク上の他のホスト名を解決できます。
ただし、18.04にアップグレードしてから、ホスト名を解決できなくなりました。 18.04はsystemd-resolveを使用するようになったことを理解しています。 DNSサーバーを認識しているようです:
mark@coachz:~$ systemd-resolve --status
Global
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 3 (wlp59s0)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 192.168.0.10
Link 2 (enp58s0f1)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
ただし、ホスト名を解決するためにそれを使用していないようです:
mark@coachz:~$ nslookup homestar
Server: 127.0.0.53
Address: 127.0.0.53#53
** server can't find homestar: SERVFAIL
明示的に伝えた場合、次のことが可能です。
mark@coachz:~$ nslookup homestar 192.168.0.10
Server: 192.168.0.10
Address: 192.168.0.10#53
Name: homestar
Address: 192.168.0.101
DHCPが提供するDNSサーバーを自動的に使用するにはどうすればよいですか?
問題は、dnsmasqサーバーでドメインサフィックスが構成されていないことでした。
次の行を追加しました:domain=lan
を/etc/dnsmasq.conf
に追加してサービスを再起動し、homestar
またはhomestar.lan
のアドレスを問題なく解決できるようになりました。
私は次のように成功しました:
mv resolv.conf resolv.conf-old
ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf