ชื่อภายในแก้ได้ และเซิร์ฟเวอร์เดียวกันตอบชื่อภายนอกด้วยการปฏิเสธเกี่ยวกับการเรียกซ้ำ การผสมกันนี้ไม่ใช่ความขัดแย้ง การเผยแพร่โซนของตัวเองและการแก้ทั้งอินเทอร์เน็ตเป็นบริการแยกกันสองอย่างที่เซิร์ฟเวอร์ให้ได้ และทำอย่างแรกได้โดยไม่ต้องทำอย่างที่สอง มองการปฏิเสธเป็นถ้อยแถลงนโยบาย แล้วตรวจสอบว่านโยบายตรงกับการออกแบบหรือไม่

การปฏิเสธกับหมดเวลาเป็นคำตอบที่ต่างกัน

บันทึกชื่อ ชนิดคำถาม เซิร์ฟเวอร์ที่ตอบ สถานะ และเรกคอร์ดที่ได้กลับมา คำเตือนเรื่องการเรียกซ้ำไม่ได้ทำให้คำตอบที่มีอำนาจซึ่งมาพร้อมกันนั้นเป็นโมฆะโดยอัตโนมัติ เขียนสถานะไว้ก่อนตีความ สถานะที่สร้างใหม่จากความจำหนึ่งชั่วโมงต่อมาคือข้อเท็จจริงอีกอย่าง

ส่วนหัว DNS พาคำขอเรียกซ้ำและตัวบ่งชี้ว่าเซิร์ฟเวอร์ให้บริการหรือไม่ และ ข้อกำหนดโพรโทคอล แยกธงเหล่านั้นออกจากข้อมูลคำตอบ ด้วยเหตุนี้คำตอบจึงมีประโยชน์และยังพาคำร้องเรียนได้ การหมดเวลา คำตอบเชิงลบ และการปฏิเสธเป็นผลลัพธ์ที่ต่างกันสามแบบ แต่ละแบบชี้ไปที่ชั้นต่างกัน และมีเพียงการปฏิเสธเท่านั้นที่เซิร์ฟเวอร์กำลังบอกคุณเรื่องนโยบาย

อ่านรหัสสถานะก่อน แล้วจึงตัดสินว่าคำเตือนสำคัญกับคำถามนี้หรือไม่ คำตอบที่มีอำนาจซึ่งระบุชื่อโซนยังใช้ได้แม้บิตเรียกซ้ำถูกปฏิเสธ การปฏิเสธที่ไม่มีคำตอบเป็นผลของนโยบาย ไม่ใช่เส้นทางแพ็กเก็ตที่เสีย

สิ่งที่ตัวแก้ไขบันทึกเป็นแหล่งที่มาของคุณ

ไคลเอนต์อาจมาจากกลุ่มที่อยู่ภายนอกช่วงการเรียกซ้ำที่เซิร์ฟเวอร์อนุญาต หรือการแปลอาจทำให้ดูเหมือนเกตเวย์ ที่อยู่ของอะแดปเตอร์ของไคลเอนต์เองไม่ใช่หลักฐานว่าตัวแก้ไขได้รับอะไร ถามผู้ดูแลเซิร์ฟเวอร์ถึงแหล่งที่มาที่สังเกตได้ แทนที่จะอนุมานจากฝั่งของคุณในเส้นทาง สองที่อยู่ต่างกันได้ทุกฮอปที่แปล

ถามชื่อเดียวกันจากไคลเอนต์และจากโฮสต์ที่เซิร์ฟเวอร์ไว้ใจอยู่แล้ว ความต่างระหว่างสองคำตอบคือเงื่อนไขของแหล่งที่มา และมีประโยชน์กว่าคำตอบใดคำตอบหนึ่ง

dig +short host.corp.example
dig +short example.com

หากการติดตั้งต้องการการเรียกซ้ำสำหรับไคลเอนต์ VPN ผู้ดูแลจะอนุญาตช่วงแหล่งที่มาเหมาะสมผ่านการควบคุมของเซิร์ฟเวอร์เอง การเปิดการเรียกซ้ำให้ทุกเครือข่ายเพื่อให้การทดสอบหนึ่งผ่านเป็นการเปลี่ยนแปลงที่ใหญ่กว่าสิ่งที่กำลังทดสอบมาก เขียนช่วงที่อนุญาตไว้ข้างกฎ เพราะผู้ตรวจสอบคนถัดไปจะถามว่านโยบายควรให้บริการแหล่งใด การมีช่วงแหล่งที่มาโดยไม่มีเจ้าของคือทางที่การทดสอบชั่วคราวกลายเป็นถาวร

DNS แบบแยกส่วนคือการออกแบบ ไม่ใช่ข้อบกพร่อง

การติดตั้งบางแห่งส่งเฉพาะโดเมนงานไปยังตัวแก้ไขส่วนตัวและส่งอย่างอื่นไปยังตัวแก้ไขที่ได้รับอนุมัติอีกตัว นั่นคือการออกแบบการกำหนดเส้นทางคำถาม และไม่ใช่หลักฐานว่าเซิร์ฟเวอร์ส่วนตัวต้องการนโยบายที่หลวมกว่า ภายใต้การออกแบบนั้น ชื่อภายนอกที่ล้มเหลวผ่านตัวแก้ไขส่วนตัวคือผลลัพธ์ที่ตั้งใจ ไม่ใช่ข้อบกพร่อง การปฏิเสธคือการออกแบบที่ทำงาน ไม่ใช่อาการที่ต้องปิดกั้น

ตัวแก้ไขสาธารณะอาจคืนการท่องเว็บได้ แต่ทำให้ชื่อภายในเสียหรือส่งคำถามส่วนตัวไปที่ที่ไม่ควรไป เขียนพฤติกรรมที่ตั้งใจไว้ก่อนเปลี่ยนที่อยู่ตัวแก้ไขใด ๆ

ตรวจสอบนโยบายด้วยสองคำถาม

หลังการแก้ไขตามที่ตั้งใจ ให้ถามชื่อส่วนตัวที่อนุญาตและชื่อภายนอกจากไคลเอนต์จริง สิ่งที่ได้กลับมาควรเป็นสิ่งที่นโยบายสัญญา ไม่ใช่เพียงการวินิจฉัยที่เงียบกว่า บันทึกเซิร์ฟเวอร์ที่ตอบกับทุกคำตอบ แล้วเปรียบเทียบคู่กับนโยบาย การเปรียบเทียบคือการทดสอบ และการค้นหาที่สำเร็จเพียงครั้งเดียวไม่ใช่

resolvectl query host.corp.example
resolvectl query example.com

หากชื่อส่วนตัวทำงานและชื่อสาธารณะถูกปฏิเสธ นโยบายกำลังทำตามที่บอก หากชื่อส่วนตัวล้มเหลวด้วย ปัญหาอยู่ที่โซน เส้นทาง หรือการอนุญาตแหล่งที่มา และการเรียกซ้ำเป็นเรื่องเบี่ยงเบนความสนใจ ทั้งสองผลลัพธ์มีประโยชน์ และแต่ละอย่างตัดสมมติฐานที่เหลือครึ่งหนึ่งออก

อ่านการปฏิเสธเป็นหลักฐาน

การปฏิเสธคือคำตอบ หมายความว่าเซิร์ฟเวอร์ได้รับคำถามและปฏิเสธที่จะทำงานตามที่ขอ ซึ่งต่างจากแพ็กเก็ตที่ไม่เคยมาถึง ความต่างนั้นคือการวินิจฉัยทั้งหมด บันทึกไว้เป็นคำตอบ ไม่ใช่ความล้มเหลวในการเชื่อมต่อ

ความต่างนั้นบอกว่าควรมองที่ไหน: บันทึกของเซิร์ฟเวอร์ นโยบายการเข้าถึง และแหล่งที่มาที่บันทึกไว้ การเปลี่ยนไฟร์วอลล์แก้การปฏิเสธเชิงนโยบายไม่ได้ และการเปลี่ยนนโยบายแก้เส้นทางที่หายไปไม่ได้ แยกสมมติฐานสองข้อไว้นานเท่าที่ข้อใดข้อหนึ่งยังไม่มีหลักฐาน

เขียนผลลัพธ์และเจ้าของนโยบายลงในตั๋ว เพื่อให้คนถัดไปเริ่มจากคำตัดสิน ไม่ใช่จากคำเตือน ระบุช่วงแหล่งที่มาที่อนุญาตและสองชื่อที่คุณทดสอบ ตั๋วที่มีข้อเท็จจริงสามข้อนั้นรันซ้ำได้ ส่วนตั๋วที่บอกว่า "การเรียกซ้ำเสีย" ทำไม่ได้

บทความที่เกี่ยวข้อง