ที่อยู่ IPv6

ดูแหล่งที่มาใน GitHub

มาดูวิธีที่ "ชุดข้อความ" ระบุอุปกรณ์แต่ละเครื่องในเครือข่ายและประเภทอีเมลที่ใช้สื่อสารกันอย่างไร

กล้องติดปืน

ขอบเขต OT

เครือข่ายเทรดมี 3 ขอบเขตที่ใช้ในการแก้ไข Unicast ดังนี้

  • ลิงก์ท้องถิ่น — อินเทอร์เฟซทั้งหมดที่เข้าถึงได้ด้วยการส่งคลื่นวิทยุเดียว
  • Mesh-Local — อินเทอร์เฟซทั้งหมดที่เข้าถึงได้ในเครือข่ายเทรดเดียวกัน
  • ทั่วโลก — อินเทอร์เฟซทั้งหมดที่เข้าถึงได้จากภายนอกเครือข่ายเทรด

ขอบเขต 2 ขอบเขตแรกสอดคล้องกับคํานําหน้าที่กําหนดโดยเครือข่ายเทรด Link-Local จะมีคํานําหน้าเป็น fe80::/16 ขณะที่ Mesh-Local จะมีคํานําหน้าเป็น fd00::/8

Unicast

มีที่อยู่ Uni6 IPv6 หลายรายการที่ระบุอุปกรณ์เทรดเดียว รวมถึงมีฟังก์ชันที่แตกต่างกันไปตามขอบเขตและกรณีการใช้งาน

ก่อนที่จะลงรายละเอียดแต่ละประเภท โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับตัวระบุทั่วไปที่เรียกว่าตัวระบุตําแหน่งการกําหนดเส้นทาง (RLOC) RSAOC จะระบุอินเทอร์เฟซเทรด โดยอิงตามตําแหน่งของโทโพโลยีเครือข่าย

วิธีสร้างตัวระบุตําแหน่ง

อุปกรณ์ทั้งหมดจะได้รับการกําหนดรหัสเราเตอร์และรหัสย่อย เราเตอร์แต่ละเครื่องจะเก็บรักษาตารางของบุตรหลานทั้งหมด ซึ่งเป็นชุดค่าผสมของอุปกรณ์ที่ไม่ซ้ํากันในโทโพโลยี ตัวอย่างเช่น ลองพิจารณาโหนดที่ไฮไลต์ในโทโพโลยีต่อไปนี้ โดยที่หมายเลขในเราเตอร์ (Pentagon) คือรหัสเราเตอร์ และตัวเลขในอุปกรณ์ปลายทาง (วงกลม) คือรหัสย่อย

โทโพโลยีโทโอ

รหัสเราเตอร์ของบุตรหลานแต่ละคนจะสอดคล้องกับเครือข่ายหลัก (เราเตอร์) เนื่องจากเราเตอร์ไม่ใช่รายการย่อย Child ID สําหรับเราเตอร์จึงเป็น 0 เสมอ โดยระบบจะรวมค่าเหล่านี้เข้าด้วยกันสําหรับแต่ละอุปกรณ์ในเครือข่ายชุดข้อความ และจะใช้เพื่อสร้าง RLOC16 ซึ่งเป็น 16 บิตสุดท้ายของ RSAOC

ตัวอย่างเช่น ต่อไปนี้เป็นวิธีคํานวณ RLOC16 สําหรับโหนดด้านซ้ายบน (รหัสเส้นทาง = 1 และ Child ID = 1)

OT พอร์ทัล 16

RLOC16 เป็นส่วนหนึ่งของ Interface Identifier (IID) ซึ่งสอดคล้องกับ 64 บิตสุดท้ายของที่อยู่ IPv6 IID บางรายการสามารถใช้เพื่อระบุอินเทอร์เฟซเทรดบางประเภท เช่น IID สําหรับ RLOC จะอยู่ในรูปแบบนี้เสมอ

0000:00ff:fe00:RLOC16

IID ที่รวมกับคํานําหน้า Mesh-Local จะส่งผลให้เกิด RLOC ตัวอย่างเช่น การใช้คํานําหน้า Mesh-Local ของ fde5:8dba:82e1:1::/64 คือ RLOC สําหรับโหนดที่ RLOC16 = 0x401 มีลักษณะดังนี้

OT OTOC

ตรรกะเดียวกันนี้สามารถใช้เพื่อระบุ RLOC สําหรับโหนดที่ไฮไลต์ทั้งหมดในโทโพโลยีตัวอย่างข้างต้นได้

OTโทโพโลยีพร้อมที่อยู่

อย่างไรก็ตาม เนื่องจาก RLOC จะอิงตามตําแหน่งของโหนดในโทโพโลยี พอร์ทัลของโหนดอาจมีการเปลี่ยนแปลงเมื่อโทโพโลยีมีการเปลี่ยนแปลง

ตัวอย่างเช่น อาจมีการนําโหนด 0x400 ออกจากเครือข่ายเทรด โหนด 0x401 และ 0x402 จะสร้างลิงก์ใหม่ไปยังเราเตอร์ที่ต่างกัน และจึงเป็นการกําหนดให้เอลิเมนต์แต่ละรายการได้รับ RLOC16 และ RLOC ใหม่ ดังนี้

OTโทโพโลยีหลังเปลี่ยน

ประเภทที่อยู่ Unicast

RLOC เป็นเพียงหนึ่งในที่อยู่ Uni6 Unicast ที่อุปกรณ์เทรดมีได้ หมวดหมู่อีกหมวดหมู่หนึ่งเรียกว่าตัวระบุปลายทาง (EID) ซึ่งเป็นตัวระบุอินเทอร์เฟซชุดข้อความที่ไม่ซ้ํากันภายในพาร์ติชันเครือข่ายเทรด EID เป็นอิสระจากโทโพโลยีเครือข่ายเทรด

โปรดดูรายละเอียดประเภท Unicode ทั่วไปที่ด้านล่าง

EID ที่ระบุอินเทอร์เฟซเทรดที่เข้าถึงได้ด้วยการส่งวิทยุรายการเดียว
ตัวอย่างfe80::54db:881c:3845:57f4
รหัสอิงตามที่อยู่แบบขยาย 802.15.4
ขอบเขตลิงก์-ท้องถิ่น
รายละเอียด
  • ใช้เพื่อค้นหาเพื่อนบ้าน กําหนดค่าลิงก์ และข้อมูลการกําหนดเส้นทาง Exchange
  • ไม่ใช่ที่อยู่ที่เปลี่ยนเส้นทางได้
  • มีคํานําหน้า fe80::/16 เสมอ

EID ภายในเครื่อง (ML-EID)

EID ที่ระบุอินเทอร์เฟซเทรด ไม่เกี่ยวข้องกับโทโพโลยีเครือข่าย ใช้เพื่อเข้าถึงอินเทอร์เฟซชุดข้อความภายในพาร์ติชันชุดข้อความเดียวกัน เรียกอีกอย่างว่าที่อยู่ท้องถิ่นที่ไม่ซ้ํา (ULA)
ตัวอย่างfde5:8dba:82e1:1:416:993c:8399:35ab
รหัสเลือกแบบสุ่มแล้วหลังจากค่าคอมมิชชันเสร็จสมบูรณ์
ขอบเขตตาข่าย-ท้องถิ่น
รายละเอียด
  • ไม่เปลี่ยนแปลงเนื่องจากโทโพโลยีมีการเปลี่ยนแปลง
  • แอปพลิเคชันควรใช้
  • มีคํานําหน้า fd00::/8 เสมอ

ตัวระบุตําแหน่ง (RLOC)

ระบุอินเทอร์เฟซเทรด โดยอิงตามตําแหน่งของโทโพโลยีเครือข่าย
ตัวอย่างfde5:8dba:82e1:1::ff:fe00:1001
รหัส0000:00ff:fe00:RLOC16
ขอบเขตตาข่าย-ท้องถิ่น
รายละเอียด
  • สร้างเมื่ออุปกรณ์เชื่อมต่อกับเครือข่าย
  • สําหรับการส่งข้อมูลบันทึก IPv6 ภายในเครือข่ายเทรด
  • การเปลี่ยนแปลงเมื่อโทโพโลยีมีการเปลี่ยนแปลง
  • โดยทั่วไปแอปพลิเคชันจะไม่ได้ใช้

ตัวระบุตําแหน่ง Cast (ALOC)

ระบุอินเทอร์เฟซเทรดผ่านการค้นหา RLOC เมื่อไม่ทราบ RLOC ของปลายทาง
ตัวอย่างfde5:8dba:82e1:1::ff:fe00:fc01
รหัส0000:00ff:fe00:fcXX
ขอบเขตตาข่าย-ท้องถิ่น
รายละเอียด
  • fcXX = ปลายทาง ALOC ซึ่งค้นหา RLOC ที่เหมาะสม
  • โดยทั่วไปแอปพลิเคชันจะไม่ได้ใช้

ที่อยู่ Unicast ทั่วโลก (GUA)

EID ที่ระบุอินเทอร์เฟซเทรดในขอบเขตส่วนกลางที่นอกเหนือจากเครือข่ายเทรด
ตัวอย่าง2000::54db:881c:3845:57f4
รหัส
  • SLAAC — ตัวอุปกรณ์จะกําหนดแบบสุ่ม
  • DHCP — กําหนดโดยเซิร์ฟเวอร์ DHCPv6
  • ด้วยตนเอง — กําหนดโดยเลเยอร์ของแอปพลิเคชัน
ขอบเขตทั่วโลก
รายละเอียด
  • ที่อยู่ IPv6 สาธารณะ
  • มีคํานําหน้า 2000::/3 เสมอ

มัลติแคสต์

มัลติแคสต์ใช้สื่อสารกับอุปกรณ์หลายเครื่องพร้อมกัน ในเครือข่ายเทรด ระบบจะจองที่อยู่บางรายการเพื่อใช้มัลติแคสต์กับกลุ่มอุปกรณ์ที่แตกต่างกัน โดยขึ้นอยู่กับขอบเขต

ที่อยู่ IPv6 ขอบเขต ส่งถึง
ff02::1 ลิงก์-ท้องถิ่น FTD และ MED ทั้งหมด
ff02::2 ลิงก์-ท้องถิ่น FTD ทั้งหมด
ff03::1 ตาข่าย-ท้องถิ่น FTD และ MED ทั้งหมด
ff03::2 ตาข่าย-ท้องถิ่น FTD ทั้งหมด

คุณอาจสังเกตเห็นว่าอุปกรณ์ที่ไม่มีโหมดสลีป (SED) ไม่ได้รวมอยู่ในผู้รับในตารางมัลติแคสต์ด้านบน แต่เทรดจะกําหนดที่อยู่มัลติแคสต์แบบ IPv6 ที่กําหนดขอบเขตระดับ LAN ซึ่งใช้ลิงก์] ที่อยู่ Multicast เหล่านี้แตกต่างกันตามเครือข่ายเทรด เนื่องจากสร้างขึ้นบนคํานําหน้า Unicast-Local (ดู RFC 3306 เพื่อดูรายละเอียดเพิ่มเติมเกี่ยวกับที่อยู่มัลติแคสต์แบบ IPv6 ที่ใช้ unicast-prefix)

อุปกรณ์เทรดรองรับขอบเขตที่กําหนดเองนอกเหนือจากที่ระบุไว้ในรายการอยู่แล้วด้วย

Anycast

Anycast จะใช้กําหนดเส้นทางการรับส่งข้อมูลไปยังอินเทอร์เฟซเทรดเมื่อไม่ทราบ RLOC ของปลายทาง Anycast Locator (ALOC) จะระบุตําแหน่งของอินเทอร์เฟซหลายรายการภายในพาร์ติชันชุดข้อความ 16 บิตสุดท้ายของ ALOC ซึ่งเรียกว่า ALOC16 จะอยู่ในรูปแบบ 0xfcXX ซึ่งแสดงถึงประเภท ALOC

เช่น ALOC16 ระหว่าง 0xfc01 กับ 0xfc0f สงวนไว้สําหรับตัวแทน DHCPv6 หากไม่ทราบ TTL ของตัวแทน DHCPv6 ที่เจาะจง (อาจเป็นเพราะโทโพโลยีเครือข่ายมีการเปลี่ยนแปลง) ระบบอาจส่งข้อความไปยัง ALOC Agent ของ DHCPv6 เพื่อรับ RLOC

ชุดข้อความกําหนดค่า ALOC16 ต่อไปนี้

ALOC16 ประเภท
0xfc00 คะแนนนำ
0xfc01 - 0xfc0f ตัวแทน DHCPv6
0xfc10 - 0xfc2f บริการ
0xfc30 - 0xfc37 ประธานสมาคม
0xfc40 - 0xfc4e ตัวแทน Neighbor Discovery
0xfc380xfc3f
0xfc4f0xfcff
จองแล้ว

สรุป

สิ่งที่คุณได้เรียนรู้มีดังนี้

  • เครือข่ายเทรดประกอบด้วยขอบเขต 3 รายการ ได้แก่ Link-Local, Mesh-Local และ Global
  • อุปกรณ์เทรดมีที่อยู่ IPv6 ของ Unicast หลายรายการ
    • RLOC จะแสดงตําแหน่งของอุปกรณ์ในเครือข่ายเทรด
    • ML-EID ไม่ซ้ํากันในอุปกรณ์เทรดภายในพาร์ติชันและควรใช้โดยแอปพลิเคชัน
  • เทรดใช้มัลติแคสต์เพื่อส่งต่อข้อมูลไปยังกลุ่มของโหนดและเราเตอร์
  • ชุดข้อความใช้แคสต์เมื่อไม่ทราบ RLOC ของปลายทาง

ดูข้อมูลเพิ่มเติมเกี่ยวกับที่อยู่ IPv6 ของชุดข้อความได้ที่ส่วน 5.2 และ 5.3 ของข้อกําหนดชุดข้อความ

ทดสอบความเข้าใจ

ขอบเขต 3 ขอบเขตที่ใช้สําหรับการจัดการ Unicast ในเครือข่ายเทรด
ส่วนตัว
ผิด
อินเทอร์เฟซ-ท้องถิ่น
ผิด
ลิงก์-ท้องถิ่น
ถูกต้อง
เว็บไซต์ในพื้นที่
ผิด
ตาข่าย-ท้องถิ่น
ถูกต้อง
ทั่วโลก
ถูกต้อง
การที่อุปกรณ์มี Child ID เป็น 0 หมายความว่าอย่างไร
อุปกรณ์เป็นเด็ก
ผิด
อุปกรณ์คือ REED
ปิด แต่ไม่ถูกต้อง
อุปกรณ์เป็นเราเตอร์
ถูกต้อง เราเตอร์จะมีรหัสย่อยเป็น 0 เสมอ
กล้องซึ่งเป็นโหนดในเครือข่ายเทรดจะได้รับ RLOC16 และ RLOC ใหม่ เหตุการณ์ใดต่อไปนี้อาจทําให้เกิดเหตุการณ์นี้
มีคนดาวน์โหลดรูปภาพจากกล้องจากระยะไกล
ผิด เหตุการณ์นี้จะไม่ส่งผลต่อเครือข่ายเทรด
เราเตอร์หลุดเครือข่าย
ถูกต้อง เมื่อเราเตอร์ออกจากเครือข่าย โทโพโลยีเครือข่ายจะเปลี่ยนแปลง ซึ่งอาจส่งผลให้อุปกรณ์โปรโมตตัวเองไปยังเราเตอร์และได้รับ RLOC ใหม่
กล้องเข้าสู่โหมดสลีป ซึ่งจะเปลี่ยนโทโพโลยีเครือข่าย
ผิด การเข้าสู่โหมดสลีปไม่ได้ทําให้อุปกรณ์ได้รับที่อยู่เครือข่ายใหม่เสมอไป
อุปกรณ์ในเครือข่ายชุดข้อความจะสมัครใช้บริการที่อยู่มัลติแคสต์ ff03::2 ข้อมูลนี้บอกอะไรเกี่ยวกับอุปกรณ์บ้าง
คืออุปกรณ์ขนาดเล็ก (MED)
ผิด
คืออุปกรณ์ End Screen (FED)
ผิด (คําแนะนํา: อาจมีหรือไม่มี FED ก็ได้)
คือ Minimini Thread Device (MTD)
ผิด
เป็นอุปกรณ์เทรดเต็มรูปแบบ (FTD)
ถูกต้อง เฉพาะอุปกรณ์เทรดแบบเต็มเท่านั้นที่จะใช้ที่อยู่มัลติแคสต์ของ ff03::2 โดยจะใช้งานได้ในขอบเขต Mesh-Local
เทรดประเภทใดที่ใช้เทรดและส่งต่อข้อมูลไปยังกลุ่มโหนดและเราเตอร์
Unicast
ผิด
Anycast
ผิด
มัลติแคสต์
ถูกต้อง
ประกาศ
ผิด
อุปกรณ์เทรดประเภทใดที่ใช้ที่อยู่และการกําหนดเส้นทางใช้เมื่อไม่ทราบ RLOC ของผู้รับข้อความที่ต้องการ
Unicast
ผิด
Anycast
ถูกต้อง Anycast อนุญาตให้อุปกรณ์เข้าถึงโหนดที่ไม่ทราบ RLOC โดยจัดการ ALOC ของอุปกรณ์
มัลติแคสต์
ผิด
ประกาศ
ผิด