ฉันกำลังทดสอบการอัปเกรดเซิร์ฟเวอร์ Debian 10 เป็น Debian 11
เซิร์ฟเวอร์รัน bind9 เป็น DNS ที่ได้รับอนุญาตหลักสำหรับโดเมนจำนวนหนึ่ง และบน Debian 10 ทำงานได้ดีมาสองปีแล้ว (ผูก v.9.11.5)
ในการทดสอบใหม่ Debian 11 VPS (BIND 9.16.15) ซึ่งมีการคัดลอกไฟล์การกำหนดค่าเฉพาะไซต์ข้าม (สำหรับโดเมนทดสอบ 1 โดเมนเท่านั้นในตอนนี้) bind9 ทำงานได้ตามปกติเมื่อการสืบค้น (A, AAAA, MX) ถูกส่งผ่าน IPv4 แต่ ไม่มีการตอบสนองเมื่อใช้ IPv6
ฉันมีไฟร์วอลล์ nftables ซึ่งอนุญาตแพ็กเก็ตขาเข้าสำหรับพอร์ต 53 และถ้าฉันเปิดการบันทึกไฟร์วอลล์สำหรับ UDP dport 53 แพ็กเก็ตการค้นหา IPv6 และ IPv4 จะแสดงทั้งหมด
เมื่อ bind9 เริ่มทำงาน ระบบจะรายงานใน syslog ว่ากำลังฟังที่อยู่ IPv6
ss แสดงกระบวนการฟังบน IPv6
ถ้าฉันใช้ บันทึกแบบสอบถาม rndc
และดูไฟล์บันทึก ข้อความค้นหา IPv4 ถูกบันทึก แต่ข้อความค้นหา IPv6 ไม่ได้บันทึก
เหมือนกับว่าแพ็กเก็ต UDP ขาเข้าสูญหายระหว่างไฟร์วอลล์และ bind9
ไม่มีกระบวนการอื่นใดที่รับฟังพอร์ต 53 เพราะหากฉันหยุดการรัน bind9 ss จะไม่แสดงรายการอะไรเลย
บริการอื่นๆ (เช่น SSH) ทำงานได้อย่างสมบูรณ์บน IPv6
ของฉัน ชื่อ.conf.options
มีลักษณะดังนี้:
ตัวเลือก {
ไดเร็กทอรี "/var/cache/bind";
อนุญาตแบบสอบถามแคช { ไม่มี; };
อนุญาตแบบสอบถาม { ใด ๆ ; };
เรียกซ้ำไม่;
//================================================ ========================
// ถ้า BIND บันทึกข้อความแสดงข้อผิดพลาดเกี่ยวกับรูทคีย์ที่หมดอายุ
// คุณจะต้องอัปเดตคีย์ของคุณ ดู https://www.isc.org/bind-keys
//================================================ ========================
การตรวจสอบ DNSsec อัตโนมัติ;
ฟังบนพอร์ต v6 53 { ใด ๆ ; };
};
ฉันจะทำการทดสอบอะไรอีกบ้างเพื่อแก้ไขปัญหานี้
(มีปัญหาที่สองกับ BIND ซึ่งอาจไม่เกี่ยวข้อง: ข้อผิดพลาด "การอนุญาตถูกปฏิเสธ" ระหว่างการถ่ายโอนโซนไปยัง DNS รอง)