สิ่งที่กำหนดว่า FQDN ถูกตีความว่าเป็น IPv6 หรือ IPv4


9

เมื่อฉันพิมพ์ชื่อโดเมนที่ผ่านการรับรองอย่างเต็มรูปแบบ (FQDN) ในแถบ URL ของฉันเบราว์เซอร์จะเชื่อมต่อกับตารางการแมปบางส่วน (ที่ตารางนี้ถูกจัดเก็บไว้ที่ไหน?

ดังนั้นขึ้นอยู่กับผู้ให้บริการ (ฉันเป็นผู้สมมติว่ามีตารางการแปลง) ว่ารองรับที่อยู่ IPv6 หรือไม่ มันเป็นเรื่องจริงเหรอ?

คำตอบ:


7

เนื่องจากนี่คือแท็ก iptables ฉันคิดว่านี่เป็นคำถาม Linux

บน Linux มันขึ้นอยู่กับ glibc ในการตัดสินใจว่าโปรแกรมสำหรับชื่อโฮสต์ที่ระบุค้นหาที่อยู่ IPv6 (AAAA) หรือที่อยู่ IPv4 (A) ก่อน โปรแกรมที่ใช้ glibc ใช้ฟังก์ชั่น getaddrinfo () พฤติกรรมของ getaddrinfo () ได้รับการกำหนดค่าใน /etc/gai.conf

ในระบบของคุณส่วนใหญ่แล้วทุกอย่างใน /etc/gai.conf จะถูกใส่ความคิดเห็น ไม่ใส่ข้อคิดเห็นรายการ:

ฉลาก :: / 0 1

มีสำหรับฉันนำไปสู่การเปิดใช้งานการค้นหาครั้งแรกของ AAAA ดังนั้นที่อยู่ IPv6 จึงเป็นที่ต้องการมากขึ้น ดังนั้นนี่อาจเป็นสิ่งที่คุณต้องการ

อัปเดตเพื่อเพิ่ม : วิธีที่เหมาะสมดูเหมือนจะยกเลิกการใส่เครื่องหมาย "บล็อก" ทั้งหมดใน gai.conf ด้วยค่าตั้งแต่ 0 ถึง 7:

label ::1/128       0
label ::/0          1
label 2002::/16     2
label ::/96         3
label ::ffff:0:0/96 4
label fec0::/10     5
label fc00::/7      6
label 2001:0::/32   7

4

ที่อยู่ IPv4 จะถูกแมปกับชื่อโดเมนโดยระเบียน A (ที่อยู่) ใน DNS (ระบบชื่อโดเมน) ที่อยู่ IPv6 ถูกแมปโดยใช้ระเบียน AAAA ดูเหมือนจะแปลก? ที่อยู่ IPv4 คือ 32 บิต, IPv6 คือ 128 บิต 128/32 = 4 ดังนั้น AAAA / A = 4 เช่นกัน เคล็ดลับที่ชาญฉลาดโดยใครก็ตามที่ออกแบบรายการของ IPv6 ใน DNS

DNS เป็นระบบกระจายลำดับชั้นในอินเทอร์เน็ตทั้งหมด เบราว์เซอร์ของคุณจะทำการเรียกไปยังไลบรารีระบบซึ่งเริ่มต้นการค้นหาเชน มันจะตรวจสอบแคชในเครื่องก่อนโดยปกติจะเก็บไว้ในหน่วยความจำ จากนั้นค้นหาดิสก์และดูไฟล์โฮสต์ (/ etc / hosts บน UNIXes / Linux ส่วนใหญ่และ C: \ Windows \ System32 \ drivers \ etc \ HOSTS บน Windows) จากนั้นหากยังไม่สามารถหาคำตอบได้จะทำการโทรไปยังเซิร์ฟเวอร์ DNS ที่คุณกำหนดตามการกำหนดค่าเครือข่ายของคุณ

เซิร์ฟเวอร์ DNS นั้นตรวจสอบแคชของตนซึ่งใหญ่กว่ามาก หากมีการแข่งขันก็จะกลับคำตอบ หากไม่สามารถหาคำตอบได้ก็จะหันมาถามเซิร์ฟเวอร์ DNS ระดับสูงกว่านั้นดำเนินการโดย ISP ของ ISP กระบวนการนี้อย่างต่อเนื่องจนกว่าคุณจะตีเซิร์ฟเวอร์ชื่อรากผ่านa.root-servers.net m.root-servers.netการสืบค้น DNS ส่วนใหญ่ได้รับการแก้ไขนานก่อนที่จะถึงจุดนั้น แต่บางครั้งหนึ่งหรือสองครั้งก็ทำให้เกิดขึ้นที่นั่น แต่เมื่อพบคำตอบก็จะถูกส่งกลับไปที่โซ่ของเบราว์เซอร์ของคุณ

แต่วิธีการที่ไม่ทราบว่าเบราว์เซอร์ของคุณซึ่งบันทึกประเภทการร้องขอ? ขึ้นอยู่กับการตั้งค่าระบบของคุณ หากคุณตั้งค่าเป็นสแต็ค IPv4 ของคุณเป็นลำดับความสำคัญเบราว์เซอร์ของคุณจะขอเฉพาะระเบียน A ในแบบสอบถาม DNS ของมัน ถ้า IPv6 มันจะถามเรคคอร์ด AAAA ก่อนจากนั้นถอยกลับไปที่เรคคอร์ด A

มีประเภทบันทึกอื่น ๆ เช่นกัน ระเบียน MX กำหนดว่าเซิร์ฟเวอร์อีเมลสำหรับโดเมนนั้นอยู่ที่ใด ระเบียน NS กำหนดเซิร์ฟเวอร์ชื่อสำหรับโดเมน ระเบียน SRV จะบอกคุณว่ามีบริการเฉพาะ (SSH หรือเว็บ) อยู่ที่ใด

DNS เป็นสมุดโทรศัพท์ที่แท้จริงของอินเทอร์เน็ตจริงๆ


2

การค้นหาจะถูกจัดการโดย DNS ของคุณ (และอาจเป็นไฟล์โฮสต์ในพื้นที่ของคุณ) ไม่ว่าชื่อเฉพาะจะได้รับการแก้ไขในฐานะที่อยู่ IPv6 หรือ IPv4 ขึ้นอยู่กับการตั้งค่าเบราว์เซอร์ของคุณ (รองรับ IPv6 และส่งคำขอ IPv6 AAAA, ระบบปฏิบัติการของคุณ (ไม่ว่าคุณจะมีแม้แต่ IPv6 stack) ผู้ให้บริการ DNS (พวกเขาสนับสนุนการร้องขอ AAAA (IPv6) หรือไม่)

ปัญหาของเบราว์เซอร์มีความซับซ้อนมากขึ้นเนื่องจากข้อเท็จจริงที่ว่าเบราว์เซอร์ (เก่ากว่า) บางตัวไม่เคยออกคำขอค้นหา AAAA และบางคนสามารถกำหนดค่าไม่ให้ส่งได้ (firefox มีการตั้งค่านี้) แต่เบราว์เซอร์สมัยใหม่ส่วนใหญ่ส่งคำขอ AAAA ก่อน คำขอ


ฉันจะหาไฟล์โฮสต์ในพื้นที่ของฉันบน Windows Vista ได้จากที่ใด
Lazer

ตกลงพบได้ที่นี่: C:\Windows\System32\drivers\etc. แต่มันว่างเปล่า
Lazer

% SYSTEMROOT% \ System32 \ drivers \ etc - โดยทั่วไปจะเป็น C: \ Windows \ System32 \ drivers \ etc
Helvick

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