IPv6
このモジュールには、IPv6 通信を制御する関数が含まれています。
まとめ
列挙型 |
|
---|---|
anonymous enum{
|
enum インターネット プロトコル番号。 |
anonymous enum{
|
enum IPv6 アドレスの送信元 |
anonymous enum{
|
enum IP ヘッダーで表される ECN ステータス。 |
Typedef |
|
---|---|
otBorderRoutingCounters
|
typedefstruct otBorderRoutingCounters
この構造は、ボーダー ルーティングで転送されるパケットのカウンタを表します。 |
otIp6Address
|
typedefstruct otIp6Address
この構造は IPv6 アドレスを表します。 |
otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
|
typedefvoid(*
この関数は、内部 IPv6 アドレスが追加または削除されたときに呼び出されます。 |
otIp6AddressComponents
|
typedefstruct otIp6AddressComponents
この構造は、IPv6 アドレスのコンポーネントを表します。 |
otIp6AddressInfo
|
typedefstruct otIp6AddressInfo
|
otIp6InterfaceIdentifier
|
typedefstruct otIp6InterfaceIdentifier
この構造は、IPv6 アドレスのインターフェース識別子を表します。 |
otIp6NetworkPrefix
|
typedefstruct otIp6NetworkPrefix
この構造は、IPv6 アドレスのネットワーク プレフィックス(アドレスの最上位 64 ビット)を表します。 |
otIp6Prefix
|
typedefstruct otIp6Prefix
この構造は IPv6 接頭辞を表します。 |
otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
|
typedefvoid(*
この関数ポインタは、IPv6 データグラムの受信時に呼び出されます。 |
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 ソケット アドレスを表します。 |
Variables |
|
---|---|
OT_TOOL_PACKED_END
|
関数 |
|
---|---|
otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
|
Thread インターフェースにネットワーク インターフェース アドレスを追加します。
|
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
2 つの IPv6 接頭辞が同じかどうかをテストします。
|
otIp6GetBorderRoutingCounters(otInstance *aInstance)
|
const otBorderRoutingCounters *
ボーダー ルーティング カウンタを取得します。
|
otIp6GetMulticastAddresses(otInstance *aInstance)
|
const otNetifMulticastAddress *
Thread インターフェースにサブスクライブしている IPv6 マルチキャスト アドレスのリストを取得します。
|
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
|
void
このメソッドは、
aAddress から aLength で始まる接頭辞を取得します。 |
otIp6GetUnicastAddresses(otInstance *aInstance)
|
const otNetifAddress *
Thread インターフェースに割り当てられた IPv6 アドレスのリストを取得します。
|
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
|
const uint16_t *
この関数は、保護されていないポートリストへのポインタを返します。
|
otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
bool
2 つの IPv6 アドレスが同じかどうかをテストします。
|
otIp6IsAddressUnspecified(const otIp6Address *aAddress)
|
bool
この関数は、指定された IPv6 アドレスが Unspecified Address かどうかを示します。
|
otIp6IsEnabled(otInstance *aInstance)
|
bool
IPv6 インターフェースが稼働しているかどうかを示します。
|
otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
|
bool
Thread インターフェースでマルチキャスト無作為モードが有効になっているかどうかを確認します。
|
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
|
bool
この関数は、otIp6SetReceiveCallback() で指定されたコールバックを介して IPv6 データグラムを提供するときに、Thread コントロール トラフィックが除外されるかどうかを示します。
|
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 データグラムをメッセージ バッファに書き込み、IPv6 メッセージを送信します。
|
otIp6PrefixFromString(const char *aString, otIp6Prefix *aPrefix)
|
この関数は、人が読める IPv6 プレフィックス文字列をバイナリ表現に変換します。
|
otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
uint8_t
この関数は、2 つの IPv6 アドレスのプレフィックス一致長(ビット)を返します。
|
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)
|
この関数は、マルチキャスト リスナーをプライマリ バックボーン ルーターに登録します。
|
otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
|
void
この関数は、保護されていないポートのリストからすべてのポートを削除します。
|
otIp6RemoveUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
Thread インターフェースからネットワーク インターフェース アドレスを削除します。
|
otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
この関数は、許可された保護されていないポートのリストからポートを削除します。
|
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
|
void
ボーダー ルーティング カウンタをリセットします。
|
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
|
この関数は、OpenThread 送信元アドレスの選択を実行します。
|
otIp6Send(otInstance *aInstance, otMessage *aMessage)
|
この関数は、Thread インターフェースを介して IPv6 データグラムを送信します。
|
otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
|
void
この関数は、内部 IPv6 アドレスの変更を通知するコールバックを登録します。
|
otIp6SetEnabled(otInstance *aInstance, bool aEnabled)
|
IPv6 インターフェースを有効または無効にします。
|
otIp6SetMeshLocalIid(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
|
この関数は、テスト用にメッシュ ローカル IID を設定します。
|
otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
|
void
Thread インターフェースで、マルチキャスト無作為モードを有効または無効にします。
|
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
|
void
この関数は、受信した IPv6 データグラムを提供するコールバックを登録します。
|
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
|
void
この関数は、otIp6SetReceiveCallback() で指定されたコールバックを介して IPv6 データグラムを提供するときに、Thread コントロール トラフィックを除外するかどうかを設定します。
|
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)
|
Thread インターフェースをネットワーク インターフェース マルチキャスト アドレスに登録します。
|
otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
ネットワーク インターフェース マルチキャスト アドレスに対する Thread インターフェースのサブスクライブを解除する。
|
構造体 |
|
---|---|
otBorderRoutingCounters |
この構造は、ボーダー ルーティングで転送されるパケットのカウンタを表します。 |
otIp6Address |
この構造は IPv6 アドレスを表します。 |
otIp6AddressComponents |
この構造は、IPv6 アドレスのコンポーネントを表します。 |
otIp6AddressInfo |
この構造は IPv6 アドレス情報を表します。 |
otIp6InterfaceIdentifier |
この構造は、IPv6 アドレスのインターフェース識別子を表します。 |
otIp6NetworkPrefix |
この構造は、IPv6 アドレスのネットワーク プレフィックス(アドレスの最上位 64 ビット)を表します。 |
otIp6Prefix |
この構造は IPv6 接頭辞を表します。 |
otMessageInfo |
この構造は、ローカルおよびピアの IPv6 ソケット アドレスを表します。 |
otNetifAddress |
この構造は、IPv6 ネットワーク インターフェースのユニキャスト アドレスを表します。 |
otNetifMulticastAddress |
この構造は、IPv6 ネットワーク インターフェースのマルチキャスト アドレスを表します。 |
otPacketsAndBytes |
この構造は、パケットとバイトのカウンタを表します。 |
otSockAddr |
この構造は IPv6 ソケット アドレスを表します。 |
共用体 |
|
---|---|
otIp6InterfaceIdentifier:: |
列挙型
匿名列挙型
anonymous enum
インターネット プロトコル番号。
プロパティ | |
---|---|
OT_IP6_PROTO_DST_OPTS
|
IPv6 の送信先オプション。 |
OT_IP6_PROTO_FRAGMENT
|
IPv6 のフラグメント ヘッダー。 |
OT_IP6_PROTO_HOP_OPTS
|
IPv6 ホップバイホップ オプション |
OT_IP6_PROTO_ICMP6
|
IPv6 の ICMP。 |
OT_IP6_PROTO_IP6
|
IPv6 のカプセル化。 |
OT_IP6_PROTO_NONE
|
IPv6 の Next ヘッダーはありません。 |
OT_IP6_PROTO_ROUTING
|
IPv6 のルーティング ヘッダー。 |
OT_IP6_PROTO_TCP
|
伝送制御プロトコル |
OT_IP6_PROTO_UDP
|
ユーザーデータ グラム。 |
匿名列挙型
anonymous enum
IPv6 アドレスの送信元
プロパティ | |
---|---|
OT_ADDRESS_ORIGIN_DHCPV6
|
DHCPv6 がアドレスを割り当て |
OT_ADDRESS_ORIGIN_MANUAL
|
手動で割り当てた住所。 |
OT_ADDRESS_ORIGIN_SLAAC
|
SLAAC で割り当てられた住所。 |
OT_ADDRESS_ORIGIN_THREAD
|
スレッド割り当てアドレス(ALOC、RLOC、MLEID など) |
匿名列挙型
anonymous enum
IP ヘッダーで表される ECN ステータス。
プロパティ | |
---|---|
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
この構造は、ボーダー ルーティングで転送されるパケットのカウンタを表します。
otIp6AddressCallback
void(* otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext)
この関数は、内部 IPv6 アドレスが追加または削除されたときに呼び出されます。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otIp6AddressComponents
struct otIp6AddressComponents otIp6AddressComponents
この構造は、IPv6 アドレスのコンポーネントを表します。
otIp6AddressInfo
struct otIp6AddressInfo otIp6AddressInfo
otIp6InterfaceIdentifier
struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier
この構造は、IPv6 アドレスのインターフェース識別子を表します。
otIp6NetworkPrefix
struct otIp6NetworkPrefix otIp6NetworkPrefix
この構造は、IPv6 アドレスのネットワーク プレフィックス(アドレスの最上位 64 ビット)を表します。
otIp6ReceiveCallback
void(* otIp6ReceiveCallback)(otMessage *aMessage, void *aContext)
この関数ポインタは、IPv6 データグラムの受信時に呼び出されます。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
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 モジュールによって呼び出されます。ブール値によって、住所が除外(追加されていない)するかどうかが決まります。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otNetif マルチキャスト アドレス
struct otNetifMulticastAddress otNetifMulticastAddress
この構造は、IPv6 ネットワーク インターフェースのマルチキャスト アドレスを表します。
Variables
OT_TOOL_PACKED_END
OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END
関数
otIp6AddUnicastAddress
otError otIp6AddUnicastAddress( otInstance *aInstance, const otNetifAddress *aAddress )
Thread インターフェースにネットワーク インターフェース アドレスを追加します。
渡されたインスタンス aAddress
が Thread インターフェースによってコピーされます。Thread インターフェースは、固定数の外部追加されたユニキャスト アドレスのみをサポートします。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
文字以内)に収まらない場合、文字列は切り捨てられますが、出力される文字列は常に null で終了します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otIp6ArePrefixesEqual
bool otIp6ArePrefixesEqual( const otIp6Prefix *aFirst, const otIp6Prefix *aSecond )
2 つの IPv6 接頭辞が同じかどうかをテストします。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6GetBorderRoutingCounters
const otBorderRoutingCounters * otIp6GetBorderRoutingCounters( otInstance *aInstance )
ボーダー ルーティング カウンタを取得します。
この関数を使用するには、ビルド時の機能 OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE
を有効にする必要があります。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
ボーダー ルーティング カウンタへのポインタ。
|
otIp6GetMulticastAddresses
const otNetifMulticastAddress * otIp6GetMulticastAddresses( otInstance *aInstance )
Thread インターフェースにサブスクライブしている IPv6 マルチキャスト アドレスのリストを取得します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
最初のネットワーク インターフェース マルチキャスト アドレスへのポインタ。
|
otIp6GetPrefix
void otIp6GetPrefix( const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix )
このメソッドは、aAddress
から aLength
で始まる接頭辞を取得します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otIp6GetUnicastAddresses
const otNetifAddress * otIp6GetUnicastAddresses( otInstance *aInstance )
Thread インターフェースに割り当てられた IPv6 アドレスのリストを取得します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
最初のネットワーク インターフェース アドレスへのポインタ。
|
otIp6GetUnsecurePorts
const uint16_t * otIp6GetUnsecurePorts( otInstance *aInstance, uint8_t *aNumEntries )
この関数は、保護されていないポートリストへのポインタを返します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
保護されていないポートリストへのポインタ。
|
otIp6IsAddressEqual
bool otIp6IsAddressEqual( const otIp6Address *aFirst, const otIp6Address *aSecond )
2 つの IPv6 アドレスが同じかどうかをテストします。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6IsAddressUnspecified
bool otIp6IsAddressUnspecified( const otIp6Address *aAddress )
この関数は、指定された IPv6 アドレスが Unspecified Address かどうかを示します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6IsEnabled
bool otIp6IsEnabled( otInstance *aInstance )
IPv6 インターフェースが稼働しているかどうかを示します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6IsMulticastPromiscuousEnabled
bool otIp6IsMulticastPromiscuousEnabled( otInstance *aInstance )
Thread インターフェースでマルチキャスト無作為モードが有効になっているかどうかを確認します。
詳細 | |||
---|---|---|---|
パラメータ |
|
otIp6SetMulticastPromiscuousEnabled
otIp6IsReceiveFilterEnabled
bool otIp6IsReceiveFilterEnabled( otInstance *aInstance )
この関数は、otIp6SetReceiveCallback() で指定されたコールバックを介して IPv6 データグラムを提供するときに、Thread コントロール トラフィックが除外されるかどうかを示します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
スレッド制御のトラフィックが除外されている場合は 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 データグラムをメッセージ バッファに書き込み、IPv6 メッセージを送信します。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
メッセージへのポインタ。不正な形式の IPv6 ヘッダーがある場合や、メッセージ バッファが十分でない場合は NULL。
|
otMessageFree
otIp6PrefixFromString
otError otIp6PrefixFromString( const char *aString, otIp6Prefix *aPrefix )
この関数は、人が読める IPv6 プレフィックス文字列をバイナリ表現に変換します。
aString
パラメータは " という形式の文字列にする必要があります
は IPv6 アドレス、
はプレフィックス長です。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6PrefixMatch
uint8_t otIp6PrefixMatch( const otIp6Address *aFirst, const otIp6Address *aSecond )
この関数は、2 つの IPv6 アドレスのプレフィックス一致長(ビット)を返します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
プレフィックスの一致長(ビット単位)。
|
otIp6PrefixToString
void otIp6PrefixToString( const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize )
この関数は、指定された IPv6 プレフィックスを人が読める文字列に変換します。
IPv6 アドレスの文字列は、「%x:%x:%x:...[::]/plen」という形式です。
結果の文字列が aBuffer
(aSize
文字以内)に収まらない場合、文字列は切り捨てられますが、出力される文字列は常に null で終了します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
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 )
この関数は、マルチキャスト リスナーをプライマリ バックボーン ルーターに登録します。
注: OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE
と OPENTHREAD_CONFIG_COMMISSIONER_ENABLE
の両方が有効になっている場合にのみ使用できます)。
詳細 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||
戻り値 |
|
otIp6RegisterMulticastListenersCallback
otIp6RemoveAllUnsecurePorts
void otIp6RemoveAllUnsecurePorts( otInstance *aInstance )
この関数は、保護されていないポートのリストからすべてのポートを削除します。
詳細 | |||
---|---|---|---|
パラメータ |
|
otIp6RemoveUnicastAddress
otError otIp6RemoveUnicastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Thread インターフェースからネットワーク インターフェース アドレスを削除します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otIp6RemoveUnsecurePort
otError otIp6RemoveUnsecurePort( otInstance *aInstance, uint16_t aPort )
この関数は、許可された保護されていないポートのリストからポートを削除します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otIp6ResetBorderRoutingCounters
void otIp6ResetBorderRoutingCounters( otInstance *aInstance )
ボーダー ルーティング カウンタをリセットします。
詳細 | |||
---|---|---|---|
パラメータ |
|
otIp6SelectSourceAddress
otError otIp6SelectSourceAddress( otInstance *aInstance, otMessageInfo *aMessageInfo )
この関数は、OpenThread 送信元アドレスの選択を実行します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6 送信
otError otIp6Send( otInstance *aInstance, otMessage *aMessage )
この関数は、Thread インターフェースを介して IPv6 データグラムを送信します。
この電話をかける際、発信者は aMessage
の所有権を譲渡します。OpenThread は、処理が完了すると(OT_ERROR_NONE
以外の値が返されるときを含む)aMessage
を解放します。
詳細 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||
戻り値 |
|
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 )
この関数は、テスト用にメッシュ ローカル IID を設定します。
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
が有効な場合にのみ使用できます。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otIp6SetMulticastPromiscuousEnabled
void otIp6SetMulticastPromiscuousEnabled( otInstance *aInstance, bool aEnabled )
Thread インターフェースで、マルチキャスト無作為モードを有効または無効にします。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otIp6IsMulticastPromiscuousEnabled
otIp6SetReceiveCallback
void otIp6SetReceiveCallback( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext )
この関数は、受信した IPv6 データグラムを提供するコールバックを登録します。
デフォルトでは、このコールバックは Thread 制御トラフィックを渡しません。スレッド コントロールのトラフィック フィルタの設定を変更するには、otIp6SetReceiveFilterEnabled() をご覧ください。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
void otIp6SetReceiveFilterEnabled( otInstance *aInstance, bool aEnabled )
この関数は、otIp6SetReceiveCallback() で指定されたコールバックを介して IPv6 データグラムを提供するときに、Thread コントロール トラフィックを除外するかどうかを設定します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
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 進数の :
で区切られた 16 進数値、port
は 10 進数形式のポート番号です(例: 「%x:%x:...:%x]:%u」)。
結果の文字列が aBuffer
(aSize
文字以内)に収まらない場合、文字列は切り捨てられますが、出力される文字列は常に null で終了します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otIp6SubscribeMulticastAddress
otError otIp6SubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
Thread インターフェースをネットワーク インターフェース マルチキャスト アドレスに登録します。
渡されたインスタンス aAddress
が Thread インターフェースによってコピーされます。Thread インターフェースは、外部に追加された固定数のマルチキャスト アドレスのみをサポートします。OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS
をご確認ください。
詳細 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||
戻り値 |
|
otIp6unsubscribeMulticastAddress
otError otIp6UnsubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
ネットワーク インターフェース マルチキャスト アドレスに対する Thread インターフェースのサブスクライブを解除する。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
マクロ
OT_IP6_ADDRESS_SIZE
OT_IP6_ADDRESS_SIZE 16
IPv6 アドレスのサイズ(バイト)
OT_IP6_ADDRESS_STRING_SIZE
OT_IP6_ADDRESS_STRING_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 アドレスの最大数。
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 ソケット アドレスの文字列表現に推奨されるサイズ。
リソース
OpenThread API リファレンスのトピックは、GitHub で入手可能なソースコードに基づいています。詳細やドキュメントの作成方法については、リソースをご覧ください。