IPv6
Mô-đun này bao gồm các chức năng điều khiển giao tiếp IPv6.
Tóm tắt
Bảng liệt kê |
|
---|---|
anonymous enum{
|
enum Địa chỉ IPv6. |
anonymous enum{
|
enum Trạng thái ECN, được biểu thị như trong tiêu đề IP. |
anonymous enum{
|
enum Số giao thức Internet. |
Typedef |
|
---|---|
otBorderRoutingCounters
|
typedefstruct otBorderRoutingCounters
Đại diện cho bộ đếm các gói tin được chuyển tiếp qua Định tuyến biên. |
otIp6Address
|
typedefstruct otIp6Address
Đại diện cho địa chỉ IPv6. |
otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
|
typedefvoid(*
Con trỏ được gọi khi một địa chỉ IPv6 nội bộ được thêm hoặc xóa. |
otIp6AddressComponents
|
typedefstruct otIp6AddressComponents
Đại diện cho các thành phần của địa chỉ IPv6. |
otIp6AddressInfo
|
typedefstruct otIp6AddressInfo
|
otIp6InterfaceIdentifier
|
typedefstruct otIp6InterfaceIdentifier
Biểu thị mã nhận dạng giao diện của địa chỉ IPv6. |
otIp6NetworkPrefix
|
typedefstruct otIp6NetworkPrefix
Đại diện cho Tiền tố mạng của một địa chỉ IPv6 (64 bit quan trọng nhất của địa chỉ). |
otIp6Prefix
|
typedefstruct otIp6Prefix
Đại diện cho tiền tố IPv6. |
otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
|
typedefvoid(*
Con trỏ được gọi khi nhận biểu đồ IPv6. |
otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)
|
typedefvoid(*
Con trỏ được gọi với kết quả của otIp6RegisterMulticastListeners . |
otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)
|
typedefbool(*
Con trỏ cho phép người dùng lọc tiền tố và không cho phép thêm địa chỉ SLAAC dựa trên tiền tố. |
otMessageInfo
|
typedefstruct otMessageInfo
Đại diện cho địa chỉ ổ cắm IPv6 cục bộ và ngang hàng. |
otNetifAddress
|
typedefstruct otNetifAddress
Đại diện cho địa chỉ unicast giao diện mạng IPv6. |
otNetifMulticastAddress
|
typedefstruct otNetifMulticastAddress
Đại diện cho địa chỉ đa hướng giao diện mạng IPv6. |
otPacketsAndBytes
|
typedefstruct otPacketsAndBytes
Đại diện cho bộ đếm gói và byte. |
otSockAddr
|
typedefstruct otSockAddr
Đại diện cho địa chỉ ổ cắm IPv6. |
Biến |
|
---|---|
OT_TOOL_PACKED_END
|
Hàm |
|
---|---|
otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
|
Thêm Địa chỉ Giao diện Mạng vào giao diện Luồng.
|
otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
Thêm một cổng vào danh sách cổng không an toàn được cho phép.
|
otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
|
Chuyển đổi chuỗi địa chỉ IPv6 mà con người có thể đọc được thành dạng biểu diễn nhị phân.
|
otIp6AddressToString(const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
|
void
Chuyển đổi một địa chỉ IPv6 đã cho thành một chuỗi dễ đọc.
|
otIp6ArePrefixesEqual(const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
|
bool
Kiểm tra xem hai tiền tố IPv6 có giống nhau hay không.
|
otIp6GetBorderRoutingCounters(otInstance *aInstance)
|
const otBorderRoutingCounters *
Nhận bộ đếm Định tuyến Biên giới.
|
otIp6GetMulticastAddresses(otInstance *aInstance)
|
const otNetifMulticastAddress *
Nhận danh sách các địa chỉ phát đa hướng IPv6 đã đăng ký với giao diện Thread.
|
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
|
void
Nhận tiền tố có mã
aLength từ aAddress . |
otIp6GetUnicastAddresses(otInstance *aInstance)
|
const otNetifAddress *
Lấy danh sách các địa chỉ IPv6 được gán cho giao diện Thread.
|
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
|
const uint16_t *
Trả về một con trỏ tới danh sách cổng không an toàn.
|
otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
bool
Kiểm tra xem hai địa chỉ IPv6 có giống nhau hay không.
|
otIp6IsAddressUnspecified(const otIp6Address *aAddress)
|
bool
Cho biết địa chỉ IPv6 đã cho có phải là Địa chỉ không xác định hay không.
|
otIp6IsEnabled(otInstance *aInstance)
|
bool
Cho biết giao diện IPv6 có hoạt động hay không.
|
otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
|
bool
Kiểm tra xem đã bật chế độ lăng xê phát đa hướng trên giao diện Luồng hay chưa.
|
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
|
bool
Cho biết liệu lưu lượng kiểm soát Luồng (Thread) có bị lọc ra khi phân phối các biểu đồ IPv6 thông qua lệnh gọi lại được chỉ định trong otIp6SetReceiveCallback() hay không.
|
otIp6IsSlaacEnabled(otInstance *aInstance)
|
bool
Cho biết mô-đun SLAAC có được bật hay không.
|
otIp6NewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
|
Phân bổ vùng đệm tin nhắn mới để gửi thông báo IPv6.
|
otIp6NewMessageFromBuffer(otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
|
Phân bổ vùng đệm thông báo mới và ghi dữ liệu IPv6 vào vùng đệm thông báo để gửi thông báo IPv6.
|
otIp6PrefixFromString(const char *aString, otIp6Prefix *aPrefix)
|
Chuyển đổi một chuỗi tiền tố IPv6 mà con người có thể đọc được thành một giá trị nhị phân.
|
otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
uint8_t
Trả về độ dài phù hợp với tiền tố (bit) cho hai địa chỉ IPv6.
|
otIp6PrefixToString(const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
|
void
Chuyển đổi tiền tố IPv6 đã cho thành một chuỗi mà con người có thể đọc được.
|
otIp6ProtoToString(uint8_t aIpProto)
|
const char *
Chuyển đổi một số giao thức IP nhất định thành một chuỗi dễ đọc.
|
otIp6RegisterMulticastListeners(otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
|
Đăng ký trình nghe đa hướng cho bộ định tuyến đường trục chính.
|
otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
|
void
Xoá tất cả các cổng khỏi danh sách cổng không an toàn được cho phép.
|
otIp6RemoveUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Xoá Địa chỉ Giao diện Mạng khỏi giao diện Luồng.
|
otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
Xoá một cổng khỏi danh sách cổng không an toàn được cho phép.
|
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
|
void
Đặt lại bộ đếm định tuyến biên.
|
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
|
Thực hiện lựa chọn địa chỉ nguồn OpenThread.
|
otIp6Send(otInstance *aInstance, otMessage *aMessage)
|
Gửi một datagram IPv6 qua giao diện Thread (Giao diện luồng).
|
otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
|
void
Đăng ký một lệnh gọi lại để thông báo về việc thay đổi địa chỉ IPv6 nội bộ.
|
otIp6SetEnabled(otInstance *aInstance, bool aEnabled)
|
Đưa giao diện IPv6 lên hoặc xuống.
|
otIp6SetMeshLocalIid(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
|
Đặt IID cục bộ lưới (cho mục đích thử nghiệm).
|
otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
|
void
Bật hoặc tắt chế độ lăng xê đa hướng trên giao diện Luồng.
|
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
|
void
Đăng ký một lệnh gọi lại để cung cấp các biểu đồ IPv6 đã nhận.
|
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
|
void
Đặt liệu lưu lượng truy cập kiểm soát Luồng hay không sẽ được lọc khi gửi các biểu đồ IPv6 qua lệnh gọi lại được chỉ định trong otIp6SetReceiveCallback().
|
otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
|
void
Bật/tắt mô-đun SLAAC.
|
otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
|
void
Đặt trình xử lý bộ lọc mô-đun SLAAC.
|
otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
|
void
Chuyển đổi một địa chỉ ổ cắm IPv6 đã cho thành một chuỗi dễ đọc.
|
otIp6SubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Đăng ký giao diện luồng vào một địa chỉ phát đa hướng giao diện mạng.
|
otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Huỷ đăng ký giao diện Luồng đến một Địa chỉ phát đa hướng giao diện mạng.
|
Cấu trúc |
|
---|---|
Bộ đếm định tuyến theo đường viền |
Đại diện cho bộ đếm các gói tin được chuyển tiếp qua Định tuyến biên. |
Địa chỉ Iot6 |
Đại diện cho địa chỉ IPv6. |
otIp6AddressComponents |
Đại diện cho các thành phần của địa chỉ IPv6. |
otIp6AddressInfo |
Biểu thị thông tin địa chỉ IPv6. |
otIp6InterfaceIdentifier |
Biểu thị mã nhận dạng giao diện của địa chỉ IPv6. |
Tiền tố mạng Iot6p |
Đại diện cho Tiền tố mạng của một địa chỉ IPv6 (64 bit quan trọng nhất của địa chỉ). |
Tiền tố otIp6 |
Đại diện cho tiền tố IPv6. |
otMessageInfo |
Đại diện cho địa chỉ ổ cắm IPv6 cục bộ và ngang hàng. |
otNetifAddress |
Đại diện cho địa chỉ unicast giao diện mạng IPv6. |
otNetifMulticastAddress |
Đại diện cho địa chỉ đa hướng giao diện mạng IPv6. |
otPacketsAndBytes |
Đại diện cho bộ đếm gói và byte. |
AddSockAddr |
Đại diện cho địa chỉ ổ cắm IPv6. |
Công đoàn |
|
---|---|
otIp6InterfaceIdentifier:: |
Bảng liệt kê
enum ẩn danh
anonymous enum
Địa chỉ IPv6.
Thuộc tính | |
---|---|
OT_ADDRESS_ORIGIN_DHCPV6
|
Địa chỉ đã gán DHCPv6. |
OT_ADDRESS_ORIGIN_MANUAL
|
Địa chỉ được chỉ định theo cách thủ công. |
OT_ADDRESS_ORIGIN_SLAAC
|
Địa chỉ SLAAC được chỉ định. |
OT_ADDRESS_ORIGIN_THREAD
|
Địa chỉ được gán của chuỗi (ALOC, RLOC, MLEID, v.v.) |
enum ẩn danh
anonymous enum
Trạng thái ECN, được biểu thị như trong tiêu đề IP.
Thuộc tính | |
---|---|
OT_ECN_CAPABLE_0
|
ECT(0) |
OT_ECN_CAPABLE_1
|
ECT(1) |
OT_ECN_MARKED
|
Đã xảy ra tắc nghẽn (CE) |
OT_ECN_NOT_CAPABLE
|
Không có ECT. |
enum ẩn danh
anonymous enum
Số giao thức Internet.
Thuộc tính | |
---|---|
OT_IP6_PROTO_DST_OPTS
|
Tùy chọn đích cho IPv6. |
OT_IP6_PROTO_FRAGMENT
|
Tiêu đề mảnh cho IPv6. |
OT_IP6_PROTO_HOP_OPTS
|
Tùy chọn IPv6 theo từng miền. |
OT_IP6_PROTO_ICMP6
|
ICMP cho IPv6. |
OT_IP6_PROTO_IP6
|
Đóng gói IPv6. |
OT_IP6_PROTO_NONE
|
Không có tiêu đề tiếp theo cho IPv6. |
OT_IP6_PROTO_ROUTING
|
Tiêu đề định tuyến cho IPv6. |
OT_IP6_PROTO_TCP
|
Giao thức điều khiển truyền. |
OT_IP6_PROTO_UDP
|
Biểu đồ người dùng. |
Typedef
Bộ đếm định tuyến biên otBorder
struct otBorderRoutingCounters otBorderRoutingCounters
Đại diện cho bộ đếm các gói tin được chuyển tiếp qua Định tuyến biên.
otIp6AddressCallback
void(* otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
Con trỏ được gọi khi một địa chỉ IPv6 nội bộ được thêm hoặc xóa.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
otIp6AddressComponents
struct otIp6AddressComponents otIp6AddressComponents
Đại diện cho các thành phần của địa chỉ IPv6.
otIp6AddressInfo
struct otIp6AddressInfo otIp6AddressInfo
otIp6InterfaceIdentifier
struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier
Biểu thị mã nhận dạng giao diện của địa chỉ IPv6.
Tiền tố mạng otIp6
struct otIp6NetworkPrefix otIp6NetworkPrefix
Đại diện cho Tiền tố mạng của một địa chỉ IPv6 (64 bit quan trọng nhất của địa chỉ).
otIp6ReceiveCallback
void(* otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
Con trỏ được gọi khi nhận biểu đồ IPv6.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
otIp6registerMulticastListenersCallback
void(* otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)
Con trỏ được gọi với kết quả của otIp6RegisterMulticastListeners
.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
otIp6registerMulticastListeners
Bộ lọc tiền tố otIp6Slaac
bool(* otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)
Con trỏ cho phép người dùng lọc tiền tố và không cho phép thêm địa chỉ SLAAC dựa trên tiền tố.
Bạn có thể sử dụng otIp6SetSlaacPrefixFilter()
để đặt trình xử lý bộ lọc. Trình xử lý bộ lọc được mô-đun SLAAC gọi khi sắp thêm địa chỉ SLAAC dựa trên tiền tố. Giá trị trả về boolean xác định liệu địa chỉ có được lọc (không được thêm) hay không.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
Thông tin về bài viết
struct otMessageInfo otMessageInfo
Đại diện cho địa chỉ ổ cắm IPv6 cục bộ và ngang hàng.
otNetifAddress
struct otNetifAddress otNetifAddress
Đại diện cho địa chỉ unicast giao diện mạng IPv6.
otNetifMulticastAddress
struct otNetifMulticastAddress otNetifMulticastAddress
Đại diện cho địa chỉ đa hướng giao diện mạng IPv6.
Biến
Hàm OT_TOOL_PACKED_END
OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END
Hàm
otIp6AddUnicastAddress
otError otIp6AddUnicastAddress( otInstance *aInstance, const otNetifAddress *aAddress )
Thêm Địa chỉ Giao diện Mạng vào giao diện Luồng.
Thực thể đã truyền aAddress
được sao chép bằng giao diện Luồng. Giao diện Thread chỉ hỗ trợ một số lượng cố định các địa chỉ unicast được thêm bên ngoài. Vui lòng xem OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS
.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
otIp6AddUnsecurePort
otError otIp6AddUnsecurePort( otInstance *aInstance, uint16_t aPort )
Thêm một cổng vào danh sách cổng không an toàn được cho phép.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
Chuỗi địa chỉ otIp6
otError otIp6AddressFromString( const char *aString, otIp6Address *aAddress )
Chuyển đổi chuỗi địa chỉ IPv6 mà con người có thể đọc được thành dạng biểu diễn nhị phân.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
Chuỗi địa chỉ otIp6
void otIp6AddressToString( const otIp6Address *aAddress, char *aBuffer, uint16_t aSize )
Chuyển đổi một địa chỉ IPv6 đã cho thành một chuỗi dễ đọc.
Chuỗi địa chỉ IPv6 được định dạng là 16 giá trị thập lục phân được phân tách bằng dấu ":": (tức là "%x:%x:%x:...:%x").
Nếu chuỗi kết quả không vừa với aBuffer
(trong aSize
ký tự), thì chuỗi sẽ bị cắt bớt nhưng chuỗi đầu ra luôn kết thúc bằng giá trị rỗng.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
otIp6AreprefixesEqual
bool otIp6ArePrefixesEqual( const otIp6Prefix *aFirst, const otIp6Prefix *aSecond )
Kiểm tra xem hai tiền tố IPv6 có giống nhau hay không.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6GetBorder RouteCounter
const otBorderRoutingCounters * otIp6GetBorderRoutingCounters( otInstance *aInstance )
Nhận bộ đếm Định tuyến Biên giới.
Bạn phải bật tính năng thời gian xây dựng OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE
.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Con trỏ tới bộ đếm Định tuyến Biên giới.
|
otIp6GetMulticastAddresses
const otNetifMulticastAddress * otIp6GetMulticastAddresses( otInstance *aInstance )
Nhận danh sách các địa chỉ phát đa hướng IPv6 đã đăng ký với giao diện Thread.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Con trỏ tới địa chỉ phát đa hướng giao diện mạng đầu tiên.
|
otIp6Getprefix
void otIp6GetPrefix( const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix )
Nhận tiền tố có mã aLength
từ aAddress
.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
otIp6GetUnicastAddresses
const otNetifAddress * otIp6GetUnicastAddresses( otInstance *aInstance )
Lấy danh sách các địa chỉ IPv6 được gán cho giao diện Thread.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Con trỏ tới địa chỉ giao diện mạng đầu tiên.
|
otIp6GetUnsecurePorts
const uint16_t * otIp6GetUnsecurePorts( otInstance *aInstance, uint8_t *aNumEntries )
Trả về một con trỏ tới danh sách cổng không an toàn.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Trả về |
Con trỏ tới danh sách cổng không an toàn.
|
otIp6IsAddressEqual
bool otIp6IsAddressEqual( const otIp6Address *aFirst, const otIp6Address *aSecond )
Kiểm tra xem hai địa chỉ IPv6 có giống nhau hay không.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6IsAddressUnspecified
bool otIp6IsAddressUnspecified( const otIp6Address *aAddress )
Cho biết địa chỉ IPv6 đã cho có phải là Địa chỉ không xác định hay không.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
Đã bật Isot6
bool otIp6IsEnabled( otInstance *aInstance )
Cho biết giao diện IPv6 có hoạt động hay không.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6IsMulticastPromiscuousEnabled
bool otIp6IsMulticastPromiscuousEnabled( otInstance *aInstance )
Kiểm tra xem đã bật chế độ lăng xê phát đa hướng trên giao diện Luồng hay chưa.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
otIp6SetMulticastPromiscuousEnabled
otIp6IsReceiveFilterEnabled
bool otIp6IsReceiveFilterEnabled( otInstance *aInstance )
Cho biết liệu lưu lượng kiểm soát Luồng (Thread) có bị lọc ra khi phân phối các biểu đồ IPv6 thông qua lệnh gọi lại được chỉ định trong otIp6SetReceiveCallback() hay không.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
TRUE nếu lưu lượng truy cập kiểm soát Chuỗi được lọc, nếu không thì FALSE.
|
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled
otIp6IsSlaacEnabled
bool otIp6IsSlaacEnabled( otInstance *aInstance )
Cho biết mô-đun SLAAC có được bật hay không.
Bạn phải bật tính năng thời gian xây dựng OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Giá trị trả về |
|
otIp6Tin nhắn mới
otMessage * otIp6NewMessage( otInstance *aInstance, const otMessageSettings *aSettings )
Phân bổ vùng đệm tin nhắn mới để gửi thông báo IPv6.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Trả về |
Con trỏ trỏ đến vùng đệm tin nhắn hoặc NULL nếu không có vùng đệm tin nhắn nào hoặc các thông số không hợp lệ.
|
otMessageFree
otIp6NewMessageFromBuffer
otMessage * otIp6NewMessageFromBuffer( otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings )
Phân bổ vùng đệm thông báo mới và ghi dữ liệu IPv6 vào vùng đệm thông báo để gửi thông báo IPv6.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||
Trả về |
Con trỏ tới thông báo hoặc NULL nếu có tiêu đề IPv6 không đúng định dạng hoặc không đủ bộ đệm thông báo.
|
otMessageFree
Chuỗi otIp6prefixFromString
otError otIp6PrefixFromString( const char *aString, otIp6Prefix *aPrefix )
Chuyển đổi một chuỗi tiền tố IPv6 mà con người có thể đọc được thành một giá trị nhị phân.
Tham số aString
phải là một chuỗi ở định dạng "
là địa chỉ IPv6 và
là độ dài tiền tố.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6Tiền tố phù hợp
uint8_t otIp6PrefixMatch( const otIp6Address *aFirst, const otIp6Address *aSecond )
Trả về độ dài phù hợp với tiền tố (bit) cho hai địa chỉ IPv6.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Trả về |
Độ dài đối sánh tiền tố theo bit.
|
Chuỗi otIp6prefixtoString
void otIp6PrefixToString( const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize )
Chuyển đổi tiền tố IPv6 đã cho thành một chuỗi mà con người có thể đọc được.
Chuỗi địa chỉ IPv6 có định dạng là "%x:%x:%x:...[::]/plen".
Nếu chuỗi kết quả không vừa với aBuffer
(trong aSize
ký tự), thì chuỗi sẽ bị cắt bớt nhưng chuỗi đầu ra luôn kết thúc bằng giá trị rỗng.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
Chuỗi otIp6ProtoToTo
const char * otIp6ProtoToString( uint8_t aIpProto )
Chuyển đổi một số giao thức IP nhất định thành một chuỗi dễ đọc.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Một chuỗi đại diện cho
aIpProto . |
otIp6registerMulticastListeners
otError otIp6RegisterMulticastListeners( otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext )
Đăng ký trình nghe đa hướng cho bộ định tuyến đường trục chính.
Bạn phải bật OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE
và OPENTHREAD_CONFIG_COMMISSIONER_ENABLE
.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||
Giá trị trả về |
|
otIp6registerMulticastListenersCallback
otIp6RemoveAllUnsecurePorts
void otIp6RemoveAllUnsecurePorts( otInstance *aInstance )
Xoá tất cả các cổng khỏi danh sách cổng không an toàn được cho phép.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
otIp6RemoveUnicastAddress
otError otIp6RemoveUnicastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Xoá Địa chỉ Giao diện Mạng khỏi giao diện Luồng.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
otIp6RemoveUnsecurePort
otError otIp6RemoveUnsecurePort( otInstance *aInstance, uint16_t aPort )
Xoá một cổng khỏi danh sách cổng không an toàn được cho phép.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
otIp6ResetBorderRouteCounters
void otIp6ResetBorderRoutingCounters( otInstance *aInstance )
Đặt lại bộ đếm định tuyến biên.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
otIp6SelectSourceAddress
otError otIp6SelectSourceAddress( otInstance *aInstance, otMessageInfo *aMessageInfo )
Thực hiện lựa chọn địa chỉ nguồn OpenThread.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6Gửi
otError otIp6Send( otInstance *aInstance, otMessage *aMessage )
Gửi một datagram IPv6 qua giao diện Thread (Giao diện luồng).
Người gọi chuyển quyền sở hữu aMessage
khi thực hiện cuộc gọi này. OpenThread sẽ giải phóng aMessage
khi quá trình xử lý hoàn tất, bao gồm cả khi một giá trị không phải là OT_ERROR_NONE
được trả về.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||
Giá trị trả về |
|
otIp6SetAddressCallback
void otIp6SetAddressCallback( otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext )
Đăng ký một lệnh gọi lại để thông báo về việc thay đổi địa chỉ IPv6 nội bộ.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
Đã bật otIp6Set
otError otIp6SetEnabled( otInstance *aInstance, bool aEnabled )
Đưa giao diện IPv6 lên hoặc xuống.
Gọi tùy chọn này để bật hoặc tắt kết nối IPv6.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6SetMeshLocalIid
otError otIp6SetMeshLocalIid( otInstance *aInstance, const otIp6InterfaceIdentifier *aIid )
Đặt IID cục bộ lưới (cho mục đích thử nghiệm).
Bạn phải bật OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
otIp6SetMulticastPromiscuousEnabled
void otIp6SetMulticastPromiscuousEnabled( otInstance *aInstance, bool aEnabled )
Bật hoặc tắt chế độ lăng xê đa hướng trên giao diện Luồng.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
otIp6IsMulticastPromiscuousEnabled
otIp6SetReceiveCallback
void otIp6SetReceiveCallback( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext )
Đăng ký một lệnh gọi lại để cung cấp các biểu đồ IPv6 đã nhận.
Theo mặc định, lệnh gọi lại này không vượt qua lưu lượng truy cập kiểm soát Luồng. Xem otIp6SetReceiveFilterEnabled() để thay đổi tùy chọn cài đặt Bộ lọc lưu lượng truy cập kiểm soát luồng.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
void otIp6SetReceiveFilterEnabled( otInstance *aInstance, bool aEnabled )
Đặt liệu lưu lượng truy cập kiểm soát Luồng hay không sẽ được lọc khi gửi các biểu đồ IPv6 qua lệnh gọi lại được chỉ định trong otIp6SetReceiveCallback().
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled
otIp6SetSlaacEnabled
void otIp6SetSlaacEnabled( otInstance *aInstance, bool aEnabled )
Bật/tắt mô-đun SLAAC.
Bạn phải bật tính năng thời gian xây dựng OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
.
Khi bật mô-đun SLAAC, địa chỉ SLAAC (dựa trên tiền tố lưới trong dữ liệu mạng) sẽ được thêm vào giao diện. Khi bạn tắt mô-đun SLAAC, mọi địa chỉ SLAAC đã thêm trước đó sẽ bị xóa.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
Bộ lọc tiền tố otIp6SetSlaac
void otIp6SetSlaacPrefixFilter( otInstance *aInstance, otIp6SlaacPrefixFilter aFilter )
Đặt trình xử lý bộ lọc mô-đun SLAAC.
Bạn phải bật tính năng thời gian xây dựng OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
.
Bộ xử lý bộ lọc được mô-đun SLAAC gọi khi sắp thêm địa chỉ SLAAC dựa trên tiền tố để quyết định có nên thêm địa chỉ hay không.
Trình xử lý bộ lọc NULL tắt tính năng lọc và cho phép thêm tất cả địa chỉ SLAAC.
Nếu hàm này không được gọi, bộ lọc mặc định mà mô-đun SLAAC sử dụng sẽ là NULL (tính năng lọc bị tắt).
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
otIp6SockAddrToString
void otIp6SockAddrToString( const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize )
Chuyển đổi một địa chỉ ổ cắm IPv6 đã cho thành một chuỗi dễ đọc.
Chuỗi địa chỉ ổ cắm IPv6 có định dạng là [address
]:port
, trong đó address
xuất hiện dưới dạng 16 giá trị thập lục phân, phân cách bằng :
và port
là số cổng ở định dạng thập phân, ví dụ: "[%x:%x:...:%x]:%u".
Nếu chuỗi kết quả không vừa với aBuffer
(trong aSize
ký tự), thì chuỗi sẽ bị cắt bớt nhưng chuỗi đầu ra luôn kết thúc bằng giá trị rỗng.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
otIp6SubscribeMulticastAddress
otError otIp6SubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Đăng ký giao diện luồng vào một địa chỉ phát đa hướng giao diện mạng.
Thực thể đã truyền aAddress
sẽ được sao chép bằng giao diện Luồng. Giao diện Thread chỉ hỗ trợ một số lượng cố định các địa chỉ phát đa hướng được thêm bên ngoài. Vui lòng xem OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS
.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||
Giá trị trả về |
|
otIp6Hủy nhiều địa chỉ
otError otIp6UnsubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Huỷ đăng ký giao diện Luồng đến một Địa chỉ phát đa hướng giao diện mạng.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
Macro
HP_IP6_ADDRESS_SIZE
OT_IP6_ADDRESS_SIZE 16
Kích thước của địa chỉ IPv6 (byte)
HP_IP6_ADDRESS_STRING_SIZE
OT_IP6_ADDRESS_STRING_SIZE 40
Kích thước đề xuất để biểu diễn chuỗi địa chỉ IPv6.
HP_IP6_HEADER_PROTO_OFFSET
OT_IP6_HEADER_PROTO_OFFSET 6
Phần bù của trường proto trong tiêu đề IPv6 (byte)
OT_IP6_HEADER_SIZE
OT_IP6_HEADER_SIZE 40
Kích thước của tiêu đề IPv6 (byte)
OT_IP6_IID_SIZE
OT_IP6_IID_SIZE 8
Kích thước của mã nhận dạng giao diện IPv6 (byte)
OT_IP6_MAX_MLR_ADDRESSES
OT_IP6_MAX_MLR_ADDRESSES 15
Số địa chỉ IPv6 tối đa được hỗ trợ bởi tính năng Đăng ký trình nghe đa hướng.
OT_IP6_PREFIX_BITSIZE
OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)
Kích thước của tiền tố IPv6 (bit)
OT_IP6_PREFIX_SIZE
OT_IP6_PREFIX_SIZE 8
Kích thước của tiền tố IPv6 (byte)
HP_IP6_PREFIX_STRING_SIZE
OT_IP6_PREFIX_STRING_SIZE 45
Kích thước đề xuất cho chuỗi đại diện của tiền tố IPv6.
OT_IP6_SOCK_ADDR_STRING_SIZE
OT_IP6_SOCK_ADDR_STRING_SIZE 48
Kích thước đề xuất cho chuỗi địa chỉ ổ cắm IPv6.
Tài nguyên
Các chủ đề Tham chiếu API OpenThread bắt nguồn từ mã nguồn, có sẵn trên GitHub. Để biết thêm thông tin hoặc đóng góp cho tài liệu của chúng tôi, hãy tham khảo phần Tài nguyên.