Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

IPv6

Mô-đun này bao gồm các hàm kiểm soát việc giao tiếp IPv6.

Tóm tắt

Bảng liệt kê

anonymous enum{
  OT_ADDRESS_ORIGIN_THREAD = 0,
  OT_ADDRESS_ORIGIN_SLAAC = 1,
  OT_ADDRESS_ORIGIN_DHCPV6 = 2,
  OT_ADDRESS_ORIGIN_MANUAL = 3
}
enum
Nguồn gốc địa chỉ IPv6.
anonymous enum{
  OT_ECN_NOT_CAPABLE = 0x0,
  OT_ECN_CAPABLE_0 = 0x2,
  OT_ECN_CAPABLE_1 = 0x1,
  OT_ECN_MARKED = 0x3
}
enum
Trạng thái ECN, được thể hiện như trong tiêu đề IP.
anonymous enum{
  OT_IP6_PROTO_HOP_OPTS = 0,
  OT_IP6_PROTO_TCP = 6,
  OT_IP6_PROTO_UDP = 17,
  OT_IP6_PROTO_IP6 = 41,
  OT_IP6_PROTO_ROUTING = 43,
  OT_IP6_PROTO_FRAGMENT = 44,
  OT_IP6_PROTO_ICMP6 = 58,
  OT_IP6_PROTO_NONE = 59,
  OT_IP6_PROTO_DST_OPTS = 60
}
enum
Mã số giao thức Internet.

Typedef

otBorderRoutingCounters typedef
Cấu trúc này đại diện cho bộ đếm các gói được chuyển tiếp thông qua Định tuyến biên.
otIp6Address typedef
struct otIp6Address
Cấu trúc này đại diện cho một địa chỉ IPv6.
otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext) typedef
void(*
Con trỏ hàm này được gọi khi một địa chỉ IPv6 nội bộ được thêm vào hoặc bị xóa.
otIp6AddressComponents typedef
Cấu trúc này đại diện cho các thành phần của địa chỉ IPv6.
otIp6AddressInfo typedef
otIp6InterfaceIdentifier typedef
Cấu trúc này thể hiện Mã nhận dạng giao diện của địa chỉ IPv6.
otIp6NetworkPrefix typedef
Cấu trúc này đại diện cho tiền tố mạng của một địa chỉ IPv6 (66 bit quan trọng nhất của địa chỉ).
otIp6Prefix typedef
struct otIp6Prefix
Cấu trúc này đại diện cho một tiền tố IPv6.
otIp6ReceiveCallback)(otMessage *aMessage, void *aContext) typedef
void(*
Con trỏ hàm này được gọi khi nhận được biểu đồ dữ liệu IPv6.
otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum) typedef
void(*
Con trỏ hàm này được gọi với kết quả là otIp6RegisterMulticastListeners.
otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix) typedef
bool(*
Con trỏ hàm này 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ố để thêm.
otMessageInfo typedef
struct otMessageInfo
Cấu trúc này đại diện cho các địa chỉ ổ cắm IPv6 cục bộ và ngang hàng.
otNetifAddress typedef
Cấu trúc này đại diện cho một địa chỉ unicast giao diện mạng IPv6.
otNetifMulticastAddress typedef
Cấu trúc này đại diện cho một địa chỉ phát đa hướng giao diện mạng IPv6.
otPacketsAndBytes typedef
Cấu trúc này đại diện cho các bộ đếm cho gói và byte.
otSockAddr typedef
struct otSockAddr
Cấu trúc này đại diện cho một đị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 chuỗi.
otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
Hàm này thêm một cổng vào danh sách cổng không an toàn được phép.
otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
Hàm này 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
Hàm này chuyển đổi một địa chỉ IPv6 nhất định 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)
Lấy bộ đếm định tuyến biên.
otIp6GetMulticastAddresses(otInstance *aInstance)
Nhận danh sách các địa chỉ phát đa hướng IPv6 được đăng ký giao diện luồng.
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
void
Phương thức này nhận tiền tố là aLength từ aAddress.
otIp6GetUnicastAddresses(otInstance *aInstance)
const otNetifAddress *
Nhận danh sách các địa chỉ IPv6 được gán cho giao diện Luồng.
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
const uint16_t *
Hàm này trả về một con trỏ đến 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
Hàm này cho biết địa chỉ IPv6 đã cho có phải là Địa chỉ chưa được chỉ đị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 chế độ đa hướng phát đa hướng có được bật trên giao diện Luồng hay không.
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
bool
Hàm này cho biết liệu Lưu lượng truy cập điều khiển luồng có bị lọc ra khi phân phối biểu đồ dữ liệu IPv6 thông qua lệnh gọi lại được chỉ định trong otIp6SetReceiveCallback() hay không.
otIp6IsSlaacEnabled(otInstance *aInstance)
bool
Hàm này 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 thông báo 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.
otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
uint8_t
Hàm này trả về độ dài tiền tố (bit) cho hai địa chỉ IPv6.
otIp6PrefixToString(const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
void
Hàm này chuyển đổi một tiền tố IPv6 nhất định thành một chuỗi dễ đọc.
otIp6ProtoToString(uint8_t aIpProto)
const char *
Hàm này chuyển đổi một số giao thức IP nhất định thành một chuỗi có thể đọc được.
otIp6RegisterMulticastListeners(otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
Hàm này đăng ký trình nghe phát đa hướng cho bộ định tuyến chính.
otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
void
Chức năng này sẽ xoá tất cả các cổng khỏi danh sách cổng không an toàn được 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)
Hàm này xoá một cổng khỏi danh sách cổng không an toàn được phép.
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
void
Đặt lại bộ đếm Định tuyến biên.
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
Hàm này thực hiện lựa chọn địa chỉ nguồn OpenThread.
otIp6Send(otInstance *aInstance, otMessage *aMessage)
Hàm này gửi một biểu đồ dữ liệu IPv6 thông qua giao diện Luồng.
otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
void
Hàm này đă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)
Hàm này thiết lập IID cục bộ lưới (cho mục đích kiểm thử).
otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
void
Bật hoặc tắt chế độ đa hướng phát đa hướng trên giao diện Luồng.
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
void
Hàm này đăng ký một lệnh gọi lại để cung cấp sơ đồ dữ liệu IPv6 đã nhận.
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
void
Hàm này đặt xem lưu lượng truy cập Điều khiển luồng có bị lọc ra khi phân phối biểu đồ dữ liệu IPv6 thông qua lệnh gọi lại được chỉ định trong otIp6SetReceiveCallback() hay không.
otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
void
Hàm này bật/tắt mô-đun SLAAC.
otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
void
Hàm này đặt trình xử lý bộ lọc mô-đun SLAAC.
otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
void
Hàm này chuyển đổi một địa chỉ ổ cắm IPv6 nhất định thành một chuỗi có thể đọc đượ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 thành Địa chỉ phát đa hướng giao diện mạng.

Cấu trúc

Bộ đếm định tuyến otBorder

Cấu trúc này đại diện cho bộ đếm các gói được chuyển tiếp thông qua Định tuyến biên.

Địa chỉ otIp6

Cấu trúc này đại diện cho một địa chỉ IPv6.

Thành phần otIp6Address

Cấu trúc này đại diện cho các thành phần của địa chỉ IPv6.

otIp6AddressInfo

Cấu trúc này thể hiện thông tin địa chỉ IPv6.

otIp6InterfaceIdentifier

Cấu trúc này thể hiện Mã nhận dạng giao diện của địa chỉ IPv6.

otIp6NetworkPrefix

Cấu trúc này đại diện cho tiền tố mạng của một địa chỉ IPv6 (66 bit quan trọng nhất của địa chỉ).

Tiền tố otIp6

Cấu trúc này đại diện cho một tiền tố IPv6.

otMessageInfo

Cấu trúc này đại diện cho các địa chỉ ổ cắm IPv6 cục bộ và ngang hàng.

otNetifAddress

Cấu trúc này đại diện cho một địa chỉ unicast giao diện mạng IPv6.

otNetifMulticastAddress

Cấu trúc này đại diện cho một địa chỉ phát đa hướng giao diện mạng IPv6.

otPacketsAndBytes

Cấu trúc này đại diện cho các bộ đếm cho gói và byte.

otSockAddr

Cấu trúc này đại diện cho một địa chỉ ổ cắm IPv6.

Liên minh

otIp6InterfaceIdentifier::OT_ENGINE_PACKED_FIELD

Bảng liệt kê

enum ẩn danh

 anonymous enum

Nguồn gốc đị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ỉ đã chỉ định SLAAC.

OT_ADDRESS_ORIGIN_THREAD

Địa chỉ được chỉ định của chuỗi (ALAT, RGCP, MLEID, v.v.)

enum ẩn danh

 anonymous enum

Trạng thái ECN, được thể hiện như trong tiêu đề IP.

Thuộc tính
OT_ECN_CAPABLE_0

TOS(0)

OT_ECN_CAPABLE_1

ví dụ(1)

OT_ECN_MARKED

Tình trạng tắc nghẽn (CE)

OT_ECN_NOT_CAPABLE

Không phải TOS.

enum ẩn danh

 anonymous enum

Mã 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

Lựa chọn Hop-Hop-by-Hop.

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 nào 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 dữ liệu.

OT_IP6_PROTO_UDP

Sơ đồ người dùng.

Typedef

Bộ đếm định tuyến otBorder

struct otBorderRoutingCounters otBorderRoutingCounters

Cấu trúc này đại diện cho bộ đếm các gói được chuyển tiếp thông qua Định tuyến biên.

Địa chỉ otIp6

struct otIp6Address otIp6Address

Cấu trúc này đại diện cho một địa chỉ IPv6.

otIp6AddressCallback

void(* otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)

Con trỏ hàm này được gọi khi một địa chỉ IPv6 nội bộ được thêm vào hoặc bị xóa.

Thông tin chi tiết
Các tham số
[in] aAddressInfo
Con trỏ trỏ đến thông tin địa chỉ IPv6.
[in] aIsAdded
TRUE nếu aAddress được thêm, FALSE nếu aAddress đã bị xóa.
[in] aContext
Con trỏ trỏ đến ngữ cảnh dành riêng cho ứng dụng.

Thành phần địa chỉ otIp6

struct otIp6AddressComponents otIp6AddressComponents

Cấu trúc này đại diện cho các thành phần của địa chỉ IPv6.

otIp6AddressInfo

struct otIp6AddressInfo otIp6AddressInfo

otIp6InterfaceIdentifier

struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier

Cấu trúc này thể hiện Mã nhận dạng giao diện của địa chỉ IPv6.

otIp6Networkprefix

struct otIp6NetworkPrefix otIp6NetworkPrefix

Cấu trúc này đại diện cho tiền tố mạng của một địa chỉ IPv6 (66 bit quan trọng nhất của địa chỉ).

otIp6Tiền tố

struct otIp6Prefix otIp6Prefix

Cấu trúc này đại diện cho một tiền tố IPv6.

otIp6ReceiveCallback

void(* otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)

Con trỏ hàm này được gọi khi nhận được biểu đồ dữ liệu IPv6.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ trỏ đến vùng đệm thông báo chứa sơ đồ dữ liệu IPv6 đã nhận. Hàm này chuyển quyền sở hữu của aMessage cho người nhận của lệnh gọi lại. Thông báo phải được giải phóng bằng trình nhận lệnh gọi lại sau khi xử lý (xem otMessageFree()).
[in] aContext
Con trỏ trỏ đến ngữ cảnh dành riêng cho ứng dụng.

otIp6registerMulticastListenersCallback

void(* otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum)

Con trỏ hàm này được gọi với kết quả là otIp6RegisterMulticastListeners.

Thông tin chi tiết
Các tham số
[in] aContext
Con trỏ trỏ đến ngữ cảnh người dùng.
[in] aError
OT_ERROR_KHÔNG
[in] aMlrStatus
Trạng thái đăng ký trình nghe phát đa hướng khi aError là OT_ERROR_NONE.
[in] aFailedAddresses
Con trỏ trỏ đến địa chỉ IPv6 không hoạt động khi aError là OT_ERROR_NONE.
[in] aFailedAddressNum
Số địa chỉ IPv6 không hoạt động khi aError là OT_ERROR_NONE.
Xem thêm:
otIp6registerMulticastListeners

otIp6SlaacPrefixFilter

bool(* otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix)

Con trỏ hàm này 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ố để thêm.

Có thể 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ị boolean của thuộc tính này 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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aPrefix
Con trỏ tạo thành tiền tố mà địa chỉ SLAAC sắp được thêm vào.
Giá trị trả về
TRUE
Cho biết rằng địa chỉ SLAAC dựa trên tiền tố nên được lọc và KHÔNG được thêm vào.
FALSE
Cho biết rằng địa chỉ SLAAC dựa trên tiền tố cần được thêm vào.

Thông tin

struct otMessageInfo otMessageInfo

Cấu trúc này đại diện cho các địa chỉ ổ cắm IPv6 cục bộ và ngang hàng.

otNetifAddress

struct otNetifAddress otNetifAddress

Cấu trúc này đại diện cho một địa chỉ unicast giao diện mạng IPv6.

otNetifMulticastAddress

struct otNetifMulticastAddress otNetifMulticastAddress

Cấu trúc này đại diện cho một địa chỉ phát đa hướng giao diện mạng IPv6.

otPacketsAndBytes

struct otPacketsAndBytes otPacketsAndBytes

Cấu trúc này đại diện cho các bộ đếm cho gói và byte.

trình bổ trợ otock

struct otSockAddr otSockAddr

Cấu trúc này đại diện cho một địa chỉ ổ cắm IPv6.

Biến

OT_Instrument_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 chuỗi.

Thực thể đã truyền aAddress sẽ được sao chép qua giao diện Chuỗi. Giao diện luồng chỉ hỗ trợ một số địa chỉ unicast được thêm bên ngoài cố định. Vui lòng xem OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aAddress
Con trỏ trỏ đến Địa chỉ giao diện mạng.
Giá trị trả về
OT_ERROR_NONE
Đã thêm (hoặc cập nhật) Địa chỉ giao diện mạng thành công.
OT_ERROR_INVALID_ARGS
Địa chỉ IP do aAddress chỉ định là địa chỉ nội bộ.
OT_ERROR_NO_BUFS
Giao diện mạng đã lưu trữ địa chỉ bên ngoài tối đa được phép.

otIp6AddUnsecurePort

otError otIp6AddUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Hàm này thêm một cổng vào danh sách cổng không an toàn được phép.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aPort
Giá trị cổng.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công cổng vào danh sách cổng không an toàn được phép.
OT_ERROR_INVALID_ARGS
Cổng không hợp lệ (giá trị 0 được dành riêng cho việc sử dụng nội bộ).
OT_ERROR_NO_BUFS
Danh sách cổng không an toàn đã đầy.

otIp6AddressFromString

otError otIp6AddressFromString(
  const char *aString,
  otIp6Address *aAddress
)

Hàm này 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ố
[in] aString
Con trỏ trỏ đến một chuỗi kết thúc bằng NULL.
[out] aAddress
Con trỏ trỏ đến địa chỉ IPv6.
Giá trị trả về
OT_ERROR_NONE
Đã phân tích cú pháp chuỗi thành công.
OT_ERROR_INVALID_ARGS
Không thể phân tích cú pháp chuỗi.

otIp6AddressToString

void otIp6AddressToString(
  const otIp6Address *aAddress,
  char *aBuffer,
  uint16_t aSize
)

Hàm này chuyển đổi một địa chỉ IPv6 nhất định 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 các ký tự aSize), chuỗi sẽ bị cắt bớt nhưng chuỗi đầu ra luôn được kết thúc bằng giá trị rỗng.

Thông tin chi tiết
Các tham số
[in] aAddress
Con trỏ trỏ đến địa chỉ IPv6 (PHẢI KHÔNG PHẢI là NULL.
[out] aBuffer
Con trỏ trỏ đến một mảng ký tự để xuất chuỗi (PHẢI KHÔNG PHẢI là NULL.
[in] aSize
Kích thước của aBuffer (tính bằng byte). Bạn nên sử dụng OT_IP6_ADDRESS_STRING_SIZE.

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ố
[in] aFirst
Con trỏ trỏ đến tiền tố IPv6 đầu tiên để so sánh.
[in] aSecond
Con trỏ trỏ đến tiền tố IPv6 thứ hai để so sánh.
Giá trị trả về
TRUE
Hai tiền tố IPv6 giống nhau.
FALSE
Hai tiền tố IPv6 không giống nhau.

otIp6GetBorderorderBộ đếm

const otBorderRoutingCounters * otIp6GetBorderRoutingCounters(
  otInstance *aInstance
)

Lấy bộ đếm định tuyến biên.

Hàm này yêu cầu 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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
Trả về
Con trỏ trỏ tới bộ đếm Định tuyến biên.

otIp6GetMulticastAddresses

const otNetifMulticastAddress * otIp6GetMulticastAddresses(
  otInstance *aInstance
)

Nhận danh sách các địa chỉ phát đa hướng IPv6 được đăng ký giao diện luồng.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
Trả về
Con trỏ trỏ đến Địa chỉ phát đa hướng giao diện mạng đầu tiên.

otIp6GetTiền tố

void otIp6GetPrefix(
  const otIp6Address *aAddress,
  uint8_t aLength,
  otIp6Prefix *aPrefix
)

Phương thức này nhận tiền tố là aLength từ aAddress.

Thông tin chi tiết
Các tham số
[in] aAddress
Con trỏ trỏ đến địa chỉ IPv6.
[in] aLength
Độ dài tiền tố (tính bằng bit).
[out] aPrefix
Con trỏ để xuất tiền tố IPv6.

otIp6GetUnicastAddresses

const otNetifAddress * otIp6GetUnicastAddresses(
  otInstance *aInstance
)

Nhận danh sách các địa chỉ IPv6 được gán cho giao diện Luồng.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
Trả về
Con trỏ trỏ đến Địa chỉ giao diện mạng đầu tiên.

otIp6GetUnsecurePorts

const uint16_t * otIp6GetUnsecurePorts(
  otInstance *aInstance,
  uint8_t *aNumEntries
)

Hàm này trả về một con trỏ đến danh sách cổng không an toàn.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[out] aNumEntries
Số mục nhập trong danh sách.
Trả về
Con trỏ trỏ đến 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ố
[in] aFirst
Con trỏ trỏ đến địa chỉ IPv6 đầu tiên để so sánh.
[in] aSecond
Con trỏ trỏ đến địa chỉ IPv6 thứ hai để so sánh.
Giá trị trả về
TRUE
Hai địa chỉ IPv6 giống nhau.
FALSE
Hai địa chỉ IPv6 không giống nhau.

otIp6IsAddressUnspecified

bool otIp6IsAddressUnspecified(
  const otIp6Address *aAddress
)

Hàm này cho biết địa chỉ IPv6 đã cho có phải là Địa chỉ chưa được chỉ định hay không.

Thông tin chi tiết
Các tham số
[in] aAddress
Con trỏ trỏ đến địa chỉ IPv6.
Giá trị trả về
TRUE
Nếu địa chỉ IPv6 là địa chỉ không được chỉ định.
FALSE
Nếu địa chỉ IPv6 không phải là Địa chỉ chưa được chỉ định.

Đã bật otIp6Is

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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
Giá trị trả về
TRUE
Giao diện IPv6 được bật.
FALSE
Giao diện IPv6 bị tắt.

otIp6IsMulticastPromiscuousEnabled

bool otIp6IsMulticastPromiscuousEnabled(
  otInstance *aInstance
)

Kiểm tra xem chế độ đa hướng phát đa hướng có được bật trên giao diện Luồng hay không.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
Xem thêm:
otIp6SetMulticastPromiscuousEnabled

otIp6IsReceiveFilterEnabled

bool otIp6IsReceiveFilterEnabled(
  otInstance *aInstance
)

Hàm này cho biết liệu Lưu lượng truy cập điều khiển luồng có bị lọc ra khi phân phối biểu đồ dữ liệ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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
Trả về
TRUE nếu Lưu lượng truy cập kiểm soát chuỗi được lọc ra, nếu không thì FALSE.
Xem thêm:
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled

otIp6IsSlaacEnabled

bool otIp6IsSlaacEnabled(
  otInstance *aInstance
)

Hàm này cho biết mô-đun SLAAC có được bật hay không.

Hàm này yêu cầu 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ề
TRUE
Đã bật mô-đun SLAAC.
FALSE
Mô-đun SLAAC bị tắt.

otIp6NewMessage

otMessage * otIp6NewMessage(
  otInstance *aInstance,
  const otMessageSettings *aSettings
)

Phân bổ vùng đệm thông báo mới để gửi thông báo IPv6.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aSettings
Con trỏ trỏ đến chế độ cài đặt thông báo hoặc NULL để đặt chế độ cài đặt mặc định.
Trả về
Con trỏ trỏ đến vùng đệm thông báo hoặc NULL nếu không có vùng đệm thông báo nào hoặc tham số không hợp lệ.
Xem thêm:
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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aData
Con trỏ trỏ đến vùng đệm datagam của IPv6.
[in] aDataLength
Kích thước của vùng đệm dữ liệu IPv6 do aData trỏ đến.
[in] aSettings
Con trỏ trỏ đến chế độ cài đặt thông báo hoặc NULL để đặt chế độ cài đặt mặc định.
Trả về
Con trỏ trỏ đến thông báo hoặc NULL nếu có tiêu đề IPv6 không đúng định dạng hoặc không có đủ vùng đệm thông báo.
Xem thêm:
otMessageFree

otIp6PrefixMatch

uint8_t otIp6PrefixMatch(
  const otIp6Address *aFirst,
  const otIp6Address *aSecond
)

Hàm này trả về độ dài tiền tố (bit) cho hai địa chỉ IPv6.

Thông tin chi tiết
Các tham số
[in] aFirst
Con trỏ trỏ đến địa chỉ IPv6 đầu tiên.
[in] aSecond
Con trỏ trỏ đến địa chỉ IPv6 thứ hai.
Trả về
Độ dài tiền tố khớp với bit.

otIp6PrefixToString

void otIp6PrefixToString(
  const otIp6Prefix *aPrefix,
  char *aBuffer,
  uint16_t aSize
)

Hàm này chuyển đổi một tiền tố IPv6 nhất định thành một chuỗi dễ đọ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 các ký tự aSize), chuỗi sẽ bị cắt bớt nhưng chuỗi đầu ra luôn được kết thúc bằng giá trị rỗng.

Thông tin chi tiết
Các tham số
[in] aPrefix
Con trỏ trỏ đến tiền tố IPv6 (PHẢI KHÔNG PHẢI là NULL.
[out] aBuffer
Con trỏ trỏ đến một mảng ký tự để xuất chuỗi (PHẢI KHÔNG PHẢI là NULL.
[in] aSize
Kích thước của aBuffer (tính bằng byte). Bạn nên sử dụng OT_IP6_PREFIX_STRING_SIZE.

otIp6ProtoToString

const char * otIp6ProtoToString(
  uint8_t aIpProto
)

Hàm này chuyển đổi một số giao thức IP nhất định thành một chuỗi có thể đọc được.

Thông tin chi tiết
Các tham số
[in] aIpProto
Số giao thức IP ( liệt kê OT_IP6_PROTO_*).
Trả về
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
)

Hàm này đăng ký trình nghe phát đa hướng cho bộ định tuyến chính.

Lưu ý: Chỉ dùng được khi bật cả OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLEOPENTHREAD_CONFIG_COMMISSIONER_ENABLE)

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aAddresses
Mảng địa chỉ phát đa hướng để đăng ký.
[in] aAddressNum
Số Địa chỉ phát đa hướng cần đăng ký (0 nếu aAddresses là NULL.
[in] aTimeout
Con trỏ trỏ đến giá trị thời gian chờ (tính bằng giây) để đưa vào MLR.req. Giá trị thời gian chờ bằng 0 sẽ xoá Trình nghe phát đa hướng tương ứng. Nếu NULL (RỖNG), MLR.req sẽ không có Timeout Tlv theo mặc định.
[in] aCallback
Con trỏ trỏ đến hàm callback.
[in] aContext
Con trỏ trỏ đến ngữ cảnh người dùng.
Giá trị trả về
OT_ERROR_NONE
Đã gửi thành công MLR.req. aCallback sẽ được gọi là iff phương thức này trả về OT_ERROR_NONE.
OT_ERROR_BUSY
Nếu đăng ký trước đó đang diễn ra.
OT_ERROR_INVALID_ARGS
Nếu một hoặc nhiều đối số không hợp lệ.
OT_ERROR_INVALID_STATE
Nếu thiết bị không ở trạng thái hợp lệ để gửi MLR.req (ví dụ: Không khởi động được Ủy viên, sẽ không tìm thấy Bộ định tuyến xương sống chính).
OT_ERROR_NO_BUFS
Nếu không có đủ vùng đệm thông báo.
Xem thêm:
otIp6registerMulticastListenersCallback

otIp6RemoveAllUnsecurePorts

void otIp6RemoveAllUnsecurePorts(
  otInstance *aInstance
)

Chức năng này sẽ xoá tất cả các cổng khỏi danh sách cổng không an toàn được phép.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.

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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aAddress
Con trỏ trỏ đến Địa chỉ IP.
Giá trị trả về
OT_ERROR_NONE
Đã xoá thành công Địa chỉ giao diện mạng.
OT_ERROR_INVALID_ARGS
Địa chỉ IP do aAddress chỉ định là địa chỉ nội bộ.
OT_ERROR_NOT_FOUND
Không tìm thấy Địa chỉ IP do aAddress chỉ định.

otIp6RemoveUnsecurePort

otError otIp6RemoveUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Hàm này xoá một cổng khỏi danh sách cổng không an toàn được phép.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aPort
Giá trị cổng.
Giá trị trả về
OT_ERROR_NONE
Đã loại bỏ cổng thành công khỏi danh sách cổng không an toàn được phép.
OT_ERROR_INVALID_ARGS
Cổng không hợp lệ (giá trị 0 được dành riêng cho việc sử dụng nội bộ).
OT_ERROR_NOT_FOUND
Không tìm thấy cổng này trong danh sách cổng không an toàn.

otIp6ResetBorderRouteParams

void otIp6ResetBorderRoutingCounters(
  otInstance *aInstance
)

Đặt lại bộ đếm Định tuyến biên.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.

otIp6SelectSourceAddress

otError otIp6SelectSourceAddress(
  otInstance *aInstance,
  otMessageInfo *aMessageInfo
)

Hàm này thực hiện lựa chọn địa chỉ nguồn OpenThread.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in,out] aMessageInfo
Con trỏ trỏ đến thông tin về tin nhắn.
Giá trị trả về
OT_ERROR_NONE
Tìm thấy một địa chỉ nguồn và được điền vào mSockAddr của aMessageInfo.
OT_ERROR_NOT_FOUND
Không tìm thấy địa chỉ nguồn nào và aMessageInfo không thay đổi.

otIp6Gửi

otError otIp6Send(
  otInstance *aInstance,
  otMessage *aMessage
)

Hàm này gửi một biểu đồ dữ liệu IPv6 thông qua giao diện Luồng.

Người gọi sẽ 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, kể cả khi trả về một giá trị không phải OT_ERROR_NONE.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aMessage
Con trỏ trỏ đến vùng đệm thông báo chứa sơ đồ dữ liệu IPv6.
Giá trị trả về
OT_ERROR_NONE
Đã xử lý thư thành công.
OT_ERROR_DROP
Thư có định dạng tốt nhưng chưa được xử lý đầy đủ do các quy tắc xử lý gói.
OT_ERROR_NO_BUFS
Không thể phân bổ các vùng đệm thông báo cần thiết khi xử lý dữ liệu.
OT_ERROR_NO_ROUTE
Không có tuyến đường nào để lưu trữ.
OT_ERROR_INVALID_SOURCE_ADDRESS
Địa chỉ nguồn không hợp lệ, ví dụ: địa chỉ phương tiện bất kỳ hoặc địa chỉ phát đa hướng.
OT_ERROR_PARSE
Đã gặp phải tiêu đề không đúng định dạng khi xử lý thông báo.

otIp6SetAddressCallback

void otIp6SetAddressCallback(
  otInstance *aInstance,
  otIp6AddressCallback aCallback,
  void *aCallbackContext
)

Hàm này đă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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aCallback
Con trỏ trỏ đến một hàm được gọi khi địa chỉ IPv6 được thêm vào hoặc bị xóa. NULL để tắt lệnh gọi lại.
[in] aCallbackContext
Con trỏ trỏ đến ngữ cảnh dành riêng cho ứng dụng.

otIp6SetEnabled

otError otIp6SetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Đưa giao diện IPv6 lên hoặc xuống.

Gọi thông báo này để bật hoặc tắt tính năng giao tiếp IPv6.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aEnabled
TRUE để bật IPv6, FALSE nếu không.
Giá trị trả về
OT_ERROR_NONE
Đưa thành công giao diện IPv6 lên/xuống.
OT_ERROR_INVALID_STATE
Giao diện IPv6 không có sẵn vì thiết bị đang hoạt động ở chế độ liên kết thô (chỉ áp dụng khi bật tính năng OPENTHREAD_CONFIG_LINK_RAW_ENABLE).

otIp6SetMeshLocalIid

otError otIp6SetMeshLocalIid(
  otInstance *aInstance,
  const otIp6InterfaceIdentifier *aIid
)

Hàm này thiết lập IID cục bộ lưới (cho mục đích kiểm thử).

Chỉ dùng được khi bật OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aIid
Con trỏ trỏ đến IID cục bộ Ish để đặt.
Giá trị trả về
OT_ERROR_NONE
Đặt IID cục bộ lưới thành công.
OT_ERROR_INVALID_STATE
Đã bật giao thức luồng.

otIp6SetMulticastPromiscuousEnabled

void otIp6SetMulticastPromiscuousEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Bật hoặc tắt chế độ đa hướng phát đa hướng trên giao diện Luồng.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aEnabled
TRUE để bật chế độ Multicast Promiscuous, nếu không sẽ là FALSE.
Xem thêm:
otIp6IsMulticastPromiscuousEnabled

otIp6SetReceiveCallback

void otIp6SetReceiveCallback(
  otInstance *aInstance,
  otIp6ReceiveCallback aCallback,
  void *aCallbackContext
)

Hàm này đăng ký một lệnh gọi lại để cung cấp sơ đồ dữ liệu IPv6 đã nhận.

Theo mặc định, lệnh gọi lại này không chuyển lưu lượng truy cập Kiểm soát chuỗi. Xem otIp6SetReceiveFilterEnabled() để thay đổi chế độ cài đặt bộ lọc Lưu lượng truy cập kiểm soát chuỗi.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aCallback
Con trỏ trỏ đến một hàm được gọi khi nhận dữ liệu IPv6 hoặc NULL để tắt lệnh gọi lại.
[in] aCallbackContext
Con trỏ trỏ đến ngữ cảnh dành riêng cho ứng dụng.
Xem thêm:
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled

otIp6SetReceiveFilterEnabled

void otIp6SetReceiveFilterEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Hàm này đặt xem lưu lượng truy cập Điều khiển luồng có bị lọc ra khi phân phối biểu đồ dữ liệ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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aEnabled
TRUE nếu Lưu lượng truy cập kiểm soát chuỗi được lọc ra, nếu không thì FALSE.
Xem thêm:
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled

otIp6SetSlaacEnabled

void otIp6SetSlaacEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Hàm này bật/tắt mô-đun SLAAC.

Hàm này yêu cầu 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 mô-đun SLAAC bị tắt, mọi địa chỉ SLAAC đã thêm trước đó sẽ bị xoá.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aEnabled
TRUE để bật, FALSE để vô hiệu hoá.

otIp6SetSlaacPrefixFilter

void otIp6SetSlaacPrefixFilter(
  otInstance *aInstance,
  otIp6SlaacPrefixFilter aFilter
)

Hàm này đặt trình xử lý bộ lọc mô-đun SLAAC.

Hàm này yêu cầu bật tính năng thời gian xây dựng OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE.

Trình xử lý bộ lọc được gọi bằng mô-đun SLAAC 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 (lọc bị tắt).

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aFilter
Con trỏ trỏ đến trình xử lý bộ lọc tiền tố SLAAC hoặc NULL để tắt tính năng lọc.

otIp6SockAddrToString

void otIp6SockAddrToString(
  const otSockAddr *aSockAddr,
  char *aBuffer,
  uint16_t aSize
)

Hàm này chuyển đổi một địa chỉ ổ cắm IPv6 nhất định thành một chuỗi có thể đọc được.

Chuỗi địa chỉ ổ cắm IPv6 có định dạng là [address]:port, trong đó address hiển thị dưới dạng 16 giá trị thập lục phân được phân tách bằng :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 các ký tự aSize), chuỗi sẽ bị cắt bớt nhưng chuỗi đầu ra luôn được kết thúc bằng giá trị rỗng.

Thông tin chi tiết
Các tham số
[in] aSockAddr
Con trỏ trỏ đến địa chỉ ổ cắm IPv6 (PHẢI KHÔNG PHẢI là NULL.
[out] aBuffer
Con trỏ trỏ đến một mảng ký tự để xuất chuỗi (PHẢI KHÔNG PHẢI là NULL.
[in] aSize
Kích thước của aBuffer (tính bằng byte). Bạn nên sử dụng OT_IP6_SOCK_ADDR_STRING_SIZE.

otIp6Đăng kýmulticastAddress

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 qua giao diện Chuỗi. Giao diện luồng chỉ hỗ trợ một số lượng cố định các địa chỉ phát đa hướng được thêm vào 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ố
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aAddress
Con trỏ trỏ đến Địa chỉ IP.
Giá trị trả về
OT_ERROR_NONE
Đã đăng ký thành công Địa chỉ phát đa hướng giao diện mạng.
OT_ERROR_ALREADY
Địa chỉ phát đa hướng đã được đăng ký.
OT_ERROR_INVALID_ARGS
Địa chỉ IP do aAddress chỉ định là địa chỉ phát đa hướng không hợp lệ.
OT_ERROR_REJECTED
Địa chỉ IP do aAddress chỉ định là địa chỉ phát đa hướng nội bộ.
OT_ERROR_NO_BUFS
Giao diện mạng đã lưu trữ địa chỉ phát đa hướng bên ngoài tối đa được phép.

otIp6unsubscribeMulticastAddress

otError otIp6UnsubscribeMulticastAddress(
  otInstance *aInstance,
  const otIp6Address *aAddress
)

Huỷ đăng ký giao diện Luồng thành Địa chỉ phát đa hướng giao diện mạng.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ trỏ đến một phiên bản OpenThread.
[in] aAddress
Con trỏ trỏ đến Địa chỉ IP.
Giá trị trả về
OT_ERROR_NONE
Đã huỷ đăng ký thành công Địa chỉ phát đa hướng giao diện mạng.
OT_ERROR_REJECTED
Địa chỉ IP do aAddress chỉ định là địa chỉ nội bộ.
OT_ERROR_NOT_FOUND
Không tìm thấy Địa chỉ IP do aAddress chỉ định.

Macro

OT_IP6_ADDRESS_SIZE

 OT_IP6_ADDRESS_SIZE 16

Kích thước của địa chỉ IPv6 (byte)

OT_IP6_ADDRESS_STRING_SIZE

 OT_IP6_ADDRESS_STRING_SIZE 40

Kích thước đề xuất để biểu diễn chuỗi của địa chỉ IPv6.

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_ADDRESS

 OT_IP6_MAX_MLR_ADDRESSES 15

Số lượng địa chỉ IPv6 tối đa mà tính năng Đăng ký nhiều trình phát hỗ trợ.

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)

OT_IP6_PREFIX_ỖI_SIZE

 OT_IP6_PREFIX_STRING_SIZE 45

Kích thước đề xuất để biểu thị chuỗi của một tiền tố IPv6.

OT_IP6_SOCK_OFFSET_ STRING_SIZE

 OT_IP6_SOCK_ADDR_STRING_SIZE 48

Kích thước đề xuất thể hiện chuỗi của địa chỉ ổ cắm IPv6.

Nguồn tham khảo

Các chủ đề Tham chiếu API OpenThread được tạo 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 Tài nguyên.