IPv6: Windows สร้างที่อยู่ Link-Local อย่างไร (EUI-64)
ในบทความ บล็อก และฟอรั่ม ฉันมักจะอ่านว่า Windows สร้างที่อยู่ IPv6 จากที่อยู่ MAC กระบวนการนี้เรียกว่า EUI-64 และการสันนิษฐานว่า Windows (Vista ขึ้นไป) ใช้ EUI-64 นั้นผิด เราสามารถเปิดใช้งานกระบวนการ EUI-64 ได้ แต่โดยค่าเริ่มต้น Windows จะใช้ค่าสุ่มสำหรับการสร้าง IPv6 Link-Local Addresses
EUI-64 (ตัวระบุเฉพาะแบบขยาย 64 บิต)
มาดูเราเตอร์ของ Cisco กันดีกว่า ที่อยู่ IPv6 ของเราเตอร์นี้คำนวณจากที่อยู่ MAC ของอินเทอร์เฟซ
ที่อยู่ MAC จะถูกแบ่งออกเป็นสองส่วน จากนั้น FFFE จะถูกแทรกไว้ตรงกลางของทั้งสองส่วน ซ้ายและขวาของ FF: FE เป็นส่วนหนึ่งของที่อยู่ MAC ของอินเทอร์เฟซ
Windows (Windows Vista ขึ้นไป)
ระบบปฏิบัติการ Windows ไม่ใช้ EUI-64 ที่อยู่ IPv6 คำนวณโดยใช้ค่าสุ่ม ที่อยู่ MAC ไม่มีผลต่อสิ่งนี้ การไม่มี FFFE บ่งชี้ว่าไม่ได้ใช้ EUI-64 นี่คือตัวอย่างของที่อยู่ IPv6 Link-Local ที่สร้างขึ้นแบบสุ่ม
Get-NetIPConfiguration | Select-Object IPv6LinkLocalAddress
การตั้งค่านี้เรียกว่า RandomizeIdentifier และเปิดใช้งานอยู่ %2 ต่อท้ายคือหมายเลขอินเทอร์เฟซของการ์ดเครือข่าย
เรียกใช้ Get-NetAdapter เพื่อแสดง ID ของการ์ดเครือข่ายของคุณ คุณจะพบมัน
Get-NetAdapter
Get-NetIPv6Protocol
หากคุณต้องการเปลี่ยนแปลง เพียงตั้งค่า RandomizIdentifier เป็น Disabled
Set-NetIPv6Protocol -RandomizeIdentifiers Disabled
ตอนนี้คอมพิวเตอร์ของคุณใช้ EUI-64 ให้ความสนใจกับ ff:fe
Get-NetIPAddress -AddressFamily IPv6 -InterfaceAlias "Ethernet" -PrefixOrigin Wellknown | Select-Object IPAddress
บิต U/L
ดังที่เราเห็นแล้วว่าส่วนที่ควรจะเหมือนกัน (ที่อยู่ MAC และที่อยู่ IPv6) นั้นไม่เหมือนกันทุกประการ ศูนย์นำหน้าในที่อยู่ IPv6 ถูกลบออก นี่คือการตั้งค่าเริ่มต้น. มีความแตกต่างในบิตที่สอง:
ที่อยู่ IPv6 จึงไม่ได้จำลองแบบ 1:1 บิตที่ต่างกันเรียกว่าบิต U/L สงวนไว้สำหรับเทคโนโลยีในอนาคต เหตุใดจึงเป็นเช่นนี้ สามารถพบได้ที่นี่:
https://supportforums.cisco.com/document/100566/understand-ipv6-eui-64-bit-address






