IPv6
โมดูลนี้ประกอบด้วยฟังก์ชันที่ควบคุมการสื่อสารแบบ IPv6
สรุป
        การแจกแจง | 
    |
|---|---|
        anonymous enum{
       | 
      enum หมายเลขโปรโตคอลอินเทอร์เน็ต   | 
    
        anonymous enum{
       | 
      enum ต้นทางของที่อยู่ IPv6   | 
    
        anonymous enum{
       | 
      enum สถานะ ECN ที่แสดงในส่วนหัว IP   | 
    
        Typedef | 
    |
|---|---|
        otBorderRoutingCounters
       | 
      typedefstruct otBorderRoutingCounters
        แสดงตัวนับของแพ็กเก็ตที่ส่งต่อผ่าน Border Routing   | 
    
        otIp6Address
       | 
      typedefstruct otIp6Address
        แสดงที่อยู่ IPv6   | 
    
        otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
       | 
      typedefvoid(*
        ระบบจะเรียกใช้ตัวชี้เมื่อมีการเพิ่มหรือนำที่อยู่ IPv6 ภายในออก   | 
    
        otIp6AddressComponents
       | 
      typedefstruct otIp6AddressComponents
        แสดงองค์ประกอบของที่อยู่ IPv6   | 
    
        otIp6AddressInfo
       | 
      typedefstruct otIp6AddressInfo
        แสดงข้อมูลที่อยู่ IPv6   | 
    
        otIp6InterfaceIdentifier
       | 
      typedefstruct otIp6InterfaceIdentifier
        แสดงตัวระบุอินเทอร์เฟซของที่อยู่ IPv6   | 
    
        otIp6NetworkPrefix
       | 
      typedefstruct otIp6NetworkPrefix
        แสดงคำนำหน้าเครือข่ายของที่อยู่ IPv6 (ตัวเลข 64 บิตที่สำคัญที่สุดของที่อยู่)   | 
    
        otIp6Prefix
       | 
      typedefstruct otIp6Prefix
        แสดงคำนำหน้า IPv6   | 
    
        otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
       | 
      typedefvoid(*
        ระบบจะเรียก Pointer เมื่อได้รับ IPv6 Datagram   | 
    
        otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)
       | 
      typedefvoid(*
        ระบบจะเรียกใช้ตัวชี้พร้อมด้วยผลลัพธ์ของ  otIp6RegisterMulticastListeners  | 
    
        otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)
       | 
      typedefbool(*
        ตัวชี้ช่วยให้ผู้ใช้กรองคำนำหน้าและไม่อนุญาตให้ใช้ที่อยู่ SLAAC ที่อิงตามคำนำหน้าที่จะเพิ่ม   | 
    
        otMessageInfo
       | 
      typedefstruct otMessageInfo
        แสดงที่อยู่ซ็อกเก็ต IPv6 ภายในและเพียร์   | 
    
        otNetifAddress
       | 
      typedefstruct otNetifAddress
        แสดงที่อยู่ยูนิแคสต์อินเทอร์เฟซเครือข่าย IPv6   | 
    
        otNetifMulticastAddress
       | 
      typedefstruct otNetifMulticastAddress
        แสดงที่อยู่มัลติแคสต์ในอินเทอร์เฟซเครือข่าย IPv6   | 
    
        otPacketsAndBytes
       | 
      typedefstruct otPacketsAndBytes
        แสดงตัวนับสำหรับแพ็กเก็ตและไบต์   | 
    
        otSockAddr
       | 
      typedefstruct otSockAddr
        แสดงที่อยู่ซ็อกเก็ต IPv6   | 
    
        ตัวแปร | 
    |
|---|---|
        OT_TOOL_PACKED_END
       | 
      |
        ฟังก์ชัน | 
    |
|---|---|
        otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
       | 
      
        
         เพิ่มที่อยู่อินเทอร์เฟซเครือข่ายลงในอินเทอร์เฟซเทรด  
       | 
    
        otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
       | 
      
        
         เพิ่มพอร์ตไปยังรายการพอร์ตที่ไม่ปลอดภัยที่อนุญาต  
       | 
    
        otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
       | 
      
        
         แปลงสตริงที่อยู่ IPv6 ที่มนุษย์อ่านได้เป็นค่าแทนแบบไบนารี  
       | 
    
        otIp6AddressToString(const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
       | 
      
        void
        แปลงที่อยู่ IPv6 ที่ระบุเป็นสตริงที่มนุษย์อ่านได้  
       | 
    
        otIp6ArePrefixesEqual(const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
       | 
      
        bool
        ทดสอบว่าคำนำหน้า IPv6 ทั้งสองเหมือนกันหรือไม่  
       | 
    
        otIp6GetBorderRoutingCounters(otInstance *aInstance)
       | 
      
        const otBorderRoutingCounters *
        รับตัวนับการกำหนดเส้นทางเส้นขอบ  
       | 
    
        otIp6GetMulticastAddresses(otInstance *aInstance)
       | 
      
        const otNetifMulticastAddress *
        รับรายการที่อยู่แบบมัลติแคสต์แบบ IPv6 ที่สมัครใช้บริการอินเทอร์เฟซเทรด  
       | 
    
        otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
       | 
      
        void
        รับคำนำหน้าที่มี  
      aLength จาก aAddress  | 
    
        otIp6GetUnicastAddresses(otInstance *aInstance)
       | 
      
        const otNetifAddress *
        รับรายการที่อยู่ IPv6 ที่กําหนดให้กับอินเทอร์เฟซเทรด  
       | 
    
        otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
       | 
      
        const uint16_t *
        แสดงผลตัวชี้ไปยังรายการพอร์ตที่ไม่ปลอดภัย  
       | 
    
        otIp6HasUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
       | 
      
        bool
        ระบุว่ามีการกำหนดที่อยู่ IPv6 แบบยูนิแคสต์ไปยังอินเทอร์เฟซเทรดหรือไม่  
       | 
    
        otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
       | 
      
        bool
        ทดสอบว่าที่อยู่ IPv6 ซ้ำกัน 2 รายการหรือไม่  
       | 
    
        otIp6IsAddressUnspecified(const otIp6Address *aAddress)
       | 
      
        bool
        ระบุว่าที่อยู่ IPv6 ที่ระบุเป็นที่อยู่ที่ไม่ระบุหรือไม่  
       | 
    
        otIp6IsEnabled(otInstance *aInstance)
       | 
      
        bool
        ระบุว่าอินเทอร์เฟซ IPv6 ใช้งานได้หรือไม่  
       | 
    
        otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
       | 
      
        bool
        ตรวจสอบว่ามีการเปิดใช้โหมด Promiscuous มัลติแคสต์ ในอินเทอร์เฟซเทรดหรือไม่  
       | 
    
        otIp6IsReceiveFilterEnabled(otInstance *aInstance)
       | 
      
        bool
        ระบุว่ามีการกรองการรับส่งข้อมูลแบบควบคุมเทรดออกเมื่อส่ง Datagram ของ IPv6 ผ่านโค้ดเรียกกลับที่ระบุใน otIp6SetReceiveCallback() หรือไม่  
       | 
    
        otIp6IsSlaacEnabled(otInstance *aInstance)
       | 
      
        bool
        ระบุว่าโมดูล SLAAC เปิดใช้งานอยู่หรือไม่  
       | 
    
        otIp6NewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
       | 
      
        
         จัดสรรบัฟเฟอร์ข้อความใหม่สำหรับการส่งข้อความ IPv6  
       | 
    
        otIp6NewMessageFromBuffer(otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
       | 
      
        
         จัดสรรบัฟเฟอร์ข้อความใหม่และเขียน IPv6 Datagram ลงในบัฟเฟอร์ข้อความสำหรับการส่งข้อความ IPv6  
       | 
    
        otIp6PrefixFromString(const char *aString, otIp6Prefix *aPrefix)
       | 
      
        
         แปลงสตริงคำนำหน้า IPv6 ที่มนุษย์อ่านได้เป็นค่าแทนแบบไบนารี  
       | 
    
        otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
       | 
      
        uint8_t
        แสดงผลความยาวการจับคู่คำนำหน้า (บิต) สำหรับที่อยู่ IPv6 จำนวน 2 รายการ  
       | 
    
        otIp6PrefixToString(const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
       | 
      
        void
        แปลงคำนำหน้า IPv6 ที่ระบุเป็นสตริงที่มนุษย์อ่านได้  
       | 
    
        otIp6ProtoToString(uint8_t aIpProto)
       | 
      
        const char *
        แปลงหมายเลขโปรโตคอล IP ที่ระบุเป็นสตริงที่มนุษย์อ่านได้  
       | 
    
        otIp6RegisterMulticastListeners(otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
       | 
      
        
         ลงทะเบียน Listener มัลติแคสต์ไปยังเราเตอร์ Backbone หลัก  
       | 
    
        otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
       | 
      
        void
        นำพอร์ตทั้งหมดออกจากรายการพอร์ตที่ไม่ปลอดภัยที่อนุญาต  
       | 
    
        otIp6RemoveUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
       | 
      
        
         นำที่อยู่อินเทอร์เฟซเครือข่ายออกจากอินเทอร์เฟซเทรด  
       | 
    
        otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
       | 
      
        
         นำพอร์ตออกจากรายการพอร์ตที่ไม่ปลอดภัยที่อนุญาต  
       | 
    
        otIp6ResetBorderRoutingCounters(otInstance *aInstance)
       | 
      
        void
        รีเซ็ตตัวนับการกำหนดเส้นทางชายแดน  
       | 
    
        otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
       | 
      
        
         ดำเนินการเลือกที่อยู่ต้นทางของ OpenThread  
       | 
    
        otIp6Send(otInstance *aInstance, otMessage *aMessage)
       | 
      
        
         ส่ง IPv6 Datagram ผ่านอินเทอร์เฟซเทรด  
       | 
    
        otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
       | 
      
        void
        ลงทะเบียนโค้ดเรียกกลับเพื่อแจ้งการเปลี่ยนแปลงที่อยู่ IPv6 ภายใน  
       | 
    
        otIp6SetEnabled(otInstance *aInstance, bool aEnabled)
       | 
      
        
         นำอินเทอร์เฟซ IPv6 ขึ้นหรือลง  
       | 
    
        otIp6SetMeshLocalIid(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
       | 
      
        
         ตั้งค่า Mesh Local IID (เพื่อการทดสอบ)  
       | 
    
        otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
       | 
      
        void
        เปิดหรือปิดใช้โหมด Multicast Promiscuous ในอินเทอร์เฟซเทรด  
       | 
    
        otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
       | 
      
        void
        ลงทะเบียนโค้ดเรียกกลับเพื่อมอบ IPv6 Datagram ที่ได้รับ  
       | 
    
        otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
       | 
      
        void
        ตั้งค่าว่าจะกรองการรับส่งข้อมูลแบบควบคุมเทรดออกเมื่อส่ง Datagram ของ IPv6 ผ่านโค้ดเรียกกลับที่ระบุใน otIp6SetReceiveCallback() หรือไม่  
       | 
    
        otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
       | 
      
        void
        เปิด/ปิดใช้โมดูล SLAAC  
       | 
    
        otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
       | 
      
        void
        ตั้งค่าเครื่องจัดการตัวกรองโมดูล SLAAC  
       | 
    
        otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
       | 
      
        void
        แปลงที่อยู่ของซ็อกเก็ต IPv6 ที่ระบุเป็นสตริงที่มนุษย์อ่านได้  
       | 
    
        otIp6SubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
       | 
      
        
         สมัครรับข้อมูลอินเทอร์เฟซเทรดกับที่อยู่มัลติแคสต์อินเทอร์เฟซเครือข่าย  
       | 
    
        otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
       | 
      
        
         ยกเลิกการสมัครใช้อินเทอร์เฟซเทรดไปยังที่อยู่ Multicast ของอินเทอร์เฟซเครือข่าย  
       | 
    
        โครงสร้าง | 
    |
|---|---|
| otBorderRoutingCounters | 
         แสดงตัวนับของแพ็กเก็ตที่ส่งต่อผ่าน Border Routing  | 
    
| otIp6Address | 
         แสดงที่อยู่ IPv6  | 
    
| otIp6AddressComponents | 
         แสดงองค์ประกอบของที่อยู่ IPv6  | 
    
| otIp6AddressInfo | 
         แสดงข้อมูลที่อยู่ IPv6  | 
    
| otIp6InterfaceIdentifier | 
         แสดงตัวระบุอินเทอร์เฟซของที่อยู่ IPv6  | 
    
| otIp6NetworkPrefix | 
         แสดงคำนำหน้าเครือข่ายของที่อยู่ IPv6 (ตัวเลข 64 บิตที่สำคัญที่สุดของที่อยู่)  | 
    
| otIp6Prefix | 
         แสดงคำนำหน้า IPv6  | 
    
| otMessageInfo | 
         แสดงที่อยู่ซ็อกเก็ต IPv6 ภายในและเพียร์  | 
    
| otNetifAddress | 
         แสดงที่อยู่ยูนิแคสต์อินเทอร์เฟซเครือข่าย IPv6  | 
    
| otNetifMulticastAddress | 
         แสดงที่อยู่มัลติแคสต์ในอินเทอร์เฟซเครือข่าย IPv6  | 
    
| otPacketsAndBytes | 
         แสดงตัวนับสำหรับแพ็กเก็ตและไบต์  | 
    
| otSockAddr | 
         แสดงที่อยู่ซ็อกเก็ต IPv6  | 
    
        สหภาพ | 
    |
|---|---|
| 
        otIp6InterfaceIdentifier:: | 
      |
การแจกแจง
enum ที่ไม่ระบุตัวตน
anonymous enum
หมายเลขโปรโตคอลอินเทอร์เน็ต
| พร็อพเพอร์ตี้ | |
|---|---|
            OT_IP6_PROTO_DST_OPTS
           | 
          
             ตัวเลือกปลายทางสำหรับ IPv6  | 
        
            OT_IP6_PROTO_FRAGMENT
           | 
          
             ส่วนหัวของส่วนย่อยสำหรับ IPv6  | 
        
            OT_IP6_PROTO_HOP_OPTS
           | 
          
             ตัวเลือก IPv6 Hop-by-Hop  | 
        
            OT_IP6_PROTO_ICMP6
           | 
          
             ICMP สำหรับ IPv6  | 
        
            OT_IP6_PROTO_IP6
           | 
          
             การห่อหุ้ม IPv6  | 
        
            OT_IP6_PROTO_NONE
           | 
          
             ไม่มีส่วนหัวถัดไปสำหรับ IPv6  | 
        
            OT_IP6_PROTO_ROUTING
           | 
          
             ส่วนหัวของการกำหนดเส้นทางสำหรับ IPv6  | 
        
            OT_IP6_PROTO_TCP
           | 
          
             โปรโตคอลควบคุมการส่งข้อมูล  | 
        
            OT_IP6_PROTO_UDP
           | 
          
             User Datagram  | 
        
enum ที่ไม่ระบุตัวตน
anonymous enum
ต้นทางของที่อยู่ IPv6
| พร็อพเพอร์ตี้ | |
|---|---|
            OT_ADDRESS_ORIGIN_DHCPV6
           | 
          
             ที่อยู่ที่ DHCPv6 กำหนด  | 
        
            OT_ADDRESS_ORIGIN_MANUAL
           | 
          
             ที่อยู่ที่กำหนดด้วยตนเอง  | 
        
            OT_ADDRESS_ORIGIN_SLAAC
           | 
          
             ที่อยู่ที่ SLAAC กำหนด  | 
        
            OT_ADDRESS_ORIGIN_THREAD
           | 
          
             ที่อยู่ที่กําหนดให้กับชุดข้อความ (ALOC, RLOC, MLEID เป็นต้น)  | 
        
enum ที่ไม่ระบุตัวตน
anonymous enum
สถานะ ECN ที่แสดงในส่วนหัว IP
| พร็อพเพอร์ตี้ | |
|---|---|
            OT_ECN_CAPABLE_0
           | 
          
             ECT(0)  | 
        
            OT_ECN_CAPABLE_1
           | 
          
             ECT(1)  | 
        
            OT_ECN_MARKED
           | 
          
             พบความคับคั่ง (CE)  | 
        
            OT_ECN_NOT_CAPABLE
           | 
          
             ไม่ใช่ ECT  | 
        
Typedef
otBorderRoutingCounters
struct otBorderRoutingCounters otBorderRoutingCounters
แสดงตัวนับของแพ็กเก็ตที่ส่งต่อผ่าน Border Routing
otIp6AddressCallback
void(* otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
ระบบจะเรียกใช้ตัวชี้เมื่อมีการเพิ่มหรือนำที่อยู่ IPv6 ภายในออก
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6AddressComponents
struct otIp6AddressComponents otIp6AddressComponents
แสดงองค์ประกอบของที่อยู่ IPv6
otIp6InterfaceIdentifier
struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier
แสดงตัวระบุอินเทอร์เฟซของที่อยู่ IPv6
otIp6NetworkPrefix
struct otIp6NetworkPrefix otIp6NetworkPrefix
แสดงคำนำหน้าเครือข่ายของที่อยู่ IPv6 (ตัวเลข 64 บิตที่สำคัญที่สุดของที่อยู่)
otIp6ReceiveCallback
void(* otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
ระบบจะเรียก Pointer เมื่อได้รับ IPv6 Datagram
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
otIp6RegisterMulticastListenersCallback
void(* otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)
ระบบจะเรียกใช้ตัวชี้พร้อมด้วยผลลัพธ์ของ otIp6RegisterMulticastListeners 
| รายละเอียด | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||||||
otIp6RegisterMulticastListeners
otIp6SlaacPrefixFilter
bool(* otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)
ตัวชี้ช่วยให้ผู้ใช้กรองคำนำหน้าและไม่อนุญาตให้ใช้ที่อยู่ SLAAC ที่อิงตามคำนำหน้าที่จะเพิ่ม
otIp6SetSlaacPrefixFilter() ใช้เพื่อตั้งค่าเครื่องจัดการตัวกรองได้ โมดูล SLAAC จะเรียกใช้ตัวแฮนเดิลตัวกรองเมื่อกำลังจะเพิ่มที่อยู่ SLAAC ตามคำนำหน้า ค่าการแสดงผลแบบบูลีนจะกำหนดว่าที่อยู่จะถูกกรอง (ไม่ได้เพิ่ม) หรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otNetifMulticastAddress
struct otNetifMulticastAddress otNetifMulticastAddress
แสดงที่อยู่มัลติแคสต์ในอินเทอร์เฟซเครือข่าย IPv6
ตัวแปร
OT_TOOL_PACKED_END
OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END
ฟังก์ชัน
otIp6AddUnicastAddress
otError otIp6AddUnicastAddress( otInstance *aInstance, const otNetifAddress *aAddress )
เพิ่มที่อยู่อินเทอร์เฟซเครือข่ายลงในอินเทอร์เฟซเทรด
อินเทอร์เฟซเทรดจะคัดลอกอินสแตนซ์ที่ส่งผ่าน aAddress อินเทอร์เฟซเทรดรองรับที่อยู่ Unicast ที่เพิ่มภายนอกได้ในจำนวนจำกัดเท่านั้น ดู OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
| แสดงผลค่า | 
              
  | 
          ||||||
otIp6AddUnsecurePort
otError otIp6AddUnsecurePort( otInstance *aInstance, uint16_t aPort )
เพิ่มพอร์ตไปยังรายการพอร์ตที่ไม่ปลอดภัยที่อนุญาต
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
| แสดงผลค่า | 
              
  | 
          ||||||
otIp6AddressFromString
otError otIp6AddressFromString( const char *aString, otIp6Address *aAddress )
แปลงสตริงที่อยู่ IPv6 ที่มนุษย์อ่านได้เป็นค่าแทนแบบไบนารี
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6AddressToString
void otIp6AddressToString( const otIp6Address *aAddress, char *aBuffer, uint16_t aSize )
แปลงที่อยู่ IPv6 ที่ระบุเป็นสตริงที่มนุษย์อ่านได้
สตริงที่อยู่ IPv6 มีรูปแบบเป็นค่าฐานสิบหก 16 ค่า โดยคั่นด้วยเครื่องหมาย ':' (เช่น "%x:%x:%x:...:%x").
หากสตริงผลลัพธ์ไม่พอดีกับ aBuffer (ภายใน aSize อักขระ) ระบบจะตัดสตริงให้สั้นลง แต่สตริงที่ส่งออกจะเป็นค่าว่างเสมอ
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6ArePrefixesEqual
bool otIp6ArePrefixesEqual( const otIp6Prefix *aFirst, const otIp6Prefix *aSecond )
ทดสอบว่าคำนำหน้า IPv6 ทั้งสองเหมือนกันหรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6GetBorderRoutingCounters
const otBorderRoutingCounters * otIp6GetBorderRoutingCounters( otInstance *aInstance )
รับตัวนับการกำหนดเส้นทางเส้นขอบ
ต้องเปิดใช้ฟีเจอร์เวลาบิลด์ OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE รายการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
| การส่งคืน | 
               ตัวชี้ไปยังตัวนับการกำหนดเส้นทางชายแดน  
             | 
          ||
otIp6GetMulticastAddresses
const otNetifMulticastAddress * otIp6GetMulticastAddresses( otInstance *aInstance )
รับรายการที่อยู่แบบมัลติแคสต์แบบ IPv6 ที่สมัครใช้บริการอินเทอร์เฟซเทรด
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
| การส่งคืน | 
               ตัวชี้ไปยังที่อยู่มัลติแคสต์ในอินเทอร์เฟซเครือข่ายแรก  
             | 
          ||
otIp6GetPrefix
void otIp6GetPrefix( const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix )
รับคำนำหน้าที่มี aLength จาก aAddress 
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6GetUnicastAddresses
const otNetifAddress * otIp6GetUnicastAddresses( otInstance *aInstance )
รับรายการที่อยู่ IPv6 ที่กําหนดให้กับอินเทอร์เฟซเทรด
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
| การส่งคืน | 
               ตัวชี้ไปยังที่อยู่อินเทอร์เฟซเครือข่ายรายการแรก  
             | 
          ||
otIp6GetUnsecurePorts
const uint16_t * otIp6GetUnsecurePorts( otInstance *aInstance, uint8_t *aNumEntries )
แสดงผลตัวชี้ไปยังรายการพอร์ตที่ไม่ปลอดภัย
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| การส่งคืน | 
               ตัวชี้ไปยังรายการพอร์ตที่ไม่ปลอดภัย  
             | 
          ||||
otIp6HasUnicastAddress
bool otIp6HasUnicastAddress( otInstance *aInstance, const otIp6Address *aAddress )
ระบุว่ามีการกำหนดที่อยู่ IPv6 แบบยูนิแคสต์ไปยังอินเทอร์เฟซเทรดหรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6IsAddressEqual
bool otIp6IsAddressEqual( const otIp6Address *aFirst, const otIp6Address *aSecond )
ทดสอบว่าที่อยู่ IPv6 ซ้ำกัน 2 รายการหรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6IsAddressUnspecified
bool otIp6IsAddressUnspecified( const otIp6Address *aAddress )
ระบุว่าที่อยู่ IPv6 ที่ระบุเป็นที่อยู่ที่ไม่ระบุหรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6IsEnabled
bool otIp6IsEnabled( otInstance *aInstance )
ระบุว่าอินเทอร์เฟซ IPv6 ใช้งานได้หรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6IsMulticastPromiscuousEnabled
bool otIp6IsMulticastPromiscuousEnabled( otInstance *aInstance )
ตรวจสอบว่ามีการเปิดใช้โหมด Promiscuous มัลติแคสต์ ในอินเทอร์เฟซเทรดหรือไม่
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
otIp6SetMulticastPromiscuousEnabled
otIp6IsReceiveFilterEnabled
bool otIp6IsReceiveFilterEnabled( otInstance *aInstance )
ระบุว่ามีการกรองการรับส่งข้อมูลแบบควบคุมเทรดออกเมื่อส่ง Datagram ของ IPv6 ผ่านโค้ดเรียกกลับที่ระบุใน otIp6SetReceiveCallback() หรือไม่
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
| การส่งคืน | 
               TRUE หากการเข้าชมการควบคุมเทรดถูกกรองออก หากไม่เป็นเช่นนั้น FALSE 
             | 
          ||
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled
otIp6IsSlaacEnabled
bool otIp6IsSlaacEnabled( otInstance *aInstance )
ระบุว่าโมดูล SLAAC เปิดใช้งานอยู่หรือไม่
ต้องเปิดใช้ฟีเจอร์เวลาบิลด์ OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE รายการ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| แสดงผลค่า | 
              
  | 
          ||||
otIp6NewMessage
otMessage * otIp6NewMessage( otInstance *aInstance, const otMessageSettings *aSettings )
จัดสรรบัฟเฟอร์ข้อความใหม่สำหรับการส่งข้อความ IPv6
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| การส่งคืน | 
               ตัวชี้ไปยังบัฟเฟอร์ข้อความหรือค่า NULL หากไม่มีบัฟเฟอร์ข้อความหรือพารามิเตอร์ไม่ถูกต้อง 
             | 
          ||||
otMessageFree
otIp6NewMessageFromBuffer
otMessage * otIp6NewMessageFromBuffer( otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings )
จัดสรรบัฟเฟอร์ข้อความใหม่และเขียน IPv6 Datagram ลงในบัฟเฟอร์ข้อความสำหรับการส่งข้อความ IPv6
| รายละเอียด | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||||
| การส่งคืน | 
               ตัวชี้ไปยังข้อความหรือค่า NULL หากมีส่วนหัว IPv6 ที่มีรูปแบบไม่ถูกต้องหรือบัฟเฟอร์ข้อความไม่เพียงพอ 
             | 
          ||||||||
otMessageFree
otIp6PrefixFromString
otError otIp6PrefixFromString( const char *aString, otIp6Prefix *aPrefix )
แปลงสตริงคำนำหน้า IPv6 ที่มนุษย์อ่านได้เป็นค่าแทนแบบไบนารี
พารามิเตอร์ aString ควรเป็นสตริงในรูปแบบ "
 คือที่อยู่ IPv6 และ  คือความยาวของคำนำหน้า
      
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6PrefixMatch
uint8_t otIp6PrefixMatch( const otIp6Address *aFirst, const otIp6Address *aSecond )
แสดงผลความยาวการจับคู่คำนำหน้า (บิต) สำหรับที่อยู่ IPv6 จำนวน 2 รายการ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| การส่งคืน | 
               ความยาวการจับคู่คำนำหน้าเป็นบิต  
             | 
          ||||
otIp6PrefixToString
void otIp6PrefixToString( const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize )
แปลงคำนำหน้า IPv6 ที่ระบุเป็นสตริงที่มนุษย์อ่านได้
สตริงที่อยู่ IPv6 จะมีรูปแบบเป็น "%x:%x:%x:...[::]/plen"
หากสตริงผลลัพธ์ไม่พอดีกับ aBuffer (ภายใน aSize อักขระ) ระบบจะตัดสตริงให้สั้นลง แต่สตริงที่ส่งออกจะเป็นค่าว่างเสมอ
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6ProtoToString
const char * otIp6ProtoToString( uint8_t aIpProto )
แปลงหมายเลขโปรโตคอล IP ที่ระบุเป็นสตริงที่มนุษย์อ่านได้
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
| การส่งคืน | 
               สตริงที่มีค่าแทน  
            aIpProto  | 
          ||
otIp6RegisterMulticastListeners
otError otIp6RegisterMulticastListeners( otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext )
ลงทะเบียน Listener มัลติแคสต์ไปยังเราเตอร์ Backbone หลัก
ต้องเปิดใช้ OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE และ OPENTHREAD_CONFIG_COMMISSIONER_ENABLE
| รายละเอียด | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||||||||
| แสดงผลค่า | 
              
  | 
          ||||||||||||
otIp6RegisterMulticastListenersCallback
otIp6RemoveAllUnsecurePorts
void otIp6RemoveAllUnsecurePorts( otInstance *aInstance )
นำพอร์ตทั้งหมดออกจากรายการพอร์ตที่ไม่ปลอดภัยที่อนุญาต
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
otIp6RemoveUnicastAddress
otError otIp6RemoveUnicastAddress( otInstance *aInstance, const otIp6Address *aAddress )
นำที่อยู่อินเทอร์เฟซเครือข่ายออกจากอินเทอร์เฟซเทรด
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
| แสดงผลค่า | 
              
  | 
          ||||||
otIp6RemoveUnsecurePort
otError otIp6RemoveUnsecurePort( otInstance *aInstance, uint16_t aPort )
นำพอร์ตออกจากรายการพอร์ตที่ไม่ปลอดภัยที่อนุญาต
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
| แสดงผลค่า | 
              
  | 
          ||||||
otIp6ResetBorderRoutingCounters
void otIp6ResetBorderRoutingCounters( otInstance *aInstance )
รีเซ็ตตัวนับการกำหนดเส้นทางชายแดน
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||
otIp6SelectSourceAddress
otError otIp6SelectSourceAddress( otInstance *aInstance, otMessageInfo *aMessageInfo )
ดำเนินการเลือกที่อยู่ต้นทางของ OpenThread
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6Send
otError otIp6Send( otInstance *aInstance, otMessage *aMessage )
ส่ง IPv6 Datagram ผ่านอินเทอร์เฟซเทรด
ผู้โทรจะโอนสิทธิ์การเป็นเจ้าของ aMessage เมื่อทำการโทรนี้ OpenThread จะเพิ่มพื้นที่ว่าง aMessage เมื่อการประมวลผลเสร็จสมบูรณ์ รวมถึงเมื่อแสดงผลค่าอื่นที่ไม่ใช่ OT_ERROR_NONE
| รายละเอียด | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||||||||||
| แสดงผลค่า | 
              
  | 
          ||||||||||||||
otIp6SetAddressCallback
void otIp6SetAddressCallback( otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext )
ลงทะเบียนโค้ดเรียกกลับเพื่อแจ้งการเปลี่ยนแปลงที่อยู่ IPv6 ภายใน
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6SetEnabled
otError otIp6SetEnabled( otInstance *aInstance, bool aEnabled )
นำอินเทอร์เฟซ IPv6 ขึ้นหรือลง
เรียกใช้รายการนี้เพื่อเปิดหรือปิดการสื่อสารแบบ IPv6
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6SetMeshLocalIid
otError otIp6SetMeshLocalIid( otInstance *aInstance, const otIp6InterfaceIdentifier *aIid )
ตั้งค่า Mesh Local IID (เพื่อการทดสอบ)
ต้องใช้ OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
| แสดงผลค่า | 
              
  | 
          ||||
otIp6SetMulticastPromiscuousEnabled
void otIp6SetMulticastPromiscuousEnabled( otInstance *aInstance, bool aEnabled )
เปิดหรือปิดใช้โหมด Multicast Promiscuous ในอินเทอร์เฟซเทรด
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
otIp6IsMulticastPromiscuousEnabled
otIp6SetReceiveCallback
void otIp6SetReceiveCallback( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext )
ลงทะเบียนโค้ดเรียกกลับเพื่อมอบ IPv6 Datagram ที่ได้รับ
โดยค่าเริ่มต้น โค้ดเรียกกลับนี้จะไม่ส่งการรับส่งข้อมูลของการควบคุมเทรด โปรดดู otIp6SetReceiveFilterEnabled() เพื่อเปลี่ยนการตั้งค่าตัวกรองการรับส่งข้อมูลของการควบคุมเทรด
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
void otIp6SetReceiveFilterEnabled( otInstance *aInstance, bool aEnabled )
ตั้งค่าว่าจะกรองการรับส่งข้อมูลแบบควบคุมเทรดออกเมื่อส่ง Datagram ของ IPv6 ผ่านโค้ดเรียกกลับที่ระบุใน otIp6SetReceiveCallback() หรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled
otIp6SetSlaacEnabled
void otIp6SetSlaacEnabled( otInstance *aInstance, bool aEnabled )
เปิด/ปิดใช้โมดูล SLAAC
ต้องเปิดใช้ฟีเจอร์เวลาบิลด์ OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE รายการ
เมื่อเปิดใช้โมดูล SLAAC ระบบจะเพิ่มที่อยู่ SLAAC (ตามคำนำหน้าที่ทำงานร่วมกันในข้อมูลเครือข่าย) ลงในอินเทอร์เฟซ เมื่อปิดใช้โมดูล SLAAC ที่อยู่ SLAAC ที่เพิ่มไว้ก่อนหน้านี้จะถูกนำออก
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
otIp6SetSlaacPrefixFilter
void otIp6SetSlaacPrefixFilter( otInstance *aInstance, otIp6SlaacPrefixFilter aFilter )
ตั้งค่าเครื่องจัดการตัวกรองโมดูล SLAAC
ต้องเปิดใช้ฟีเจอร์เวลาบิลด์ OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE รายการ
โมดูล SLAAC จะเรียกใช้เครื่องจัดการตัวกรองเมื่อกำลังจะเพิ่มที่อยู่ SLAAC โดยอิงตามคำนำหน้าเพื่อตัดสินใจว่าควรเพิ่มที่อยู่ดังกล่าวหรือไม่
ตัวแฮนเดิลตัวกรอง NULL จะปิดใช้การกรองและอนุญาตให้เพิ่มที่อยู่ SLAAC ทั้งหมดได้
หากไม่มีการเรียกฟังก์ชันนี้ ตัวกรองเริ่มต้นที่โมดูล SLAAC ใช้จะเป็น NULL (ปิดใช้การกรองอยู่)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||
otIp6SockAddrToString
void otIp6SockAddrToString( const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize )
แปลงที่อยู่ของซ็อกเก็ต IPv6 ที่ระบุเป็นสตริงที่มนุษย์อ่านได้
สตริงที่อยู่ของซ็อกเก็ต IPv6 มีรูปแบบเป็น [address]:port โดยที่ address จะแสดงเป็นค่าฐานสิบหก 16 ค่าโดยคั่นด้วย : และ port คือหมายเลขพอร์ตในรูปแบบเลขฐานสิบ เช่น "[%x:%x:...:%x]:%u"
หากสตริงผลลัพธ์ไม่พอดีกับ aBuffer (ภายใน aSize อักขระ) ระบบจะตัดสตริงให้สั้นลง แต่สตริงที่ส่งออกจะเป็นค่าว่างเสมอ
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
otIp6SubscribeMulticastAddress
otError otIp6SubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
สมัครรับข้อมูลอินเทอร์เฟซเทรดกับที่อยู่มัลติแคสต์อินเทอร์เฟซเครือข่าย
ระบบจะคัดลอกในอินสแตนซ์ aAddress ที่ส่งผ่านโดยอินเทอร์เฟซเทรด อินเทอร์เฟซเทรดรองรับที่อยู่แบบมัลติแคสต์ที่เพิ่มภายนอกได้เป็นจำนวนที่กำหนดไว้เท่านั้น ดู OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS
| รายละเอียด | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||||||
| แสดงผลค่า | 
              
  | 
          ||||||||||
otIp6UnsubscribeMulticastAddress
otError otIp6UnsubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
ยกเลิกการสมัครใช้อินเทอร์เฟซเทรดไปยังที่อยู่ Multicast ของอินเทอร์เฟซเครือข่าย
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
              
  | 
          ||||||
| แสดงผลค่า | 
              
  | 
          ||||||
มาโคร
OT_IP6_ADDRESS_SIZE
OT_IP6_ADDRESS_SIZE 16
ขนาดของที่อยู่ IPv6 (ไบต์)
OT_IP6_ADDRESS_STRING_SIZE
OT_IP6_ADDRESS_STRING_SIZE 40
ขนาดที่แนะนำสำหรับการแสดงสตริงของที่อยู่ IPv6
OT_IP6_HEADER_PROTO_OFFSET
OT_IP6_HEADER_PROTO_OFFSET 6
ค่าออฟเซ็ตของช่อง Proto ในส่วนหัว IPv6 (ไบต์)
OT_IP6_HEADER_SIZE
OT_IP6_HEADER_SIZE 40
ขนาดของส่วนหัว IPv6 (ไบต์)
OT_IP6_IID_SIZE
OT_IP6_IID_SIZE 8
ขนาดของตัวระบุอินเทอร์เฟซ IPv6 (ไบต์)
OT_IP6_MAX_MLR_ADDRESSES
OT_IP6_MAX_MLR_ADDRESSES 15
จำนวนที่อยู่ IPv6 สูงสุดที่รองรับโดยการลงทะเบียน Listener มัลติแคสต์
OT_IP6_PREFIX_BITSIZE
OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)
ขนาดของคำนำหน้า IPv6 (บิต)
OT_IP6_PREFIX_SIZE
OT_IP6_PREFIX_SIZE 8
ขนาดของคำนำหน้า IPv6 (ไบต์)
OT_IP6_PREFIX_STRING_SIZE
OT_IP6_PREFIX_STRING_SIZE 45
ขนาดที่แนะนำสำหรับการแสดงสตริงของคำนำหน้า IPv6
OT_IP6_SOCK_ADDR_STRING_SIZE
OT_IP6_SOCK_ADDR_STRING_SIZE 48
ขนาดที่แนะนำสำหรับการแสดงสตริงของที่อยู่ซ็อกเก็ต IPv6
แหล่งข้อมูล
หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล