เหตุใด 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 (DNS ของ Google) ก็ล้มเหลวเช่นกัน:

$ 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 ถูกแคชฉันจึงพยายามล้างแคช DNS ของ Googleสำหรับบันทึก NS และ A ของฉัน ฉันยังคงได้รับผลลัพธ์เดียวกันแม้ว่าจะมีการเปลี่ยนแปลงเกิดขึ้นมากกว่า 10 ชั่วโมงที่ผ่านมา

การกำหนดค่าของฉันไม่ถูกต้องหรือไม่ ฉันจะแน่ใจได้อย่างไรว่า DNS ของฉันสามารถแก้ไขได้อย่างถูกต้องอีกครั้ง?


1
ในกรณีเช่นนี้เครื่องมือเช่นนี้dnsviz.netควรแสดงให้คุณเห็นว่ามีปัญหา DNSSEC อย่างง่ายดาย ในความเป็นจริงคุณสามารถเห็นปัญหาอย่างชัดเจนที่นี่: dnsviz.net/d/howtogit.net/W6d5WA/dnssec ที่คุณสามารถเปรียบเทียบกับการทำงานในปัจจุบัน: dnsviz.net/d/howtogit.net/W6kJlg/dnssec
Patrick Mevzek

ใช่ฉันคิดออก ในที่สุดฉันตัดสินใจที่จะย้ายกลับไปที่ Cloudflare เพราะ Netlify DNS ไม่รองรับ DNSSEC แต่ดีที่จะรู้!
ปีเตอร์

DNSSEC นั้นยาก การประนีประนอมระหว่างคุณลักษณะที่มีให้และขั้นตอนที่จำเป็นต้องมี ในกรณีที่เกี่ยวข้องคำแนะนำในการแก้ไขปัญหา: ถ้าdigล้มเหลวด้วย SERVFAIL แต่ถ้าคุณทำซ้ำการเพิ่มที่เหมือนกัน+cdและไม่ล้มเหลวอีกต่อไปก็อาจหมายความว่าปัญหาเกี่ยวข้องกับ DNSSEC +cdปิดใช้งานการตรวจสอบ DNSSEC ดังนั้นจึงเป็นไปได้ที่จะเกิดความแตกต่าง แต่ SERVFAIL สามารถเกิดขึ้นได้สำหรับปัญหามากมายไม่มีรหัสข้อผิดพลาดเพิ่มเติม (ในตอนนี้) ใน DNS ...
Patrick Mevzek

คำตอบ:


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 ไม่มีปัญหา ขอขอบคุณที่ไม่ทำให้สับสนโดยเฉพาะซึ่งอาจทำให้คำถามประเภทนี้ตอบยากโดยไม่จำเป็น
Håkan Lindqvist
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.