สิ่งที่คุณต้องรู้เกี่ยวกับ IPv6 Link-Local Addresses - Zivaro (2024)

ในบทความล่าสุดฉันเขียนเกี่ยวกับบางส่วนของคำถามทั่วไปที่ผู้เริ่มใช้ IPv6 ถามในบางครั้ง. จากนั้นเราถามคำถามว่า "คำถามทั่วไปที่คุณได้รับเมื่อสอนชั้นเรียน IPv6 คืออะไร" บ่อยครั้งที่ผู้สอน IPv6 ตอบคำถามจากนักเรียนเกี่ยวกับที่อยู่ IPv6 link-local และวิธีการทำงาน บทความนี้สร้างขึ้นจากคำถามสำหรับมือใหม่ IPv6ธีมและครอบคลุมความแตกต่างของที่อยู่ IPv6 สองสามข้อที่มักสร้างความประหลาดใจให้กับผู้ใช้ IPv6 ใหม่ (และบางครั้งผู้มีประสบการณ์ด้าน IPv6 ด้วยเช่นกัน!)

Unicast บ่อย บางครั้ง Multicast แต่ไม่เคยออกอากาศ

ค่อนข้างง่ายที่จะเข้าใจแนวคิดที่ว่าที่อยู่แบบ unicast ใช้สำหรับการสื่อสารแบบหนึ่งต่อหนึ่ง ที่อยู่ IPv4 สาธารณะเป็นที่คุ้นเคยสำหรับคนส่วนใหญ่ ดังนั้นควรเข้าใจที่อยู่ IPv6ที่อยู่ Unicast ทั่วโลก(GUA) (2000::/3) ตรงไปตรงมา ไม่ว่าที่อยู่ IPv4 สาธารณะหรือที่อยู่ IPv6 ส่วนกลางขององค์กรของคุณจะถูกจัดเตรียมโดยRIRหรือ ISP อัพสตรีมของคุณ พวกมันมีอิสระที่จะใช้ในการจัดหาและรับการสื่อสารทางอินเทอร์เน็ต

องค์กรธุรกิจส่วนใหญ่ใช้ที่อยู่ IPv4 ส่วนตัว (เช่น 192.168.0.0/16, 172.16.0.0/12 หรือ 10.0.0.0/8) สำหรับเครือข่ายภายใน อย่างไรก็ตาม ด้วย IPv6 ผู้เริ่มต้นค้นพบว่า FD00::/8ที่อยู่ในท้องถิ่นที่ไม่ซ้ำใคร(ULA) มีอยู่สำหรับการระบุที่อยู่เครือข่ายส่วนตัว แม้ว่าจะไม่แนะนำให้ใช้โดยทั่วไป คุณได้รับการสนับสนุนให้อ่านRFC 4864 การป้องกันเครือข่ายท้องถิ่นสำหรับ IPv6เพื่อเรียนรู้ว่าเหตุใดคุณจึงไม่ต้องการที่อยู่ส่วนตัวสำหรับเครือข่ายภายในของคุณ และเหตุใดคุณจึงไม่ต้องการ NAT สำหรับ IPv6 ในภายหลัง โปรดอ่านด้วยทอม คอฟฟีนบล็อกฝีปาก (ส่วนที่ 1และตอนที่ 2) บน “3 วิธีในการทำลายเครือข่ายในอนาคตของคุณด้วย IPv6ที่อยู่ในท้องถิ่นที่ไม่ซ้ำใคร". นี่เป็นหัวข้อที่เราพูดคุยกันใน IPv6 COE Podcast #3 ของเรา

หลายคนคงคุ้นเคยกับวิธีการที่อยู่แบบหลายผู้รับใช้สำหรับการสื่อสารแบบหนึ่งต่อกลุ่ม ที่อยู่มัลติคาสต์ IPv4 (ในอดีตเรียกว่าที่อยู่คลาส D) อยู่ภายใน224.0.0.0/4 ช่วง.ที่อยู่แบบหลายผู้รับ IPv6เริ่มต้นด้วยเลขฐานสิบหกที่มีนัยสำคัญที่สุดสองหลัก “FF” และมีรูปแบบ FF00::/8 หลังจาก "FF" ที่อยู่ 4 บิตถัดไปแทนค่าแฟล็ก และที่อยู่ 4 บิตต่อไปนี้คือขอบเขตของช่วงของข้อความมัลติคาสต์ สามารถใช้ที่อยู่ IPv6 แบบหลายผู้รับได้เชื่อมโยงการสื่อสาร LAN ในพื้นที่หรือสามารถกำหนดขอบเขตสำหรับการสื่อสารเฉพาะไซต์หรือแม้แต่การใช้งานทั่วโลก ที่อยู่มัลติคาสต์ IPv6 สำหรับข้อความลิงค์ท้องถิ่นที่รู้จักกันดีจะขึ้นต้นด้วย “FF02” และคุณอาจทราบได้ว่า FF02::1 เป็นที่อยู่ของกลุ่มมัลติคาสต์แบบเชื่อมโยงภายในโหนดทั้งหมด

มีเพียง IPv4 เท่านั้นที่มีออกอากาศเป็นวิธีการส่งหนึ่งแพ็กเก็ตไปยังโหนดทั้งหมดบน LAN ปัจจุบัน ที่อยู่ปลายทางของแพ็กเก็ตคือ 255.255.255.255 และมีไว้สำหรับโฮสต์ทั้งหมดในโดเมนการแพร่ภาพทั้งหมดหรือที่อยู่ออกอากาศจำกัดเฉพาะซับเน็ตเฉพาะ (เช่น 192.168.1.255) ทั้งคู่จะถูกแปลงเป็นที่อยู่ MAC เลเยอร์ 2 “ทั้งหมด” FF:FF:FF:FF:FF:FF แพ็กเก็ตออกอากาศจะถูกส่งออกไปที่พอร์ตสวิตช์อีเธอร์เน็ตทั้งหมด โดยไม่คำนึงว่าจะมีโฮสต์บนเซกเมนต์ที่แนบมาหรือไม่ ซึ่งต้องการหรือต้องการให้ข้อความออกอากาศ ในทางกลับกัน IPv6 ไม่ใช้วิธีการออกอากาศของการส่งแพ็คเก็ต ดังนั้นจึงไม่มีประเภทที่อยู่ IPv6 ที่เทียบเท่า เครือข่าย IPv6 จะไม่ใช้การออกอากาศบน LAN อย่างไรก็ตาม การส่งแพ็กเก็ต IPv6 ไปยังที่อยู่กลุ่มมัลติคาสต์แบบโลคัลลิงก์โหนดทั้งหมด (FF02::1) ใกล้เคียงกับฟังก์ชันดังกล่าว

Link-Local Addresses และ Automatic Private IP Addressing (APIPA)

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

เมื่อเรียนรู้เกี่ยวกับ IPv6 เป็นครั้งแรก นักเรียนมักจะประหลาดใจกับความจริงที่ว่า IPv6 มีประเภทที่อยู่อื่นที่แตกต่างจากประเภทที่อยู่ IPv4 ที่พวกเขาคุ้นเคยอยู่แล้ว:ที่อยู่ลิงค์ท้องถิ่น. โดยทั่วไป,ที่อยู่ IPv6 แบบเชื่อมโยงภายในเครื่องมี “FE80” เป็นตัวแทนเลขฐานสิบหกของ 10 บิตแรกของที่อยู่ IPv6 แบบ 128 บิต จากนั้นที่อยู่ 64 บิตที่มีนัยสำคัญน้อยที่สุดคือ Interface Identifier (IID) ขึ้นอยู่กับอัลกอริทึม IID ที่ระบบปฏิบัติการของโหนดใช้ IID อาจใช้อย่างใดอย่างหนึ่งแก้ไข EUI-64ด้วย SLAAC วิธีการระบุความเป็นส่วนตัว (อาร์เอฟซี 4941) หรือวิธี Stable SLAAC IID ที่เผยแพร่ใหม่ (อาร์เอฟซี 8064).

เมื่อโฮสต์เริ่มทำงาน มันจะกำหนดที่อยู่ FE80::/10 IPv6 ให้กับอินเทอร์เฟซโดยอัตโนมัติ คุณสามารถดูรูปแบบของลิงค์-ที่อยู่ภายในเครื่องด้านล่าง เริ่มต้นด้วย FE80 และตามด้วยเลขศูนย์ 54 บิต สุดท้าย 64 บิตสุดท้ายให้ตัวระบุอินเทอร์เฟซที่ไม่ซ้ำใคร

FE80:0000:0000:0000:abcd:abcd:abcd:abcd

หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับที่อยู่ IPv6 ของลิงก์ในเครื่องและการใช้งานบน LAN โปรดอ่านหนังสือของ Rick Graziani ฉบับล่าสุด “ความรู้พื้นฐาน IPv6: แนวทางที่ตรงไปตรงมาเพื่อทำความเข้าใจ IPv6".

หลายคนสับสนเกี่ยวกับที่อยู่ IPv6 link-local เมื่อเรียนรู้เกี่ยวกับ IPv6 เป็นครั้งแรก เนื่องจากไม่มี IPv4 ที่เทียบเท่ากับที่อยู่ IPv6 ประเภทนี้ อย่างไรก็ตาม สิ่งเดียวที่ใกล้เคียงกับที่อยู่ IPv6 link-local คือ IPv4วิธีการระบุที่อยู่ IP ส่วนตัวอัตโนมัติ (APIPA). เมื่อโฮสต์ล้มเหลวในการรับที่อยู่ IPv4 ด้วย DHCP ก็จะยอมจำนนต่อชะตากรรมของการไม่ติดต่อสื่อสาร และกำหนดที่อยู่ APIPA ให้กับอินเทอร์เฟซ คุณได้เห็นอย่างแน่นอน (น่าจะเกิดขึ้นในช่วงเวลาของการแก้ไขปัญหาที่ทำให้โกรธ!) โฮสต์ที่มีที่อยู่ IPv4 ในช่วง 169.254.0.0/16 (ดูอาร์เอฟซี 3927). เช่นเดียวกับที่อยู่ IPv6 link-local ที่อยู่ APIPA เหล่านี้เป็นที่อยู่ที่ใช้ได้สำหรับการสื่อสารแบบ unicast ภายในโดเมนกระจายเสียงเดียวบน LAN

ที่อยู่ Link-Local เป็นเกตเวย์เริ่มต้น

ที่อยู่ IPv6 ของ Link-local อยู่บนทุกอินเทอร์เฟซของโฮสต์และเราเตอร์ที่เปิดใช้งาน IPv6 ทุกตัว สิ่งเหล่านี้จำเป็นสำหรับระบบ LANการค้นพบเพื่อนบ้านการสื่อสาร. หลังจากที่เจ้าภาพได้ผ่านการการตรวจจับที่อยู่ซ้ำกระบวนการ (DAD) เพื่อให้แน่ใจว่าที่อยู่ลิงค์โลคัล (และ IID ที่เกี่ยวข้อง) นั้นไม่ซ้ำกันในส่วนของ LAN จากนั้นจึงดำเนินการส่งไอซีเอ็มพีv6ข้อความการร้องขอเราเตอร์ (RS) ที่มาจากที่อยู่นั้น

แม้แต่เราเตอร์ก็ใช้ที่อยู่ลิงค์โลคัลในแต่ละอินเทอร์เฟซของตนเอง เมื่อเราเตอร์ได้รับข้อความ Router Solicitation (RS) ของโฮสต์ (ส่งเพื่อพยายามค้นหาเราเตอร์ใดๆ ที่มีอยู่ในลิงก์และเพื่อเข้าถึงส่วนที่เหลือของเครือข่าย) เราเตอร์จะตอบกลับทันทีด้วย ICMPv6โฆษณาเราเตอร์(RA) ข้อความ ข้อความ RA นั้นมาจากที่อยู่ลิงค์ท้องถิ่นของเราเตอร์ด้วย เมื่อโฮสต์ได้รับข้อความ RA จะอ่านเนื้อหา ทำตามวิธีการกำหนดค่าที่อยู่ที่ระบุในแพ็คเก็ต และในกรณีที่ SLAAC เป็นวิธีการกำหนดค่าที่อยู่ ให้ใช้คำนำหน้า IPv6 /64 ที่รวม RA เพื่อกำหนดค่าที่อยู่ที่มีขอบเขตทั่วโลก จากนั้นโฮสต์จะใช้ลิงค์โลคัลแอดเดรสของเราเตอร์ (และ MAC ที่อยู่ใน RA) เป็นที่อยู่เกตเวย์เริ่มต้น.

ณ จุดนี้ โฮสต์นั้นจะใช้ที่อยู่ IPv6 ของลิงก์ภายในเครื่องของเราเตอร์นี้เป็นที่อยู่ฮอปถัดไปสำหรับเส้นทางเริ่มต้น 0::/0 IPv6 หลังจากตรวจสอบตารางเส้นทางของโฮสต์แล้ว IPv6 กรีนฮอร์นมักจะประหลาดใจที่พบว่าที่อยู่ในลิงค์โลคัลเป็นที่อยู่ฮอปถัดไปสำหรับเส้นทางนั้น จากนั้นพวกเขาอาจอุทานว่า “เป็นไปได้อย่างไร!” การโต้กลับคือ “จงสงบไว้และเรียนรู้ Link-Local”

แอดเดรสของลิงก์ในตัวเครื่องอาจเข้าใจได้ว่าเป็นแอดเดรสที่ใช้เป็นแอดเดรสแบบสแตนด์อินชนิดหนึ่ง ซึ่งเป็นแอดเดรสที่ระบุลิงค์ที่ควรใช้เพื่อเข้าถึงฮอปถัดไป โฮสต์จะยังคงส่งแพ็กเก็ตที่มาจากที่อยู่ร่วมของตัวเองและปลายทางสำหรับที่อยู่ร่วมของเป้าหมาย อย่างไรก็ตาม ที่อยู่ลิงค์โลคัลในตารางเส้นทางจะถูกใช้เพื่อจับคู่กับที่อยู่ MAC ของเน็กซ์ฮอปในแคชเพื่อนบ้าน ที่อยู่ลิงค์โลคัลไม่ได้ใช้เป็นที่อยู่ปลายทางของแพ็คเก็ต off-net ใด ๆ ของโฮสต์ แต่เป็นเพียงวิธีสำหรับโฮสต์ในการเรียนรู้ที่อยู่ MAC ของเราเตอร์ถัดไปที่จะส่งต่อแพ็กเก็ต IPv6 ของโฮสต์ไปยังที่อยู่ปลายทาง โฮสต์เพียงแค่ต้องการให้แพ็กเก็ตเริ่มต้นในการเดินทางแบบ hop-by-hop ไปยังปลายทาง (และการรับแพ็กเก็ตไปยังเกตเวย์เริ่มต้นเป็นขั้นตอนแรก)

ในตอนแรกวิศวกร IPv6 ที่มีประสบการณ์อาจตื่นตระหนกกับข้อเท็จจริงที่ว่าที่อยู่ลิงค์โลคัลของเราเตอร์นั้นเป็นที่อยู่ถัดไปฮอปที่ถูกต้องสมบูรณ์ แต่เมื่อเวลาผ่านไปความเข้าใจของแคชการค้นพบเพื่อนบ้านแข็งตัวและการกำหนดค่านี้จะกลายเป็นบรรทัดฐานที่ยอมรับได้ ข้อเท็จจริงนี้ยังได้รับการเสริมเมื่อคุณสังเกตตารางการกำหนดเส้นทางแบบ unicast ของ IPv6 บนเราเตอร์ใดๆ และคุณจะเห็นที่อยู่ลิงก์ในเครื่องของเราเตอร์แบบ Next-Hop ทันที เราเตอร์ไม่ได้แก้ไขที่อยู่ Unicast ส่วนกลางต้นทางหรือปลายทางในแพ็กเก็ต แต่ใช้ที่อยู่เชื่อมโยงแบบ Next-Hop เป็นวิธีในการส่งต่อแพ็กเก็ตข้ามลิงก์ไปยังปลายทางสุดท้ายของแพ็กเก็ต

ลิงค์ที่ดูแลในท้องถิ่น - ที่อยู่ในท้องถิ่น

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

โหนด IPv6 ใช้ EUI-64, การกำหนดแอดเดรสความเป็นส่วนตัว หรือ SLAAC ที่เสถียรเพื่อรับ IID (เช่น 64 บิตสุดท้าย) ของลิงค์โลคัลแอดเดรส ไม่ว่าในกรณีใด IID นั้นจำไม่ง่าย และอาจต้องตัดและวางหากใช้ในการกำหนดค่าแบบคงที่ ภาวะที่กลืนไม่เข้าคายไม่ออก IID ของลิงก์ในเครื่องเดียวกันนี้มีอยู่สำหรับเราเตอร์และกล่องตรงกลางอื่นๆ เช่น ไฟร์วอลล์และโหลดบาลานเซอร์ ในสถานการณ์เหล่านี้ เราอาจต้องกำหนดค่าที่อยู่ IPv6 ของฮอปถัดไปแบบคงที่สำหรับเส้นทางแบบคงที่หรือสำหรับเกตเวย์เริ่มต้นบนโฮสต์ ดังนั้นเราจึงต้องการวิธีที่จะทำให้สิ่งต่าง ๆ ง่ายขึ้นเมื่อต้องกำหนดค่าที่เราเลือกใช้

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

What You Need to Know about IPv6 Link-Local Addresses - Zivaro (1)

สรุป

แอดเดรส Link-local IPv6 อาจทำให้สับสนในตอนแรกเมื่อคุณเรียนรู้เกี่ยวกับ IPv6 เป็นครั้งแรก แต่คุณจะคุ้นเคยกับวิธีการทำงานอย่างรวดเร็วและชื่นชมการทำงานของมัน ในตอนแรก อาจดูแปลกที่จะใช้ที่อยู่ IPv6 แบบลิงก์ในเครื่องเป็นที่อยู่ถัดไปสำหรับเส้นทางแบบคงที่หรือเป็นเราเตอร์เกตเวย์เริ่มต้นในตารางเส้นทางของโฮสต์ อย่างไรก็ตาม มีวิธีการต่างๆ เช่น แอดเดรสลิงก์-โลคัลที่จัดการในเครื่อง ซึ่งสามารถลดความซับซ้อนของการกำหนดค่าคงที่นี้อย่างมาก เป็นอีกวิธีหนึ่งที่ IPv6 สามารถทำได้ง่ายกว่าโปรโตคอล IPv4 เดิม

โพสต์นี้เดิมปรากฏในชุมชน Infoblox: https://community.infoblox.com/t5/IPv6-CoE-Blog/FE80-1-is-a-Perfectly-Valid-IPv6-Default-Gateway-Address/ba-p/10706

Scott Hogg เป็นประธานเจ้าหน้าที่ฝ่ายเทคโนโลยี (CTO) ของ GTRI

สิ่งที่คุณต้องรู้เกี่ยวกับ IPv6 Link-Local Addresses - Zivaro (2024)

References

Top Articles
Latest Posts
Article information

Author: Terence Hammes MD

Last Updated:

Views: 5763

Rating: 4.9 / 5 (69 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Terence Hammes MD

Birthday: 1992-04-11

Address: Suite 408 9446 Mercy Mews, West Roxie, CT 04904

Phone: +50312511349175

Job: Product Consulting Liaison

Hobby: Jogging, Motor sports, Nordic skating, Jigsaw puzzles, Bird watching, Nordic skating, Sculpting

Introduction: My name is Terence Hammes MD, I am a inexpensive, energetic, jolly, faithful, cheerful, proud, rich person who loves writing and wants to share my knowledge and understanding with you.