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
IPv6 주소 정보를 나타냅니다. |
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 소켓 주소를 나타냅니다. |
변수 |
|
---|---|
OT_TOOL_PACKED_END
|
함수 |
|
---|---|
otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
|
스레드 인터페이스에 네트워크 인터페이스 주소를 추가합니다.
|
otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
허용된 안전하지 않은 포트 목록에 포트를 추가합니다.
|
otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
|
사람이 읽을 수 있는 IPv6 주소 문자열을 이진 표현으로 변환합니다.
|
otIp6AddressToString(const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
|
void
지정된 IPv6 주소를 사람이 읽을 수 있는 문자열로 변환합니다.
|
otIp6ArePrefixesEqual(const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
|
bool
두 IPv6 프리픽스가 동일한지 테스트합니다.
|
otIp6GetBorderRoutingCounters(otInstance *aInstance)
|
const otBorderRoutingCounters *
경계 라우팅 카운터를 가져옵니다.
|
otIp6GetMulticastAddresses(otInstance *aInstance)
|
const otNetifMulticastAddress *
스레드 인터페이스에 구독된 IPv6 멀티캐스트 주소의 목록을 가져옵니다.
|
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
|
void
aAddress 에서 aLength 가 있는 접두사를 가져옵니다. |
otIp6GetUnicastAddresses(otInstance *aInstance)
|
const otNetifAddress *
스레드 인터페이스에 할당된 IPv6 주소 목록을 가져옵니다.
|
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
|
const uint16_t *
안전하지 않은 포트 목록을 가리키는 포인터를 반환합니다.
|
otIp6HasUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
bool
유니캐스트 IPv6 주소가 스레드 인터페이스에 할당되었는지 여부를 나타냅니다.
|
otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
|
bool
두 개의 IPv6 주소가 동일한지 테스트합니다.
|
otIp6IsAddressUnspecified(const otIp6Address *aAddress)
|
bool
지정된 IPv6 주소가 지정되지 않은 주소인지 여부를 나타냅니다.
|
otIp6IsEnabled(otInstance *aInstance)
|
bool
IPv6 인터페이스가 작동 중인지 여부를 나타냅니다.
|
otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
|
bool
스레드 인터페이스에 멀티캐스트 무차별 모드가 사용 설정되어 있는지 확인합니다.
|
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
|
bool
otIp6SetReceiveCallback()에 지정된 콜백을 통해 IPv6 데이터그램을 전달할 때 스레드 제어 트래픽을 필터링하는지 여부를 나타냅니다.
|
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
두 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)
|
스레드 인터페이스에서 네트워크 인터페이스 주소를 삭제합니다.
|
otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
|
허용된 안전하지 않은 포트 목록에서 포트를 삭제합니다.
|
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
|
void
경계 라우팅 카운터를 재설정합니다.
|
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
|
OpenThread 소스 주소 선택을 실행합니다.
|
otIp6Send(otInstance *aInstance, otMessage *aMessage)
|
스레드 인터페이스를 통해 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
스레드 인터페이스에서 멀티캐스트 무차별 모드를 사용 설정하거나 사용 중지합니다.
|
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
|
void
콜백을 등록하여 수신된 IPv6 데이터그램을 제공합니다.
|
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
|
void
otIp6SetReceiveCallback()에 지정된 콜백을 통해 IPv6 데이터그램을 전달할 때 스레드 제어 트래픽을 필터링할지 여부를 설정합니다.
|
otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
|
void
SLAAC 모듈을 사용 설정/사용 중지합니다.
|
otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
|
void
SLAAC 모듈 필터 핸들러를 설정합니다.
|
otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
|
void
지정된 IPv6 소켓 주소를 사람이 읽을 수 있는 문자열로 변환합니다.
|
otIp6SubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
스레드 인터페이스를 네트워크 인터페이스 멀티캐스트 주소를 구독합니다.
|
otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
|
네트워크 인터페이스 멀티캐스트 주소에 대한 스레드 인터페이스의 구독을 취소합니다.
|
구조체 |
|
---|---|
otBorderRoutingCounters |
경계 라우팅을 통해 전달된 패킷의 카운터를 나타냅니다. |
otIp6Address |
IPv6 주소를 나타냅니다. |
otIp6AddressComponents |
IPv6 주소의 구성요소를 나타냅니다. |
otIp6AddressInfo |
IPv6 주소 정보를 나타냅니다. |
otIp6InterfaceIdentifier |
IPv6 주소의 인터페이스 식별자를 나타냅니다. |
otIp6NetworkPrefix |
IPv6 주소의 네트워크 접두사 (주소의 최상위 64비트)를 나타냅니다. |
otIp6Prefix |
IPv6 접두사를 나타냅니다. |
otMessageInfo |
로컬 및 피어 IPv6 소켓 주소를 나타냅니다. |
otNetifAddress |
IPv6 네트워크 인터페이스 유니캐스트 주소를 나타냅니다. |
otNetifMulticastAddress |
IPv6 네트워크 인터페이스 멀티캐스트 주소를 나타냅니다. |
otPacketsAndBytes |
패킷 및 바이트의 카운터를 나타냅니다. |
otSockAddr |
IPv6 소켓 주소를 나타냅니다. |
Union |
|
---|---|
otIp6InterfaceIdentifier:: |
열거형
익명의 enum
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용 다음 헤더가 없습니다. |
OT_IP6_PROTO_ROUTING
|
IPv6용 라우팅 헤더입니다. |
OT_IP6_PROTO_TCP
|
전송 제어 프로토콜. |
OT_IP6_PROTO_UDP
|
사용자 데이터그램. |
익명의 enum
anonymous enum
IPv6 주소 출처입니다.
속성 | |
---|---|
OT_ADDRESS_ORIGIN_DHCPV6
|
DHCPv6에 할당된 주소입니다. |
OT_ADDRESS_ORIGIN_MANUAL
|
수동으로 할당된 주소입니다. |
OT_ADDRESS_ORIGIN_SLAAC
|
SLAAC에서 할당된 주소입니다. |
OT_ADDRESS_ORIGIN_THREAD
|
스레드에 할당된 주소 (ALOC, RLOC, MLEID 등) |
익명의 enum
anonymous enum
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 주소가 추가되거나 삭제될 때 호출됩니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
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 모듈에 의해 호출됩니다. 불리언 반환 값은 주소가 필터링 (추가되지 않음)되는지 여부를 결정합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otNetifMulticastAddress
struct otNetifMulticastAddress otNetifMulticastAddress
IPv6 네트워크 인터페이스 멀티캐스트 주소를 나타냅니다.
변수
OT_TOOL_PACKED_END
OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END
함수
otIp6AddUnicastAddress
otError otIp6AddUnicastAddress( otInstance *aInstance, const otNetifAddress *aAddress )
스레드 인터페이스에 네트워크 인터페이스 주소를 추가합니다.
전달된 인스턴스 aAddress
는 스레드 인터페이스에 의해 복사됩니다. 스레드 인터페이스는 외부에서 추가된 유니캐스트 주소 중 고정된 개수만 지원합니다. 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개의 16진수 값으로 형식이 지정됩니다(예: "%x:%x:%x:...:%x").
결과 문자열이 aSize
문자 내의 aBuffer
에 맞지 않는 경우 문자열이 잘리지만 출력된 문자열은 항상 null로 끝납니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otIp6ArePrefixesEqual
bool otIp6ArePrefixesEqual( const otIp6Prefix *aFirst, const otIp6Prefix *aSecond )
두 IPv6 프리픽스가 동일한지 테스트합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otIp6GetBorderRoutingCounters
const otBorderRoutingCounters * otIp6GetBorderRoutingCounters( otInstance *aInstance )
경계 라우팅 카운터를 가져옵니다.
OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE
빌드 시간 기능을 사용 설정해야 합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
경계 라우팅 카운터에 대한 포인터입니다.
|
otIp6GetMulticastAddresses
const otNetifMulticastAddress * otIp6GetMulticastAddresses( otInstance *aInstance )
스레드 인터페이스에 구독된 IPv6 멀티캐스트 주소의 목록을 가져옵니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
첫 번째 네트워크 인터페이스 멀티캐스트 주소를 가리키는 포인터입니다.
|
otIp6GetPrefix
void otIp6GetPrefix( const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix )
aAddress
에서 aLength
가 있는 접두사를 가져옵니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otIp6GetUnicastAddresses
const otNetifAddress * otIp6GetUnicastAddresses( otInstance *aInstance )
스레드 인터페이스에 할당된 IPv6 주소 목록을 가져옵니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
첫 번째 네트워크 인터페이스 주소에 대한 포인터입니다.
|
otIp6GetUnsecurePorts
const uint16_t * otIp6GetUnsecurePorts( otInstance *aInstance, uint8_t *aNumEntries )
안전하지 않은 포트 목록을 가리키는 포인터를 반환합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 |
안전하지 않은 포트 목록에 대한 포인터입니다.
|
otIp6HasUnicastAddress
bool otIp6HasUnicastAddress( otInstance *aInstance, const otIp6Address *aAddress )
유니캐스트 IPv6 주소가 스레드 인터페이스에 할당되었는지 여부를 나타냅니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otIp6IsAddressEqual
bool otIp6IsAddressEqual( const otIp6Address *aFirst, const otIp6Address *aSecond )
두 개의 IPv6 주소가 동일한지 테스트합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otIp6IsAddressUnspecified
bool otIp6IsAddressUnspecified( const otIp6Address *aAddress )
지정된 IPv6 주소가 지정되지 않은 주소인지 여부를 나타냅니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otIp6IsEnabled
bool otIp6IsEnabled( otInstance *aInstance )
IPv6 인터페이스가 작동 중인지 여부를 나타냅니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otIp6IsMulticastPromiscuousEnabled
bool otIp6IsMulticastPromiscuousEnabled( otInstance *aInstance )
스레드 인터페이스에 멀티캐스트 무차별 모드가 사용 설정되어 있는지 확인합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
otIp6SetMulticastPromiscuousEnabled
otIp6IsReceiveFilterEnabled
bool otIp6IsReceiveFilterEnabled( otInstance *aInstance )
otIp6SetReceiveCallback()에 지정된 콜백을 통해 IPv6 데이터그램을 전달할 때 스레드 제어 트래픽을 필터링하는지 여부를 나타냅니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
스레드 제어 트래픽이 필터링되면 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 )
두 IPv6 주소의 프리픽스 일치 길이 (비트)를 반환합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 |
프리픽스는 길이(비트)와 일치합니다.
|
otIp6PrefixToString
void otIp6PrefixToString( const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize )
지정된 IPv6 접두사를 사람이 읽을 수 있는 문자열로 변환합니다.
IPv6 주소 문자열은 '%x:%x:%x:...[::]/plen' 형식입니다.
결과 문자열이 aSize
문자 내의 aBuffer
에 맞지 않는 경우 문자열이 잘리지만 출력된 문자열은 항상 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 )
스레드 인터페이스에서 네트워크 인터페이스 주소를 삭제합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
otIp6RemoveUnsecurePort
otError otIp6RemoveUnsecurePort( otInstance *aInstance, uint16_t aPort )
허용된 안전하지 않은 포트 목록에서 포트를 삭제합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
otIp6ResetBorderRoutingCounters
void otIp6ResetBorderRoutingCounters( otInstance *aInstance )
경계 라우팅 카운터를 재설정합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
otIp6SelectSourceAddress
otError otIp6SelectSourceAddress( otInstance *aInstance, otMessageInfo *aMessageInfo )
OpenThread 소스 주소 선택을 실행합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
otIp6Send
otError otIp6Send( otInstance *aInstance, otMessage *aMessage )
스레드 인터페이스를 통해 IPv6 데이터그램을 전송합니다.
발신자는 이 전화를 걸 때 aMessage
의 소유권을 이전합니다. OT_ERROR_NONE
이외의 값이 반환되는 경우를 포함하여 처리가 완료되면 OpenThread가 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 )
스레드 인터페이스에서 멀티캐스트 무차별 모드를 사용 설정하거나 사용 중지합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otIp6IsMulticastPromiscuousEnabled
otIp6SetReceiveCallback
void otIp6SetReceiveCallback( otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext )
콜백을 등록하여 수신된 IPv6 데이터그램을 제공합니다.
기본적으로 이 콜백은 스레드 제어 트래픽을 전달하지 않습니다. 스레드 제어 트래픽 필터 설정을 변경하려면 otIp6SetReceiveFilterEnabled()를 참고하세요.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
otIp6SetReceiveFilterEnabled
void otIp6SetReceiveFilterEnabled( otInstance *aInstance, bool aEnabled )
otIp6SetReceiveCallback()에 지정된 콜백을 통해 IPv6 데이터그램을 전달할 때 스레드 제어 트래픽을 필터링할지 여부를 설정합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
otIp6SetReceiveCallback
otIsReceivedIp6FilterEnabled
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').
결과 문자열이 aSize
문자 내의 aBuffer
에 맞지 않는 경우 문자열이 잘리지만 출력된 문자열은 항상 null로 끝납니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
otIp6SubscribeMulticastAddress
otError otIp6SubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
스레드 인터페이스를 네트워크 인터페이스 멀티캐스트 주소를 구독합니다.
인스턴스에 전달된 aAddress
는 스레드 인터페이스에 의해 복사됩니다. 스레드 인터페이스는 외부에서 추가된 고정된 수의 멀티캐스트 주소만 지원합니다. OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS
페이지를 참고하세요.
세부정보 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||
반환 값 |
|
otIp6UnsubscribeMulticastAddress
otError otIp6UnsubscribeMulticastAddress( otInstance *aInstance, const otIp6Address *aAddress )
네트워크 인터페이스 멀티캐스트 주소에 대한 스레드 인터페이스의 구독을 취소합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
매크로
OT_IP6_ADDRESS_SIZE
OT_IP6_ADDRESS_SIZE 16
IPv6 주소의 크기 (바이트)
OT_IP6_ADDRESS_STRING_SIZE
OT_IP6_ADDRESS_STRING_SIZE 40
IPv6 주소의 문자열 표현에 권장되는 크기입니다.
OT_IP6_HEADER_PROTO_OFFSET
OT_IP6_HEADER_PROTO_OFFSET 6
IPv6 헤더의 proto 필드의 오프셋 (바이트)
OT_IP6_HEADER_SIZE
OT_IP6_HEADER_SIZE 40
IPv6 헤더의 크기 (바이트)
OT_IP6_IID_SIZE
OT_IP6_IID_SIZE 8
IPv6 인터페이스 식별자의 크기 (바이트)
OT_IP6_MAX_MLR_ADDRESSES
OT_IP6_MAX_MLR_ADDRESSES 15
멀티캐스트 리스너 등록에서 지원하는 최대 IPv6 주소 수입니다.
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에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 알아보거나 문서에 참여하려면 리소스를 참고하세요.