ลูกค้า DNS จะเลือกที่อยู่ IP ได้อย่างไรเมื่อได้รับคำตอบหลายคำตอบ


25

เมื่อเซิร์ฟเวอร์ DNS กำลังค้นหาที่อยู่ IP สำหรับไคลเอนต์และได้รับรายการเซิร์ฟเวอร์ DNS หลายรายการเพื่อทำการสืบค้นมันจะเลือกได้อย่างไร ในทำนองเดียวกันเมื่อไคลเอนต์ DNS ได้รับรายการที่อยู่ IP หลายรายการสำหรับ FQDN จะเลือกได้อย่างไร มันใช้งานเฉพาะหรือครอบคลุมใน RFC?

คำตอบ:


18

เซิร์ฟเวอร์ DNS แก้ไขการสืบค้นอาจจัดลำดับความสำคัญตามลำดับที่ใช้เซิร์ฟเวอร์ที่แสดงรายการตามข้อมูลเวลาตอบสนองประวัติ (RFC1035 ส่วน 7.2) มันอาจจัดลำดับความสำคัญโดย sub-net ที่ใกล้กว่า (ฉันเคยเห็นสิ่งนี้ใน RFC แต่ไม่จำได้ว่า) หากไม่มีประวัติหรือลำดับความสำคัญของเครือข่ายย่อยมันอาจเลือกแบบสุ่มหรือเลือกลำดับแรก ฉันได้เห็นการใช้งานเซิร์ฟเวอร์ DNS ที่ทำรวมกันด้านบน

โปรแกรมไคลเอนต์เลือกที่อยู่ IP จากรายการ (ของ A / AAAA-records) โดยทั่วไปแล้วจะลองใช้ที่อยู่ตามลำดับที่เซิร์ฟเวอร์ DNS นั้นส่งคืน (round robin) หากไคลเอนต์ไม่สามารถเชื่อมต่อกับที่อยู่ IP แรกที่ส่งคืนได้ก็ควรลองใช้ครั้งที่สองเป็นต้น ตัวอย่างเช่นเบราว์เซอร์หลักทั้งหมดทำเช่นนี้อย่างไรก็ตามโปรแกรมไคลเอนต์อินเทอร์เน็ตอื่น ๆ "ลืม" ขั้นตอนนี้และล้มเหลวหากไม่สามารถเชื่อมต่อกับที่อยู่ IP แรก


4

RFC 1794ครอบคลุมคำถาม Round Robin ที่คุณถาม

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


3

มันขึ้นอยู่กับลูกค้า - ความเกี่ยวข้องโดยเฉพาะอย่างยิ่งสำหรับใครก็ตามที่ใช้ Windows shop คือข้อเท็จจริงที่ว่า Vista \ Windows Server 2008 จะเลือกที่อยู่โดยใช้กลไกที่แตกต่างกัน (หากมีการติดตั้ง ipv6 stack) กับรุ่น Windows รุ่นก่อน . ในหลายกรณีนี่หมายความว่าพวกเขาจะเลือกแบบเดียวกันเสมอนั่นคือพวกเขาจะไม่ "ให้เกียรติ" DNS การตอบสนองแบบโรบินแบบเดียวกับรุ่นก่อนหน้า มีคำอธิบายรายละเอียดในเรื่องนี้เป็นบทความบล็อก TechNet นี้

บทความที่เชื่อมโยงแสดงว่า Windows 7 และ Server 2008 R2 เปลี่ยนพฤติกรรมเริ่มต้นนี้อีกครั้ง แต่ฉันไม่พบสิ่งใดที่จะสำรองข้อมูล

และมันก็คุ้มค่าที่ชี้ให้เห็นว่านี่เป็นพฤติกรรมที่เป็นไปตามมาตรฐานสำหรับ ipv6 เท่าที่ฉันจะบอกได้ถึงแม้ว่าฉันจะดีใจมากที่พบว่าฉันผิด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.