現在の設定では、dnsmasq
ホームサーバー(Void Linux)で1つのインスタンスが実行されており、これをプライマリDNSとして使用する3つのGNU / Linuxデバイス(1 Manjaro、1 Arch、1 Linux Mint 20.1)があります。
関連性がないと思われる質問に対してmdnsを使用して名前解決をテストしていますがgetent
、ログを表示して実行して、dnsmasq
まだ指定されていない最上位ドメインが自動的に追加されることstrace getent
を発見しました。getent
.station
getent hosts home-server
明らかにする
dnsmasq[24671]: query[AAAA] home-server.station from 192.168.0.6
dnsmasq[24671]: forwarded home-server.station to 9.9.9.9
dnsmasq[24671]: query[AAAA] home-server.station from 192.168.0.6
dnsmasq[24671]: forwarded home-server.station to 9.9.9.9
dnsmasq[24671]: query[AAAA] home-server.station from 192.168.0.6
dnsmasq[24671]: forwarded home-server.station to 9.9.9.9
dnsmasq[24671]: forwarded home-server.station to 95.216.24.230
dnsmasq[24671]: forwarded home-server.station to 89.233.43.71
dnsmasq[24671]: forwarded home-server.station to 78.46.244.143
dnsmasq[24671]: forwarded home-server.station to 146.255.56.98
dnsmasq[24671]: forwarded home-server.station to 78.46.244.143
dnsmasq[24671]: forwarded home-server.station to 146.255.56.98
dnsmasq[24671]: forwarded home-server.station to 78.46.244.143
dnsmasq[24671]: forwarded home-server.station to 146.255.56.98
dnsmasq[24671]: forwarded home-server.station to 45.90.57.121
dnsmasq[24671]: forwarded home-server.station to 80.67.169.40
dnsmasq[24671]: forwarded home-server.station to 104.244.78.231
dnsmasq[24671]: reply home-server.station is NXDOMAIN
dnsmasq[24671]: query[AAAA] home-server from 192.168.0.6
dnsmasqログと
socket(AF_INET, SOCK_DGRAM|SOCK_CLOEXEC|SOCK_NONBLOCK, IPPROTO_IP) = 4
setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0
connect(4, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("192.168.0.100")}, 16) = 0
poll([{fd=4, events=POLLOUT}], 1, 0) = 1 ([{fd=4, revents=POLLOUT}])
sendto(4, "\2\17\1\0\0\1\0\0\0\0\0\0\vhome-server\7station"..., 37, MSG_NOSIGNAL, NULL, 0) = 3
getent
に電話してくださいstrace
。
.station
TLDに関する情報が見つかりません。
getent
この基本的な動作が存在する理由と.station
そのソースを知っている人はいますか?
/etc/nsswitch.conf
hosts
Manjaroの私の道
hosts: files mymachines mdns4_minimal [NOTFOUND=return] resolve dns mdns4 myhostname
ミント
hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname
答え1
getent hosts
hosts
実行ラインはnsswitch.conf
何をすべきかを教えてくれます。strace
ユニキャストDNSクエリを192.168.0.100に送信していることを示します。
resolve
ユニキャストDNSを使用できる2つのホスト名解決サービスがありますdns
。これらのいずれかまたは両方がstation
DNSプライマリドメインとして使用されるように設定されています(おそらくDHCPクライアントによって)。
の場合をresolve
実行しますresolvectl status
。の場合をdns
実行しますcat /etc/resolv.conf
。これにより、どのDNS解決サービスstation
にドメインが設定されているかを知らせます。
(通常のDNSを使用しないように設定しない限り、2resolve
つを組み合わせて使用することはベルト構成と似ています。通常、どちらか一方のみが必要です。)resolve
dns
NetworkManagerを使用してネットワークインターフェイスを設定し、DHCPを使用している場合は、最新のファイル(*.lease
またはそれに対応するファイル、これはNetworkManagerが使用するように設定されているDHCPクライアントによって異なる場合があります)を見て、/var/lib/NetworkManager
実際にIPアドレスを提供したDHCPサーバーを確認できます。あります。追加のDHCPオプションも付属しています。
DHCPサーバーによって提供されるDHCPオプションを表示するもう1つの方法は、実行して構成されnmcli c show
た接続をリストし、アクティブな接続の名前を見つけて使用することですnmcli c show <name of active connection> | grep DHCP..OPTION
。
Vodafone Power Stationはルーターなので、ホームネットワークのDHCPサーバーとしても機能する可能性が高いです。.station
これは、すべてのDHCPクライアントに伝播されるDNSドメインの工場出荷時の設定でもあります。ルータの設定で変更できます。
答え2
関係のない質問のために最終的に確認してみると、クライアントとして使用するすべてのディストリビューションで作成されました/etc/resolv.conf
。NetworkManager
search station
@ Kusalanandaの提案によると、Vodafone Power Stationはネットワーク管理者がIPアドレスを持つファイルにDNSサーバーとしてオプションを追加するように思われます。この行を削除すると、http://vodafone.station
Firefoxで名前解決が失敗します。サイトのDNSによって解決されました)