IPv6

Dieses Modul enthält Funktionen, die die IPv6-Kommunikation steuern.

Zusammenfassung

Aufzählungen

anonymous enum{
  OT_ADDRESS_ORIGIN_THREAD = 0,
  OT_ADDRESS_ORIGIN_SLAAC = 1,
  OT_ADDRESS_ORIGIN_DHCPV6 = 2,
  OT_ADDRESS_ORIGIN_MANUAL = 3
}
enum
IPv6-Quellen.
anonymous enum{
  OT_ECN_NOT_CAPABLE = 0x0,
  OT_ECN_CAPABLE_0 = 0x2,
  OT_ECN_CAPABLE_1 = 0x1,
  OT_ECN_MARKED = 0x3
}
enum
ECN-Status, wie im IP-Header dargestellt.
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
Internetprotokollnummern

Typdef1

otBorderRoutingCounters Typdef
Stellt die Zähler von Paketen dar, die über Border Routing weitergeleitet werden.
otIp6Address Typdef
struct otIp6Address
Stellt eine IPv6-Adresse dar.
otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext) Typdef
void(*
Der Zeiger wird aufgerufen, wenn eine interne IPv6-Adresse hinzugefügt oder entfernt wird.
otIp6AddressComponents Typdef
Die Komponenten einer IPv6-Adresse
otIp6AddressInfo Typdef
otIp6InterfaceIdentifier Typdef
Die Schnittstellen-ID einer IPv6-Adresse.
otIp6NetworkPrefix Typdef
Das Netzwerkpräfix einer IPv6-Adresse (die wichtigsten 64 Bit der Adresse).
otIp6Prefix Typdef
struct otIp6Prefix
Stellt ein IPv6-Präfix dar.
otIp6ReceiveCallback)(otMessage *aMessage, void *aContext) Typdef
void(*
Der Mauszeiger wird aufgerufen, wenn ein IPv6-Datagramm empfangen wird.
otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum) Typdef
void(*
Der Zeiger wird mit Ergebnissen von otIp6RegisterMulticastListeners aufgerufen.
otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix) Typdef
bool(*
Mit Pointer können Nutzer Präfixe filtern und das Hinzufügen einer SLAAC-Adresse auf der Grundlage eines Präfixes nicht zulassen.
otMessageInfo Typdef
struct otMessageInfo
Die lokalen und Peer-IPv6-Socket-Adressen.
otNetifAddress Typdef
Stellt eine Unicast-Adresse einer IPv6-Netzwerkschnittstelle dar.
otNetifMulticastAddress Typdef
Stellt eine Multicast-Adresse einer IPv6-Netzwerkschnittstelle dar.
otPacketsAndBytes Typdef
Die Zähler für Pakete und Byte.
otSockAddr Typdef
struct otSockAddr
Stellt eine IPv6-Socket-Adresse dar.

Variablen

OT_TOOL_PACKED_END

Functions

otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
Fügt der Thread-Schnittstelle eine Adresse für die Netzwerkschnittstelle hinzu.
otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
Fügt einen Port in die Liste der zulässigen nicht sicheren Ports ein.
otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
Wandelt einen menschenlesbaren IPv6-Adressstring in eine Binärdarstellung um.
otIp6AddressToString(const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
void
Wandelt eine bestimmte IPv6-Adresse in einen für Menschen lesbaren String um.
otIp6ArePrefixesEqual(const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
bool
Testen, ob zwei IPv6-Präfixe identisch sind
otIp6GetBorderRoutingCounters(otInstance *aInstance)
Ruft die Border Routing-Zähler ab.
otIp6GetMulticastAddresses(otInstance *aInstance)
Ruft die Liste der IPv6-Multicast-Adressen ab, die der Thread-Schnittstelle abonniert wurden.
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
void
Ruft ein Präfix mit aLength von aAddress ab.
otIp6GetUnicastAddresses(otInstance *aInstance)
const otNetifAddress *
Ruft die Liste der IPv6-Adressen ab, die der Thread-Schnittstelle zugewiesen sind.
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
const uint16_t *
Gibt einen Mauszeiger zur Liste der unsicheren Ports zurück.
otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
bool
Testen Sie, ob zwei IPv6-Adressen identisch sind.
otIp6IsAddressUnspecified(const otIp6Address *aAddress)
bool
Gibt an, ob eine bestimmte IPv6-Adresse die nicht angegebene Adresse ist.
otIp6IsEnabled(otInstance *aInstance)
bool
Gibt an, ob die IPv6-Schnittstelle aktiv ist.
otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
bool
Überprüft, ob der Procast-Modus für Multicast auf der Thread-Schnittstelle aktiviert ist.
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
bool
Gibt an, ob der Traffic zur Thread-Steuerung herausgefiltert wird, wenn IPv6-Datagramme über den in otIp6SetReceiveCallback() angegebenen Callback bereitgestellt werden.
otIp6IsSlaacEnabled(otInstance *aInstance)
bool
Gibt an, ob das SLAAC-Modul aktiviert ist.
otIp6NewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
Weisen Sie einen neuen Nachrichtenpuffer zu, um eine IPv6-Nachricht zu senden.
otIp6NewMessageFromBuffer(otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
Weisen Sie einen neuen Nachrichtenpuffer zu und schreiben Sie das IPv6-Datagramm in den Nachrichtenzwischenspeicher, um eine IPv6-Nachricht zu senden.
otIp6PrefixFromString(const char *aString, otIp6Prefix *aPrefix)
Wandelt einen menschenlesbaren IPv6-Präfixstring in eine Binärdarstellung um.
otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
uint8_t
Gibt die Präfixübereinstimmungslänge (Bits) für zwei IPv6-Adressen zurück.
otIp6PrefixToString(const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
void
Wandelt ein bestimmtes IPv6-Präfix in einen für Menschen lesbaren String um.
otIp6ProtoToString(uint8_t aIpProto)
const char *
Wandelt eine bestimmte IP-Protokollnummer in einen menschenlesbaren String um.
otIp6RegisterMulticastListeners(otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
Registriert Multicast-Listener beim primären Backbone-Router.
otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
void
Entfernt alle Ports aus der Liste der zulässigen unsicheren Ports.
otIp6RemoveUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
Entfernt eine Netzwerkschnittstellenadresse von der Thread-Schnittstelle.
otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
Entfernt einen Port aus der Liste der zulässigen unsicheren Ports.
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
void
Setzt die Border Routing-Zähler zurück.
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
Führen Sie eine Auswahl für die OpenThread-Quelladresse durch.
otIp6Send(otInstance *aInstance, otMessage *aMessage)
Sendet ein IPv6-Datagramm über die Thread-Schnittstelle.
otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
void
Registriert einen Callback, um interne IPv6-Adressänderungen zu benachrichtigen.
otIp6SetEnabled(otInstance *aInstance, bool aEnabled)
Bringt die IPv6-Schnittstelle nach oben oder unten.
otIp6SetMeshLocalIid(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
Legt die lokale Mesh-IID fest (zu Testzwecken).
otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
void
Aktiviert oder deaktiviert den Promise-Modus in der Thread-Oberfläche.
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
void
Registriert einen Callback, um empfangene IPv6-Datagramme bereitzustellen.
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
void
Legt fest, ob der Thread-Steuerverkehr beim Bereitstellen von IPv6-Datagramm über den in otIp6SetReceiveCallback() angegebenen Callback herausgefiltert wird.
otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
void
Aktiviert/deaktiviert das SLAAC-Modul.
otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
void
Legt den Filter-Handler des SLAAC-Moduls fest.
otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
void
Wandelt eine bestimmte IPv6-Socket-Adresse in einen für Menschen lesbaren String um.
otIp6SubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
Abonnieren der Thread-Schnittstelle eine Multicast-Adresse für Netzwerkschnittstellen
otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
Beendet die Thread-Schnittstelle von einer Multicast-Adresse für Netzwerkschnittstellen.

Structs

otBorderRoutingCounters

Stellt die Zähler von Paketen dar, die über Border Routing weitergeleitet werden.

otIp6Adresse

Stellt eine IPv6-Adresse dar.

otIp6AddressComponents

Die Komponenten einer IPv6-Adresse

otIp6AddressInfo

Repräsentiert IPv6-Adressinformationen.

otIp6InterfaceIdentifier

Die Schnittstellen-ID einer IPv6-Adresse.

otIp6NetworkPrefix

Das Netzwerkpräfix einer IPv6-Adresse (die wichtigsten 64 Bit der Adresse).

otIp6Präfix

Stellt ein IPv6-Präfix dar.

otMessageInfo

Die lokalen und Peer-IPv6-Socket-Adressen.

otNetifAddress

Stellt eine Unicast-Adresse einer IPv6-Netzwerkschnittstelle dar.

otNetifMulticastAddress:

Stellt eine Multicast-Adresse einer IPv6-Netzwerkschnittstelle dar.

otPacketsAndBytes (in englischer Sprache)

Die Zähler für Pakete und Byte.

otSockAddr

Stellt eine IPv6-Socket-Adresse dar.

Gewerkschaften

otIp6InterfaceIdentifier::OT_TOOL_PACKED_FIELD

Aufzählungen

Anonyme Aufzählung

 anonymous enum

IPv6-Quellen.

Attribute
OT_ADDRESS_ORIGIN_DHCPV6

Zugeordnete DHCPv6-Adresse.

OT_ADDRESS_ORIGIN_MANUAL

Manuell zugewiesene Adresse.

OT_ADDRESS_ORIGIN_SLAAC

SLAAC-zugewiesene Adresse.

OT_ADDRESS_ORIGIN_THREAD

Thread-zugewiesene Adresse (ALOC, RLOC, MLEID usw.)

Anonyme Aufzählung

 anonymous enum

ECN-Status, wie im IP-Header dargestellt.

Attribute
OT_ECN_CAPABLE_0

ECT(0)

OT_ECN_CAPABLE_1

ECT(1)

OT_ECN_MARKED

Überlastung festgestellt (CE)

OT_ECN_NOT_CAPABLE

Nicht-ECT.

Anonyme Aufzählung

 anonymous enum

Internetprotokollnummern

Attribute
OT_IP6_PROTO_DST_OPTS

Zieloptionen für IPv6

OT_IP6_PROTO_FRAGMENT

Fragment-Header für IPv6

OT_IP6_PROTO_HOP_OPTS

IPv6-Hop-by-Hop-Option.

OT_IP6_PROTO_ICMP6

ICMP für IPv6.

OT_IP6_PROTO_IP6

IPv6-Kapselung.

OT_IP6_PROTO_NONE

Kein nächster Header für IPv6.

OT_IP6_PROTO_ROUTING

Routing-Header für IPv6.

OT_IP6_PROTO_TCP

Transmission Control Protocol.

OT_IP6_PROTO_UDP

Nutzer-Datagram.

Typdef1

otBorderRoutingCounters

struct otBorderRoutingCounters otBorderRoutingCounters

Stellt die Zähler von Paketen dar, die über Border Routing weitergeleitet werden.

otIp6Adresse

struct otIp6Address otIp6Address

Stellt eine IPv6-Adresse dar.

otIp6AddressCallback

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

Der Zeiger wird aufgerufen, wenn eine interne IPv6-Adresse hinzugefügt oder entfernt wird.

Details
Parameter
[in] aAddressInfo
Ein Zeiger auf die IPv6-Adressinformationen.
[in] aIsAdded
WAHR, wenn aAddress hinzugefügt wurde, FALSCH, wenn aAddress entfernt wurde.
[in] aContext
Ein Hinweis auf den anwendungsspezifischen Kontext.

otIp6AddressKomponenten

struct otIp6AddressComponents otIp6AddressComponents

Die Komponenten einer IPv6-Adresse

otIp6AddressInfo

struct otIp6AddressInfo otIp6AddressInfo

otIp6InterfaceIdentifier

struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier

Die Schnittstellen-ID einer IPv6-Adresse.

otIp6NetworkPräfix

struct otIp6NetworkPrefix otIp6NetworkPrefix

Das Netzwerkpräfix einer IPv6-Adresse (die wichtigsten 64 Bit der Adresse).

otIp6Präfix

struct otIp6Prefix otIp6Prefix

Stellt ein IPv6-Präfix dar.

otIp6Empfangsrückruf

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

Der Mauszeiger wird aufgerufen, wenn ein IPv6-Datagramm empfangen wird.

Details
Parameter
[in] aMessage
Ein Zeiger auf den Nachrichtenzwischenspeicher, der das empfangene IPv6-Datagramm enthält. Diese Funktion überträgt die Eigentümerschaft der aMessage an den Empfänger des Callbacks. Die Nachricht sollte vom Empfänger des Callbacks nach der Verarbeitung freigegeben werden (siehe otMessageFree()).
[in] aContext
Ein Hinweis auf den anwendungsspezifischen Kontext.

otIp6RegMulticastListenersCallback

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

Der Zeiger wird mit Ergebnissen von otIp6RegisterMulticastListeners aufgerufen.

Details
Parameter
[in] aContext
Ein Hinweis auf den Nutzerkontext.
[in] aError
OT_ERROR_NONE, wenn MLR.req erfolgreich gesendet wurde und MLR.rsp empfangen wurde, OT_ERROR_RESPONSE_TIMEOUT, wenn die Benachrichtigung MLR.rsp nicht empfangen werden konnte, OT_ERROR_PARSE, wenn die Benachrichtigung MLR.rsp nicht geparst werden konnte.
[in] aMlrStatus
Der Registrierungsstatus des Multicast-Listeners, wenn aError OT_ERROR_NONE ist.
[in] aFailedAddresses
Ein Zeiger auf die fehlgeschlagenen IPv6-Adressen, wenn aError OT_ERROR_NONE ist.
[in] aFailedAddressNum
Anzahl der fehlgeschlagenen IPv6-Adressen, wenn aError OT_ERROR_NONE ist.
Weitere Informationen:
otIp6RegMulticastListeners

otIp6SlaacPrefixFilter

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

Mit Pointer können Nutzer Präfixe filtern und das Hinzufügen einer SLAAC-Adresse auf der Grundlage eines Präfixes nicht zulassen.

Mit otIp6SetSlaacPrefixFilter() kann der Filter-Handler festgelegt werden. Der Filter-Handler wird vom SLAAC-Modul aufgerufen, wenn eine SLAAC-Adresse anhand eines Präfixes hinzugefügt werden soll. Der boolesche Rückgabewert bestimmt, ob die Adresse gefiltert (nicht hinzugefügt) wird oder nicht.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aPrefix
Ein Zeiger auf ein Präfix, für das die SLAAC-Adresse hinzugefügt wird.
Rückgabewerte
TRUE
Gibt an, dass die auf dem Präfix basierende SLAAC-Adresse gefiltert und NICHT hinzugefügt werden soll.
FALSE
Gibt an, dass die auf dem Präfix basierende SLAAC-Adresse hinzugefügt werden soll.

OTMessageInfo

struct otMessageInfo otMessageInfo

Die lokalen und Peer-IPv6-Socket-Adressen.

OTNetifAddress

struct otNetifAddress otNetifAddress

Stellt eine Unicast-Adresse einer IPv6-Netzwerkschnittstelle dar.

OTNetifMulticastAddress

struct otNetifMulticastAddress otNetifMulticastAddress

Stellt eine Multicast-Adresse einer IPv6-Netzwerkschnittstelle dar.

OTPacketsAndBytes

struct otPacketsAndBytes otPacketsAndBytes

Die Zähler für Pakete und Byte.

OTSockAddr

struct otSockAddr otSockAddr

Stellt eine IPv6-Socket-Adresse dar.

Variablen

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END

Functions

otIp6AddUnicastAddress

otError otIp6AddUnicastAddress(
  otInstance *aInstance,
  const otNetifAddress *aAddress
)

Fügt der Thread-Schnittstelle eine Adresse für die Netzwerkschnittstelle hinzu.

Die übergebene Instanz aAddress wird von der Thread-Schnittstelle kopiert. Die Thread-Schnittstelle unterstützt nur eine feste Anzahl von extern hinzugefügten Unicast-Adressen. OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS ansehen.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aAddress
Ein Zeiger auf eine Adresse der Netzwerkschnittstelle.
Rückgabewerte
OT_ERROR_NONE
Die Adresse der Netzwerkschnittstelle wurde hinzugefügt oder aktualisiert.
OT_ERROR_INVALID_ARGS
Die von aAddress angegebene IP-Adresse ist eine interne Adresse.
OT_ERROR_NO_BUFS
Die Netzwerkschnittstelle speichert bereits die maximal zulässige Anzahl externer Adressen.

nicht erhöhterPort

otError otIp6AddUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Fügt einen Port in die Liste der zulässigen nicht sicheren Ports ein.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aPort
Der Portwert.
Rückgabewerte
OT_ERROR_NONE
Der Port wurde erfolgreich der Liste der zulässigen unsicheren Ports hinzugefügt.
OT_ERROR_INVALID_ARGS
Der Port ist ungültig. Wert 0 ist für die interne Verwendung reserviert.
OT_ERROR_NO_BUFS
Die Liste der unsicheren Ports ist voll.

otIp6AddressFromString

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

Wandelt einen menschenlesbaren IPv6-Adressstring in eine Binärdarstellung um.

Details
Parameter
[in] aString
Ein Zeiger auf einen String mit dem Wert NULL.
[out] aAddress
Ein Zeiger auf eine IPv6-Adresse.
Rückgabewerte
OT_ERROR_NONE
aString wurde erfolgreich geparst und aAddress wurde aktualisiert.
OT_ERROR_PARSE
Parsen von aString als IPv6-Adresse fehlgeschlagen.

otIp6AdressToString

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

Wandelt eine bestimmte IPv6-Adresse in einen für Menschen lesbaren String um.

Der IPv6-Adressstring ist als 16-Hexadezimalwert formatiert, der durch „:“ getrennt ist. „%x:%x:%x:...:%x“).

Wenn der resultierende String nicht in aBuffer passt (innerhalb seiner aSize-Zeichen), wird er gekürzt. Der ausgegebene String wird jedoch immer mit einem Nulltermin beendet.

Details
Parameter
[in] aAddress
Ein Zeiger auf eine IPv6-Adresse (DARF NICHT NULL sein).
[out] aBuffer
Ein Zeiger auf ein Char-Array, um den String auszugeben (DARF NICHT NULL sein).
[in] aSize
Die Größe von aBuffer (in Byte). Empfohlen für die Verwendung von OT_IP6_ADDRESS_STRING_SIZE.

otIp6ArePrefixesEqual

bool otIp6ArePrefixesEqual(
  const otIp6Prefix *aFirst,
  const otIp6Prefix *aSecond
)

Testen, ob zwei IPv6-Präfixe identisch sind

Details
Parameter
[in] aFirst
Ein Zeiger auf das erste IPv6-Präfix zum Vergleich.
[in] aSecond
Ein Zeiger auf das zweite IPv6-Präfix zum Vergleich.
Rückgabewerte
TRUE
Die beiden IPv6-Präfixe sind identisch.
FALSE
Die beiden IPv6-Präfixe sind nicht identisch.

otIp6GetBorderRoutingCounters

const otBorderRoutingCounters * otIp6GetBorderRoutingCounters(
  otInstance *aInstance
)

Ruft die Border Routing-Zähler ab.

Die Build-Funktion „OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE“ muss aktiviert sein.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabe
Ein Mauszeiger auf die Border Routing-Zähler.

otIp6GetMulticastAdressen

const otNetifMulticastAddress * otIp6GetMulticastAddresses(
  otInstance *aInstance
)

Ruft die Liste der IPv6-Multicast-Adressen ab, die der Thread-Schnittstelle abonniert wurden.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabe
Ein Zeiger auf die erste Multicast-Adresse von Network Interface.

otIp6GetPräfix

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

Ruft ein Präfix mit aLength von aAddress ab.

Details
Parameter
[in] aAddress
Ein Zeiger auf eine IPv6-Adresse.
[in] aLength
Die Länge des Präfix in Bit.
[out] aPrefix
Ein Zeiger zum Ausgeben des IPv6-Präfixes.

otIp6GetUnicastAdressen

const otNetifAddress * otIp6GetUnicastAddresses(
  otInstance *aInstance
)

Ruft die Liste der IPv6-Adressen ab, die der Thread-Schnittstelle zugewiesen sind.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabe
Ein Zeiger auf die erste Netzwerkschnittstellenadresse.

OTIp6GetUnsecurePorts

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

Gibt einen Mauszeiger zur Liste der unsicheren Ports zurück.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[out] aNumEntries
Die Anzahl der Einträge in der Liste.
Rückgabe
Ein Zeiger auf die Liste der unsicheren Ports.

otIp6IsAddressEqual

bool otIp6IsAddressEqual(
  const otIp6Address *aFirst,
  const otIp6Address *aSecond
)

Testen Sie, ob zwei IPv6-Adressen identisch sind.

Details
Parameter
[in] aFirst
Ein Zeiger auf die erste IPv6-Adresse, die verglichen werden soll.
[in] aSecond
Ein Zeiger auf die zweite IPv6-Adresse zum Vergleich.
Rückgabewerte
TRUE
Die beiden IPv6-Adressen sind identisch.
FALSE
Die beiden IPv6-Adressen sind nicht identisch.

Nicht angegeben

bool otIp6IsAddressUnspecified(
  const otIp6Address *aAddress
)

Gibt an, ob eine bestimmte IPv6-Adresse die nicht angegebene Adresse ist.

Details
Parameter
[in] aAddress
Ein Zeiger auf eine IPv6-Adresse.
Rückgabewerte
TRUE
Wenn die IPv6-Adresse die nicht angegebene Adresse ist.
FALSE
Wenn die IPv6-Adresse nicht die unbestimmte Adresse ist.

otIp6IsEnabled

bool otIp6IsEnabled(
  otInstance *aInstance
)

Gibt an, ob die IPv6-Schnittstelle aktiv ist.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabewerte
TRUE
Die IPv6-Schnittstelle ist aktiviert.
FALSE
Die IPv6-Schnittstelle ist deaktiviert.

otIp6IsMulticastPromiscuous aktiviert

bool otIp6IsMulticastPromiscuousEnabled(
  otInstance *aInstance
)

Überprüft, ob der Procast-Modus für Multicast auf der Thread-Schnittstelle aktiviert ist.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Weitere Informationen finden Sie hier:
otIp6SetMulticastPromiscuousEnabled

otIp6IsReceiveFilterEnabled

bool otIp6IsReceiveFilterEnabled(
  otInstance *aInstance
)

Gibt an, ob der Traffic zur Thread-Steuerung herausgefiltert wird, wenn IPv6-Datagramme über den in otIp6SetReceiveCallback() angegebenen Callback bereitgestellt werden.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabe
WAHR, wenn Thread-Steuerverkehr herausgefiltert wird, andernfalls FALSCH.
Weitere Informationen:
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled

otIp6IsSlaacEnabled

bool otIp6IsSlaacEnabled(
  otInstance *aInstance
)

Gibt an, ob das SLAAC-Modul aktiviert ist.

Die Build-Funktion „OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE“ muss aktiviert sein.

Details
Rückgabewerte
TRUE
Das SLAAC-Modul ist aktiviert.
FALSE
Das SLAAC-Modul ist deaktiviert.

OTIp6Neue Nachricht

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

Weisen Sie einen neuen Nachrichtenpuffer zu, um eine IPv6-Nachricht zu senden.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aSettings
Ein Zeiger auf die Nachrichteneinstellungen oder NULL, um Standardeinstellungen festzulegen.
Rückgabe
Ein Zeiger auf den Nachrichtenzwischenspeicher oder NULL, wenn keine Nachrichtenzwischenspeicher verfügbar sind oder die Parameter ungültig sind.
Weitere Informationen:
otMessageFree

otIp6NewMessageFromBuffer

otMessage * otIp6NewMessageFromBuffer(
  otInstance *aInstance,
  const uint8_t *aData,
  uint16_t aDataLength,
  const otMessageSettings *aSettings
)

Weisen Sie einen neuen Nachrichtenpuffer zu und schreiben Sie das IPv6-Datagramm in den Nachrichtenzwischenspeicher, um eine IPv6-Nachricht zu senden.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aData
Ein Zeiger auf den IPv6-Datagram-Puffer.
[in] aDataLength
Die Größe des IPv6-Datagramp-Puffers, auf den aData verweist.
[in] aSettings
Ein Zeiger auf die Nachrichteneinstellungen oder NULL, um Standardeinstellungen festzulegen.
Rückgabe
Ein Zeiger auf die Nachricht oder NULL, wenn fehlerhafter IPv6-Header oder unzureichende Nachrichtenpuffer verfügbar sind.
Weitere Informationen:
otMessageFree

otIp6PrefixFromString

otError otIp6PrefixFromString(
  const char *aString,
  otIp6Prefix *aPrefix
)

Wandelt einen menschenlesbaren IPv6-Präfixstring in eine Binärdarstellung um.

Der Parameter aString sollte ein String im Format „

/", wobei
ist eine IPv6-Adresse und eine Präfixlänge.

Details
Parameter
[in] aString
Ein Zeiger auf einen String mit dem Wert NULL.
[out] aPrefix
Ein Zeiger auf ein IPv6-Präfix.
Rückgabewerte
OT_ERROR_NONE
Der String wurde als IPv6-Präfix geparst und aPrefix wurde aktualisiert.
OT_ERROR_PARSE
Parsen von aString als IPv6-Präfix fehlgeschlagen.

otIp6PrefixMatch

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

Gibt die Präfixübereinstimmungslänge (Bits) für zwei IPv6-Adressen zurück.

Details
Parameter
[in] aFirst
Ein Zeiger auf die erste IPv6-Adresse.
[in] aSecond
Ein Zeiger auf die zweite IPv6-Adresse.
Rückgabe
Die Präfixübereinstimmungslänge in Bit.

otIp6PräfixToString

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

Wandelt ein bestimmtes IPv6-Präfix in einen für Menschen lesbaren String um.

Der IPv6-Adressstring hat das Format „%x:%x:%x:...[::]/plen“.

Wenn der resultierende String nicht in aBuffer passt (innerhalb seiner aSize-Zeichen), wird er gekürzt. Der ausgegebene String wird jedoch immer mit einem Nulltermin beendet.

Details
Parameter
[in] aPrefix
Zeiger auf ein IPv6-Präfix (MÜSSEN NICHT NULL sein).
[out] aBuffer
Ein Zeiger auf ein Char-Array, um den String auszugeben (DARF NICHT NULL sein).
[in] aSize
Die Größe von aBuffer (in Byte). Empfohlen für die Verwendung von OT_IP6_PREFIX_STRING_SIZE.

otIp6ProtoToString

const char * otIp6ProtoToString(
  uint8_t aIpProto
)

Wandelt eine bestimmte IP-Protokollnummer in einen menschenlesbaren String um.

Details
Parameter
[in] aIpProto
Eine IP-Protokollnummer (OT_IP6_PROTO_*-Aufzählung).
Rückgabe
Ein String, der aIpProto darstellt.

otIp6RegMulticastListeners

otError otIp6RegisterMulticastListeners(
  otInstance *aInstance,
  const otIp6Address *aAddresses,
  uint8_t aAddressNum,
  const uint32_t *aTimeout,
  otIp6RegisterMulticastListenersCallback aCallback,
  void *aContext
)

Registriert Multicast-Listener beim primären Backbone-Router.

OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE und OPENTHREAD_CONFIG_COMMISSIONER_ENABLE müssen aktiviert sein.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aAddresses
Ein Multicast-Adressarray zur Registrierung.
[in] aAddressNum
Die Anzahl der zu registrierenden Multicast-Adresse (0, wenn aAddresses NULL ist).
[in] aTimeout
Ein Zeiger auf das Zeitlimit (in Sekunden), das in MLR.req eingefügt werden soll. Bei einer Zeitüberschreitung von 0 wird der entsprechende Multicast-Listener entfernt. Bei NULL hätte MLR.req standardmäßig keine Zeitüberschreitungen.
[in] aCallback
Ein Zeiger auf die Callback-Funktion.
[in] aContext
Ein Hinweis auf den Nutzerkontext.
Rückgabewerte
OT_ERROR_NONE
MLR.req erfolgreich gesendet. aCallback wird aufgerufen, wenn diese Methode OT_ERROR_NONE zurückgibt.
OT_ERROR_BUSY
Wenn eine vorherige Registrierung noch aktiv war.
OT_ERROR_INVALID_ARGS
Mindestens ein Argument ist ungültig.
OT_ERROR_INVALID_STATE
Wenn das Gerät keinen gültigen Status für das Senden von MLR.req hatte (z.B. „Provisionen nicht gestartet“, „Primärer Backbone-Router nicht gefunden“).
OT_ERROR_NO_BUFS
Wenn nicht genügend Zwischenspeicher für Nachrichten verfügbar sind.
Weitere Informationen:
otIp6RegMulticastListenersCallback

otIp6RemoveAllUnsecurePorts

void otIp6RemoveAllUnsecurePorts(
  otInstance *aInstance
)

Entfernt alle Ports aus der Liste der zulässigen unsicheren Ports.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.

otIp6RemoveUnicastAddress

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

Entfernt eine Netzwerkschnittstellenadresse von der Thread-Schnittstelle.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aAddress
Ein Zeiger auf eine IP-Adresse.
Rückgabewerte
OT_ERROR_NONE
Die Adresse für die Netzwerkschnittstelle wurde entfernt.
OT_ERROR_INVALID_ARGS
Die von aAddress angegebene IP-Adresse ist eine interne Adresse.
OT_ERROR_NOT_FOUND
Die von aAddress angegebene IP-Adresse wurde nicht gefunden.

otIp6RemoveUnsecurePort

otError otIp6RemoveUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Entfernt einen Port aus der Liste der zulässigen unsicheren Ports.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aPort
Der Portwert.
Rückgabewerte
OT_ERROR_NONE
Der Port wurde erfolgreich aus der Liste der zulässigen unsicheren Ports entfernt.
OT_ERROR_INVALID_ARGS
Der Port ist ungültig. Wert 0 ist für die interne Verwendung reserviert.
OT_ERROR_NOT_FOUND
Der Port wurde in der Liste der unsicheren Ports nicht gefunden.

otIp6ResetBorderRoutingCounters

void otIp6ResetBorderRoutingCounters(
  otInstance *aInstance
)

Setzt die Border Routing-Zähler zurück.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.

otIp6SelectSourceAddress

otError otIp6SelectSourceAddress(
  otInstance *aInstance,
  otMessageInfo *aMessageInfo
)

Führen Sie eine Auswahl für die OpenThread-Quelladresse durch.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in,out] aMessageInfo
Ein Zeiger auf die Nachrichteninformationen.
Rückgabewerte
OT_ERROR_NONE
Eine Quelladresse wurde gefunden und im mSockAddr von aMessageInfo eingetragen.
OT_ERROR_NOT_FOUND
Es wurde keine Quelladresse gefunden und aMessageInfo ist unverändert.

otIp6Senden

otError otIp6Send(
  otInstance *aInstance,
  otMessage *aMessage
)

Sendet ein IPv6-Datagramm über die Thread-Schnittstelle.

Der Anruf wird bei diesem Anruf auf aMessage übertragen. OpenThread gibt aMessage kostenlos, wenn die Verarbeitung abgeschlossen ist, auch wenn ein anderer Wert als OT_ERROR_NONE zurückgegeben wird.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aMessage
Ein Zeiger auf den Nachrichtenzwischenspeicher, der das IPv6-Datagramm enthält.
Rückgabewerte
OT_ERROR_NONE
Die Nachricht wurde verarbeitet.
OT_ERROR_DROP
Die Nachricht wurde korrekt formatiert, aber aufgrund von Paketverarbeitungsregeln nicht vollständig verarbeitet.
OT_ERROR_NO_BUFS
Beim Verarbeiten des Datagramms konnten keine erforderlichen Nachrichtenzwischenspeicher zugewiesen werden.
OT_ERROR_NO_ROUTE
Keine Route zum Hosten.
OT_ERROR_INVALID_SOURCE_ADDRESS
Die Quelladresse ist ungültig, z.B. eine Anycast- oder Multicast-Adresse.
OT_ERROR_PARSE
Beim Verarbeiten der Nachricht ist ein fehlerhafter Header aufgetreten.

otIp6SetAddressCallback

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

Registriert einen Callback, um interne IPv6-Adressänderungen zu benachrichtigen.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aCallback
Ein Zeiger auf eine Funktion, die aufgerufen wird, wenn eine interne IPv6-Adresse hinzugefügt oder entfernt wird. NULL, um den Callback zu deaktivieren.
[in] aCallbackContext
Ein Hinweis auf den anwendungsspezifischen Kontext.

otIp6SetEnabled

otError otIp6SetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Bringt die IPv6-Schnittstelle nach oben oder unten.

Rufen Sie diese auf, um IPv6-Kommunikation zu aktivieren oder zu deaktivieren.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aEnabled
WAHR, um IPv6 zu aktivieren, andernfalls FALSCH.
Rückgabewerte
OT_ERROR_NONE
Die IPv6-Schnittstelle wurde nach oben/unten gebracht.
OT_ERROR_INVALID_STATE
Die IPv6-Schnittstelle ist nicht verfügbar, da das Gerät im Rohdatenmodus ausgeführt wird (nur verfügbar, wenn die OPENTHREAD_CONFIG_LINK_RAW_ENABLE-Funktion aktiviert ist).

OTIp6SetMeshLocalIid

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

Legt die lokale Mesh-IID fest (zu Testzwecken).

OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE muss aktiviert sein.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aIid
Ein Zeiger auf die zu vermerkende lokale Mesh-ID.
Rückgabewerte
OT_ERROR_NONE
Die lokale Mesh-ID für Mesh-Netzwerk wurde festgelegt.
OT_ERROR_INVALID_STATE
Thread-Protokolle sind aktiviert.

otIp6SetMulticastPromiscuousAktiviert

void otIp6SetMulticastPromiscuousEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Aktiviert oder deaktiviert den Promise-Modus in der Thread-Oberfläche.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aEnabled
WAHR, um den Promise-Modus zu aktivieren, andernfalls FALSCH.
Weitere Informationen:
otIp6IsMulticastPromiscuousEnabled

otIp6SetReceiveCallback

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

Registriert einen Callback, um empfangene IPv6-Datagramme bereitzustellen.

Standardmäßig wird bei diesem Callback kein Traffic über die Thread-Steuerung weitergeleitet. Informationen zum Ändern der Einstellung für die Trafficfilterfilter für die Thread-Steuerung finden Sie unter otIp6SetReceiveFilterEnabled().

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aCallback
Ein Zeiger auf eine Funktion, die aufgerufen wird, wenn ein IPv6-Datagramm empfangen wird, oder NULL, um den Callback zu deaktivieren.
[in] aCallbackContext
Ein Hinweis auf den anwendungsspezifischen Kontext.
Weitere Informationen:
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled

otIp6SetReceiveFilterEnabled

void otIp6SetReceiveFilterEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Legt fest, ob der Thread-Steuerverkehr beim Bereitstellen von IPv6-Datagramm über den in otIp6SetReceiveCallback() angegebenen Callback herausgefiltert wird.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aEnabled
WAHR, wenn Thread-Steuerverkehr herausgefiltert wird, andernfalls FALSCH.
Weitere Informationen:
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled

OTIp6SetSlaacEnabled

void otIp6SetSlaacEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Aktiviert/deaktiviert das SLAAC-Modul.

Die Build-Funktion „OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE“ muss aktiviert sein.

Wenn das SLAAC-Modul aktiviert ist, werden SLA-Adressen (basierend auf „Mesh-Präfixen“ in Netzwerkdaten) der Schnittstelle hinzugefügt. Wenn das SLAAC-Modul deaktiviert ist, werden alle zuvor hinzugefügten SLAAC-Adressen entfernt.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aEnabled
TRUE, um zu aktivieren, FALSE, um sie zu deaktivieren.

otIp6SetSlaacPrefixFilter

void otIp6SetSlaacPrefixFilter(
  otInstance *aInstance,
  otIp6SlaacPrefixFilter aFilter
)

Legt den Filter-Handler des SLAAC-Moduls fest.

Die Build-Funktion „OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE“ muss aktiviert sein.

Der Filter-Handler wird vom SLAAC-Modul aufgerufen, wenn eine SLAAC-Adresse anhand eines Präfixes hinzugefügt werden soll, um zu entscheiden, ob die Adresse hinzugefügt werden soll.

Durch einen NULL-Filter-Handler wird das Filtern deaktiviert und das Hinzufügen aller SLAAC-Adressen ermöglicht.

Wenn diese Funktion nicht aufgerufen wird, ist der vom SLAAC-Modul verwendete Standardfilter NULL (Filter ist deaktiviert).

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aFilter
Ein Zeiger auf den SLAAC-Präfixfilter-Handler oder NULL, um das Filtern zu deaktivieren.

OTIP6SockAddrToString

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

Wandelt eine bestimmte IPv6-Socket-Adresse in einen für Menschen lesbaren String um.

Der IPv6-Socket-Adressstring ist so formatiert: [address]:port. Dabei wird address als 16-Hexadezimalwert angezeigt, der durch : getrennt ist. port ist die Portnummer im Dezimalformat, z. B. „[%x:%x:...:%x]:%u“.

Wenn der resultierende String nicht in aBuffer passt (innerhalb seiner aSize-Zeichen), wird er gekürzt. Der ausgegebene String wird jedoch immer mit einem Nulltermin beendet.

Details
Parameter
[in] aSockAddr
Ein Zeiger auf eine IPv6-Socket-Adresse (DARF NICHT NULL sein).
[out] aBuffer
Ein Zeiger auf ein Char-Array, um den String auszugeben (DARF NICHT NULL sein).
[in] aSize
Die Größe von aBuffer (in Byte). Empfohlen für die Verwendung von OT_IP6_SOCK_ADDR_STRING_SIZE.

otIp6SubscribeMulticastAddress

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

Abonnieren der Thread-Schnittstelle eine Multicast-Adresse für Netzwerkschnittstellen

Die übergebene Instanz aAddress wird von der Thread-Oberfläche kopiert. Die Thread-Schnittstelle unterstützt nur eine feste Anzahl von extern hinzugefügten Multicast-Adressen. OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS ansehen.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aAddress
Ein Zeiger auf eine IP-Adresse.
Rückgabewerte
OT_ERROR_NONE
Abo für Multicast-Adresse von Network Interface wurde abonniert.
OT_ERROR_ALREADY
Die Multicast-Adresse ist bereits abonniert.
OT_ERROR_INVALID_ARGS
Die von aAddress angegebene IP-Adresse ist eine ungültige Multicast-Adresse.
OT_ERROR_REJECTED
Die durch aAddress angegebene IP-Adresse ist eine interne Multicast-Adresse.
OT_ERROR_NO_BUFS
Die Netzwerkschnittstelle speichert bereits die maximal zulässige Anzahl externer Multicast-Adressen.

otIp6AboMulticastAddress

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

Beendet die Thread-Schnittstelle von einer Multicast-Adresse für Netzwerkschnittstellen.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aAddress
Ein Zeiger auf eine IP-Adresse.
Rückgabewerte
OT_ERROR_NONE
Das Abo für die Multicast-Adresse von Network Interface wurde beendet.
OT_ERROR_REJECTED
Die von aAddress angegebene IP-Adresse ist eine interne Adresse.
OT_ERROR_NOT_FOUND
Die von aAddress angegebene IP-Adresse wurde nicht gefunden.

Makros

OT_IP_ADRESSE_GRÖSSE

 OT_IP6_ADDRESS_SIZE 16

Größe einer IPv6-Adresse (Byte)

OT_IP_ADRESSE_STRING_GRÖSSE

 OT_IP6_ADDRESS_STRING_SIZE 40

Empfohlene Größe für die Stringdarstellung einer IPv6-Adresse.

OT_IP6_HEADER_PROTO_OFFSET

 OT_IP6_HEADER_PROTO_OFFSET 6

Offset des Proto-Felds im IPv6-Header (Byte)

OT_IP_HEADER_SIZE

 OT_IP6_HEADER_SIZE 40

Größe eines IPv6-Headers (Byte)

OT_IP6_IID_SIZE

 OT_IP6_IID_SIZE 8

Größe einer IPv6-Schnittstellen-ID (Byte)

OT_IP6_MAX_MLR_ADRESSEN

 OT_IP6_MAX_MLR_ADDRESSES 15

Maximale Anzahl von IPv6-Adressen, die von der Multicast-Listener-Registrierung unterstützt werden.

OT_IP6_PREFIX_BITSIZE

 OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)

Größe eines IPv6-Präfixes (Bits)

OT_IP6_PREFIX_SIZE

 OT_IP6_PREFIX_SIZE 8

Größe eines IPv6-Präfixes (Byte)

OT_IP6_PREFIX_STRING_SIZE

 OT_IP6_PREFIX_STRING_SIZE 45

Empfohlene Größe für die Stringdarstellung eines IPv6-Präfixes.

OT_IP6_SOCK_ADDR_STRING_SIZE

 OT_IP6_SOCK_ADDR_STRING_SIZE 48

Empfohlene Größe für die Stringdarstellung einer IPv6-Socket-Adresse.

Ressourcen

Die Themen der OpenThread API-Referenz stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen oder als Ergänzung zu unserer Dokumentation finden Sie unter Ressourcen.