再帰的なDNSルックアップが成功したにもかかわらず、ネームサーバーの変更後にDNSが解決しないのはなぜですか?


12

最近、所有するドメインをCloudflareからNetlify DNSに移行したため、ネームサーバーを更新する必要がありました。DNSキャッシュをバイパスする再帰的なDNSルックアップを実行すると、すべてが正しくセットアップされているようです:

$ dig howtogit.net +trace
(output truncated)
howtogit.net.       20  IN  A   159.65.199.87
;; Received 57 bytes from 198.51.44.1#53(dns1.p01.nsone.net) in 18 ms

ただし、通常のDNSルックアップは失敗します。

$ nslookup howtogit.net                                                                               
Server:     192.168.1.1
Address:    192.168.1.1#53

** server can't find howtogit.net: SERVFAIL

キャッシングに障害があった場合、Cloudflareはまだ解決しないルックアップを解決すると思います。8.8.8.8(GoogleのDNS)でのルックアップも失敗します。

$ dig @8.8.8.8 howtogit.net

; <<>> DiG 9.10.6 <<>> @8.8.8.8 howtogit.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 63809
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

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

;; Query time: 43 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Sep 23 13:05:50 CEST 2018
;; MSG SIZE  rcvd: 41

DNSレコードはキャッシュされているので、NSレコードとAレコードのGoogleのDNSキャッシュフラッシュしてみました。10時間以上前に変化が起こったにもかかわらず、私はまだ同じ結果を得ています。

私の設定は間違っていますか?DNSが再び適切に解決できることを確認するにはどうすればよいですか?


1
このような場合dnsviz.net、DNSSECの問題があることを簡単に示すツールが必要です。実際、ここで問題を明確に見ることができます:dnsviz.net/d/howtogit.net/W6d5WA/dnssec これは、現在動作しているものと比較できます:dnsviz.net/d/howtogit.net/W6kJlg/dnssec
Patrick Mevzek

うん、わかった。Netlify DNSはDNSSECをサポートしていないため、最終的にCloudflareに移行することにしました。でも知っておくといい!
ピーター

DNSSECは確かに難しいです。提供する機能と必要な手順との間の妥協。関連する場合、トラブルシューティングのヒント:digSERVFAILで失敗したが、まったく同じものを追加+cdしてやり直しても失敗しない場合は、おそらくDNSSEC関連の問題であることを意味します。+cdDNSSECチェックを無効にします。したがって、違いが生じる可能性があります。しかし、SERVFAILは多くの問題で発生する可能性があり、DNSには(今のところ)拡張エラーコードはありません...
パトリックメヴゼク

回答:


24

howtogit.netゾーンは彼が署名したものであり、ネームサーバーを切り替えた後、署名されていないように見えます。

ただし、古いDSレコードはそのままにしておき、ゾーンに特定のキーで署名する必要があることを示しています。

DSレコードを削除するか、ゾーンに再度署名して、DS必要に応じてレコードを更新DSします(レコードはレジストラで管理されます)。

関連するdig +trace出力の末尾を見ると、これが事実でなければならないことは実際には非常に明確です(DS照会の一部としてですがDNSKEY、権限のある終わりではなく、他のタイプを照会する場合は署名がありません):

$ dig +trace +all howtogit.net DNSKEY

...

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63298
;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 6, ADDITIONAL: 5

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;howtogit.net.                  IN      DNSKEY

;; AUTHORITY SECTION:
howtogit.net.           172800  IN      NS      dns1.p01.nsone.net.
howtogit.net.           172800  IN      NS      dns2.p01.nsone.net.
howtogit.net.           172800  IN      NS      dns3.p01.nsone.net.
howtogit.net.           172800  IN      NS      dns4.p01.nsone.net.
howtogit.net.           86400   IN      DS      2371 13 2 F7822E035739507BFB9ED504B65FFE7A95698E58C069EF1DE754EED0 55E6799F
howtogit.net.           86400   IN      RRSIG   DS 8 2 86400 20180927051931 20180920040931 7934 net. POLNdGPgCCeF6ClG4ro1mkUI5DpqUuuLLeR4WCly1L5GbOTgPnzg02Nx 2Sse2dYDLJLB1EQYotZkvVm8GNFS5iE8UQlmp4GA3yxTgUeifw5PX6Eh kiJSip37/CyGCTy6OMPoVeMgQjLnrxt1aAOsnO5BszeGY7gD6ee/XHMO zc4=

;; ADDITIONAL SECTION:
dns1.p01.nsone.net.     172800  IN      A       198.51.44.1
dns2.p01.nsone.net.     172800  IN      A       198.51.45.1
dns3.p01.nsone.net.     172800  IN      A       198.51.44.65
dns4.p01.nsone.net.     172800  IN      A       198.51.45.65

;; Query time: 159 msec
;; SERVER: 2001:503:231d::2:30#53(2001:503:231d::2:30)
;; WHEN: Sun Sep 23 11:35:52 UTC 2018
;; MSG SIZE  rcvd: 402

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53062
;; flags: qr aa; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;howtogit.net.                  IN      DNSKEY

;; AUTHORITY SECTION:
howtogit.net.           3600    IN      SOA     dns1.p01.nsone.net. hostmaster.nsone.net. 1537613509 43200 7200 1209600 3600

;; Query time: 1 msec
;; SERVER: 198.51.45.65#53(198.51.45.65)
;; WHEN: Sun Sep 23 11:35:52 UTC 2018
;; MSG SIZE  rcvd: 103

$

1
あなたは…にスポットしています。移行する前にDNSSECを無効にするのを忘れたようです。レジストラでDSレコードを削除すると、8.8.8.8がすぐにドメインを正しく解決し始めました。
ピーター

5
@Pieter問題ありません。そうでなければ、これらのタイプの質問に不必要に答えることが難しくなる傾向がある、詳細を難読化しないことに感謝します。
ホーカンLindqvist
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.