再帰の途中でDNSの問題を解決するにはどうすればよいですか?


13

DNSに本当に奇妙な問題があります。ドメイン名(strugee.net)は、一部のネットワークでは解決できず、他のネットワークでは解決できます。

たとえば、私のホームネットワーク(サーバーが接続されている同じネットワーク):

% dig strugee.net

; <<>> DiG 9.10.3-P4 <<>> strugee.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10086
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;strugee.net.           IN  A

;; ANSWER SECTION:
strugee.net.        1800    IN  A   216.160.72.225

;; Query time: 186 msec
;; SERVER: 205.171.3.65#53(205.171.3.65)
;; WHEN: Sat Apr 16 15:42:36 PDT 2016
;; MSG SIZE  rcvd: 56

ただし、Digital Oceanにあるサーバーにログインすると、ドメインの解決に失敗します。

% dig strugee.net      

; <<>> DiG 9.9.5-9+deb8u3-Debian <<>> strugee.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 58551
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;strugee.net.           IN  A

;; Query time: 110 msec
;; SERVER: 2001:4860:4860::8844#53(2001:4860:4860::8844)
;; WHEN: Sat Apr 16 18:44:25 EDT 2016
;; MSG SIZE  rcvd: 40

ただし、権限のあるネームサーバーに直接アクセスしても問題ありません。

% dig @dns1.registrar-servers.com strugee.net   

; <<>> DiG 9.9.5-9+deb8u3-Debian <<>> @dns1.registrar-servers.com strugee.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30856
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;strugee.net.           IN  A

;; ANSWER SECTION:
strugee.net.        1800    IN  A   216.160.72.225

;; AUTHORITY SECTION:
strugee.net.        1800    IN  NS  dns3.registrar-servers.com.
strugee.net.        1800    IN  NS  dns4.registrar-servers.com.
strugee.net.        1800    IN  NS  dns2.registrar-servers.com.
strugee.net.        1800    IN  NS  dns1.registrar-servers.com.
strugee.net.        1800    IN  NS  dns5.registrar-servers.com.

;; Query time: 3 msec
;; SERVER: 216.87.155.33#53(216.87.155.33)
;; WHEN: Sat Apr 16 18:46:36 EDT 2016
;; MSG SIZE  rcvd: 172

私のドメインを解決できない大規模なネットワークのどこかに問題があることは明らかですが、どこにあるのかわかりません。dig役に立つかもしれないオプションのマンページをざっと読みましたが、特に役立つものは見つかりませんでした。

私は、ドメインレジストラとしてもDNSホスティングとしてもNamecheapを利用しています。DNSSECオプションがオンになっています。最近DNS設定を変更していません。

この問題をデバッグして問題のあるネームサーバーを見つけるにはどうすればよいですか?


7
ドメインの名前を提供していただきありがとうございます。このような問題は、その情報なしにServerfaultでトラブルシューティングするのが非常に困難です。
アンドリューB

@AndrewBああ、私は知っています。どういたしまして、私を信頼してください:)
strugee

2
@AndrewBの答えは理にかなっており、私には正しいようです。しかし、読む前に、失敗したクエリはIPV6ネームサーバーを使用し、成功したクエリはIPV4を使用していることに気付きました。多くの場合(この場合はそうではありません)、これは悪いIPV6構成を暗示しており、エイリアスではなくネームサーバーの数値IPV [4/6]アドレスを明示的に使用すると役立ちます。
Guntram Blohmは、Monicaをサポートします

@Guntram返信があることを心に留めておく限り ネームサーバーから、少なくともDNSサーバーに接続できることを意味します。人々が間違った印象でそこから離れないようにしたいだけです... SERVFAIL上流の問題を示しているかもしれませんが、それでも応答パケットを示しています。
アンドリューB

@GuntramBlohmあなたは何かの上にいます。strugee.netNSレコードは5つありますが、AAAAグルーレコードはグルーレコードのみAです。さらに悪いことに、これらの5つのAグルーレコードは、2つの異なるIPアドレスのみを指します。それは非常に脆いセットアップのようです。たとえそれが目前の問題の根本原因ではない場合でも、注意が必要です。
カスペルド

回答:


24

この問題をデバッグして問題のあるネームサーバーを見つけるにはどうすればよいですか?

daxd5はいくつかの良い開始アドバイスを提供しましたが、ここでの唯一の本当の答えは、再帰DNSサーバーのように考える方法を知る必要があるということです。一貫性のない結果になる可能性のある権限のあるレイヤーには多数の構成ミスがあるためSERVFAIL、DNS専門家またはオンライン検証ツールが必要です。

とにかく、目標はあなたを助けることから抜け出すことではありませんが、私はあなたがその質問に対する決定的な答えがないことを確実に理解したかったです。


あなたの特定のケースでstrugee.netは、DNSSECで署名されたゾーンのように見えます。これは、参照チェーンにDSとのRRSIGレコードが存在することから明らかです。

# dig +trace +additional strugee.net
<snip>
strugee.net.            172800  IN      NS      dns2.registrar-servers.com.
strugee.net.            172800  IN      NS      dns1.registrar-servers.com.
strugee.net.            172800  IN      NS      dns3.registrar-servers.com.
strugee.net.            172800  IN      NS      dns4.registrar-servers.com.
strugee.net.            172800  IN      NS      dns5.registrar-servers.com.
strugee.net.            86400   IN      DS      16517 8 1 B08CDBF73B89CCEB2FD3280087D880F062A454C2
strugee.net.            86400   IN      RRSIG   DS 8 2 86400 20160423051619 20160416040619 50762 net. w76PbsjxgmKAIzJmklqKN2rofq1e+TfzorN+LBQVO4+1Qs9Gadu1OrPf XXgt/AmelameSMkEOQTVqzriGSB21azTjY/lLXBa553C7fSgNNaEXVaZ xyQ1W/K5OALXzkDLmjcljyEt4GLfcA+M3VsQyuWI4tJOng184rGuVvJO RuI=
dns2.registrar-servers.com. 172800 IN   A       216.87.152.33
dns1.registrar-servers.com. 172800 IN   A       216.87.155.33
dns3.registrar-servers.com. 172800 IN   A       216.87.155.33
dns4.registrar-servers.com. 172800 IN   A       216.87.152.33
dns5.registrar-servers.com. 172800 IN   A       216.87.155.33
;; Received 435 bytes from 192.41.162.30#53(l.gtld-servers.net) in 30 ms

先に進む前に、署名が有効かどうかを確認する必要があります。DNSVizは、この目的で頻繁に使用されるツールであり、実際に問題があることを確認します。写真の怒りの赤は、問題があることを示していますが、すべてをマウスで移動するのではなく、左側のサイドバーの[ 通知]を展開できます。

RRSIG strugee.net/A alg 8, id 10636: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
RRSIG strugee.net/DNSKEY alg 8, id 16517: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
RRSIG strugee.net/DNSKEY alg 8, id 16517: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
RRSIG strugee.net/MX alg 8, id 10636: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
RRSIG strugee.net/NS alg 8, id 10636: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
RRSIG strugee.net/SOA alg 8, id 10636: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
RRSIG strugee.net/TXT alg 8, id 10636: The Signature Expiration field of the RRSIG RR (2016-04-14 00:00:00+00:00) is 2 days in the past.
net to strugee.net: No valid RRSIGs made by a key corresponding to a DS RR were found covering the DNSKEY RRset, resulting in no secure entry point (SEP) into the zone. (216.87.152.33, 216.87.155.33, UDP_0_EDNS0_32768_4096)

問題は明らかです。ゾーンの署名の有効期限が切れているため、キーを更新する必要があります。一貫性のない結果が表示される理由は、すべての再帰サーバーでDNSSEC検証が有効になっているわけではないためです。検証するのはドメインをドロップすることであり、そうでない場合は通常どおりビジネスになります。


編集: ComcastのDNSインフラストラクチャはDNSSEC検証を実装することが知られており、顧客の1人として、私SERVFAILも同様の問題を抱えていることを確認できます。

$ dig @75.75.75.75 strugee.net | grep status
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 2011

おっと、私はstugee.net掘り出し物の出力にいましたが、これは明らかにタイプミスです。この分析のDNSSEC部分は、正しい名前に対して行われました。
アンドリューB

5

権限のあるネームサーバーが正しく応答していることは確かですが、DNS解決のチェーン全体をフォローアップする必要があります。つまり、DNS階層全体をルートサーバーから上に向かって歩きます。

$ dig net NS
;; ANSWER SECTION:
net.            172800  IN  NS  c.gtld-servers.net.
net.            172800  IN  NS  f.gtld-servers.net.
net.            172800  IN  NS  k.gtld-servers.net.
;; snipped extra servers given
$ dig @c.gtld-servers.net strugee.net NS
;; AUTHORITY SECTION:
strugee.net.        172800  IN  NS  dns2.registrar-servers.com.
strugee.net.        172800  IN  NS  dns1.registrar-servers.com.
;; snipped extra servers again

これは基本的に、パブリックDNSサーバーが機能していることを確認し、DNSリゾルバーが実行すべきことと同じことを実行しています。したがって、DNSリゾルバーに問題がない限り、デジタルオーシャンサーバーで上記と同じ回答が得られるはずです。

$ dig net NS
$ dig strugee.net NS
$ dig strugee.net

最初の2つのクエリが失敗した場合、Digital Ocean側のDNSが失敗しています。を確認し/etc/resolv.conf、セカンダリDNSサーバーを照会してください。セカンダリーが機能する場合は、リゾルバーの順序を切り替えて再試行してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.