อาจเป็นเพียงคำถามธรรมดา แต่ฉันเสียเวลากับคำถามนี้มาหลายเดือนแล้ว
หากคุณต้องการบันทึก/เอาต์พุต/คำอธิบาย/อื่นๆ แค่ถาม :)
ขอบคุณล่วงหน้า!
สิ่งที่ฉันต้องการ
- โซน
local.example.com
จะถูกจัดการโดยเซิร์ฟเวอร์ภายในเครื่อง 10.20.0.9
- เซิร์ฟเวอร์ภายใน (10.20.0.0/24) สามารถเข้าถึงได้จากภายในเครือข่ายเท่านั้น แต่
- ชื่อโฮสต์ของพวกเขา
xxx.local.example.com
สามารถแก้ไขได้ทั่วโลกจากอินเทอร์เน็ต
สิ่งที่ฉันมีอยู่
ฉันใช้ CloudFlare เป็นผู้ให้บริการ DNS ต่อไปนี้ คู่มือนี้ฉันได้ตั้งค่าต่อไปนี้:
- บันทึกที่ CloudFlare:
ns.example.com A 10.20.0.9 (เซิร์ฟเวอร์ DNS ในเครื่อง)
loc.example.com NS ns.example.com (การมอบหมาย DNS ในเครื่อง)
- บันทึกไฟล์ที่เซิร์ฟเวอร์ DNS ในเครื่องของฉัน (
10.20.0.9
ใช้ bind9)
loc.example.com. ใน SOA ns.example.com hostmaster.example.com. (
1628517915
3600
600
24 ชม
3600 )
s1.loc.example.com ใน 10.20.0.9
ปัญหาของฉัน
CloudFlare ไม่ตอบคำขอค้นหา NS ของฉัน loc.example.com
กับ ns.example.com
อย่างที่คาดไว้. คำขอกลับล้มเหลวด้วย "เซิร์ฟเวอร์ล้มเหลว" (ดูบันทึก CLI ล่าสุด)...
เอาต์พุต CLI
ขุด ns.example.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> ns.example.com
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: NOERROR, id: 10036
;; ธง: qr rd ra; คำถาม: 1, คำตอบ: 1, ผู้มีอำนาจ: 0, เพิ่มเติม: 1
;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; UDP: 1232
;; ส่วนคำถาม:
;ns.example.com. ใน
;; ส่วนคำตอบ:
ns.example.com. 300 ใน 10.20.0.9
;; เวลาสืบค้น: 111 มิลลิวินาที
;; เซิร์ฟเวอร์: 1.1.1.1#53(1.1.1.1)
;; เมื่อ: จันทร์ ส.ค. 52 16:42:06 CEST 2021
;; ขนาดผงชูรส rcvd: 66
ดังนั้นเซิร์ฟเวอร์ชื่อจะแก้ไขเป็น IP ในพื้นที่ของเรา ดีมาก!
ขุด @10.20.0.9 NS loc.example.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @10.20.0.9 NS loc.example.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: NOERROR, id: 47653
;; ธง: qr aa rd ra; คำถาม: 1, คำตอบ: 1, ผู้มีอำนาจ: 0, เพิ่มเติม: 1
;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; UDP: 4096
; คุกกี้: 7fa7e218d1c20f1e113b236e61113fb96c1b101d374cbde7 (ดี)
;; ส่วนคำถาม:
;loc.example.com. ใน NS
;; ส่วนคำตอบ:
loc.example.com. 3600 IN NS ns.example.com
;; เวลาสืบค้น: 1 มิลลิวินาที
;; เซิร์ฟเวอร์: 10.20.0.9#53(10.20.0.9)
;; เมื่อ: จันทร์ ส.ค. 52 16:46:17 CEST 2021
;; ขนาดผงชูรส rcvd: 96
เซิร์ฟเวอร์ DNS ในพื้นที่ของเรารู้ว่าตนมีหน้าที่รับผิดชอบโดเมนย่อย
ขุด @10.20.0.9 s1.loc.example.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @10.20.0.9 s1.loc.example.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: NOERROR, id: 38039
;; ธง: qr aa rd ra; คำถาม: 1, คำตอบ: 1, ผู้มีอำนาจ: 1, เพิ่มเติม: 1
;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; UDP: 4096
; คุกกี้: 7790b2d359140e5f04be8596611140927c7321fefc1fbbe9 (ดี)
;; ส่วนคำถาม:
;s1.loc.example.com ใน
;; ส่วนคำตอบ:
s1.loc.example.com 3600 ใน 10.20.0.1
;; ส่วนผู้มีอำนาจ:
loc.example.com. 3600 IN NS ns.example.com
;; เวลาสืบค้น: 1 มิลลิวินาที
;; เซิร์ฟเวอร์: 10.20.0.9#53(10.20.0.9)
;; เมื่อ: จันทร์ ส.ค. 52 16:49:54 CEST 2021
;; ขนาดผงชูรส rcvd: 119
ดังนั้น DNS ในเครื่องจึงสามารถแก้ไขโฮสต์ในเครื่องของเราได้
ขุด @1.1.1.1 NS loc.example.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @1.1.1.1 NS loc.example.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: SERVFAIL, id: 33748
;; ธง: qr rd ra; คำถาม: 1, คำตอบ: 0, ผู้มีอำนาจ: 0, เพิ่มเติม: 1
;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; UDP: 1232
; OPT=15:00 16 ("..")
;; ส่วนคำถาม:
;loc.example.com. ใน NS
;; เวลาสืบค้น: 12 มิลลิวินาที
;; เซิร์ฟเวอร์: 1.1.1.1#53(1.1.1.1)
;; เมื่อ: จันทร์ ส.ค. 52 16:51:45 CEST 2021
;; ขนาดผงชูรส rcvd: 57
นี่คือปัญหา: CloudFlare ไม่ตอบคำขอบันทึก NS ของเรา ทำไม :o ?