Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.
Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

IPv6

Modul ini mencakup fungsi yang mengontrol komunikasi IPv6.

Ringkasan

Enumerasi

anonymous enum{
  OT_ADDRESS_ORIGIN_THREAD = 0,
  OT_ADDRESS_ORIGIN_SLAAC = 1,
  OT_ADDRESS_ORIGIN_DHCPV6 = 2,
  OT_ADDRESS_ORIGIN_MANUAL = 3
}
enum
Asal Alamat IPv6.
anonymous enum{
  OT_ECN_NOT_CAPABLE = 0x0,
  OT_ECN_CAPABLE_0 = 0x2,
  OT_ECN_CAPABLE_1 = 0x1,
  OT_ECN_MARKED = 0x3
}
enum
Status ECN, direpresentasikan seperti pada header 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
Nomor Protokol Internet.

Typedef

otBorderRoutingCounters typedef
Struktur ini menampilkan penghitung paket yang diteruskan melalui Border Routing.
otIp6Address typedef
struct otIp6Address
Struktur ini mewakili alamat IPv6.
otIp6AddressCallback)(const otIp6AddressInfo *aAddressInfo, bool aIsAdded, void *aContext) typedef
void(*
Pointer fungsi ini dipanggil saat alamat IPv6 internal ditambahkan atau dihapus.
otIp6AddressComponents typedef
Struktur ini mewakili komponen alamat IPv6.
otIp6AddressInfo typedef
otIp6InterfaceIdentifier typedef
Struktur ini mewakili ID Antarmuka dari alamat IPv6.
otIp6NetworkPrefix typedef
Struktur ini mewakili Awalan Jaringan dari alamat IPv6 (64 bit yang paling signifikan dari alamat).
otIp6Prefix typedef
struct otIp6Prefix
Struktur ini mewakili awalan IPv6.
otIp6ReceiveCallback)(otMessage *aMessage, void *aContext) typedef
void(*
Pointer fungsi ini dipanggil saat datagram IPv6 diterima.
otIp6RegisterMulticastListenersCallback)(void *aContext, otError aError, uint8_t aMlrStatus, const otIp6Address *aFailedAddresses, uint8_t aFailedAddressNum) typedef
void(*
Pointer fungsi ini dipanggil dengan hasil otIp6RegisterMulticastListeners.
otIp6SlaacPrefixFilter)(otInstance *aInstance, const otIp6Prefix *aPrefix) typedef
bool(*
Pointer fungsi ini memungkinkan pengguna memfilter awalan dan tidak mengizinkan alamat SLAAC berdasarkan awalan yang akan ditambahkan.
otMessageInfo typedef
struct otMessageInfo
Struktur ini mewakili alamat soket IPv6 lokal dan pembanding.
otNetifAddress typedef
Struktur ini mewakili alamat unicast antarmuka jaringan IPv6.
otNetifMulticastAddress typedef
Struktur ini mewakili alamat multicast antarmuka jaringan IPv6.
otPacketsAndBytes typedef
Struktur ini mewakili penghitung untuk paket dan byte.
otSockAddr typedef
struct otSockAddr
Struktur ini merepresentasikan alamat soket IPv6.

Variabel

OT_TOOL_PACKED_END

Functions

otIp6AddUnicastAddress(otInstance *aInstance, const otNetifAddress *aAddress)
Menambahkan Alamat Antarmuka Jaringan ke antarmuka Thread.
otIp6AddUnsecurePort(otInstance *aInstance, uint16_t aPort)
Fungsi ini menambahkan port ke daftar port tidak aman yang diizinkan.
otIp6AddressFromString(const char *aString, otIp6Address *aAddress)
Fungsi ini mengonversi string alamat IPv6 yang dapat dibaca manusia menjadi representasi biner.
otIp6AddressToString(const otIp6Address *aAddress, char *aBuffer, uint16_t aSize)
void
Fungsi ini mengonversi alamat IPv6 tertentu menjadi string yang dapat dibaca manusia.
otIp6ArePrefixesEqual(const otIp6Prefix *aFirst, const otIp6Prefix *aSecond)
bool
Uji apakah dua awalan IPv6 sama.
otIp6GetBorderRoutingCounters(otInstance *aInstance)
Mendapatkan penghitung Border Routing.
otIp6GetMulticastAddresses(otInstance *aInstance)
Mendapatkan daftar alamat multicast IPv6 yang berlangganan antarmuka Thread.
otIp6GetPrefix(const otIp6Address *aAddress, uint8_t aLength, otIp6Prefix *aPrefix)
void
Metode ini mendapatkan awalan dengan aLength dari aAddress.
otIp6GetUnicastAddresses(otInstance *aInstance)
const otNetifAddress *
Mendapatkan daftar alamat IPv6 yang ditetapkan untuk antarmuka Thread.
otIp6GetUnsecurePorts(otInstance *aInstance, uint8_t *aNumEntries)
const uint16_t *
Fungsi ini menampilkan pointer ke daftar port yang tidak aman.
otIp6IsAddressEqual(const otIp6Address *aFirst, const otIp6Address *aSecond)
bool
Uji apakah dua alamat IPv6 sama.
otIp6IsAddressUnspecified(const otIp6Address *aAddress)
bool
Fungsi ini menunjukkan apakah alamat IPv6 tertentu adalah Alamat yang Tidak Ditentukan.
otIp6IsEnabled(otInstance *aInstance)
bool
Menunjukkan apakah antarmuka IPv6 aktif atau tidak.
otIp6IsMulticastPromiscuousEnabled(otInstance *aInstance)
bool
Memeriksa apakah mode promiscuous multicast diaktifkan pada antarmuka Thread.
otIp6IsReceiveFilterEnabled(otInstance *aInstance)
bool
Fungsi ini menunjukkan apakah traffic kontrol Thread difilter atau tidak saat mengirimkan datagram IPv6 melalui callback yang ditentukan di otIp6SetReceiveCallback().
otIp6IsSlaacEnabled(otInstance *aInstance)
bool
Fungsi ini menunjukkan apakah modul SLAAC diaktifkan atau tidak.
otIp6NewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
Alokasikan buffer pesan baru untuk mengirim pesan IPv6.
otIp6NewMessageFromBuffer(otInstance *aInstance, const uint8_t *aData, uint16_t aDataLength, const otMessageSettings *aSettings)
Alokasikan buffer pesan baru dan tulis datagram IPv6 ke buffering pesan untuk mengirim pesan IPv6.
otIp6PrefixMatch(const otIp6Address *aFirst, const otIp6Address *aSecond)
uint8_t
Fungsi ini menampilkan panjang pencocokan awalan (bit) untuk dua alamat IPv6.
otIp6PrefixToString(const otIp6Prefix *aPrefix, char *aBuffer, uint16_t aSize)
void
Fungsi ini mengonversi awalan IPv6 tertentu menjadi string yang dapat dibaca manusia.
otIp6ProtoToString(uint8_t aIpProto)
const char *
Fungsi ini mengonversi nomor protokol IP tertentu menjadi string yang dapat dibaca manusia.
otIp6RegisterMulticastListeners(otInstance *aInstance, const otIp6Address *aAddresses, uint8_t aAddressNum, const uint32_t *aTimeout, otIp6RegisterMulticastListenersCallback aCallback, void *aContext)
Fungsi ini mendaftarkan Pemroses Multicast ke Router Backbone Utama.
otIp6RemoveAllUnsecurePorts(otInstance *aInstance)
void
Fungsi ini menghapus semua port dari daftar port tidak aman yang diizinkan.
otIp6RemoveUnicastAddress(otInstance *aInstance, const otIp6Address *aAddress)
Menghapus Alamat Antarmuka Jaringan dari antarmuka Thread.
otIp6RemoveUnsecurePort(otInstance *aInstance, uint16_t aPort)
Fungsi ini menghapus port dari daftar port tidak aman yang diizinkan.
otIp6ResetBorderRoutingCounters(otInstance *aInstance)
void
Mereset penghitung Border Routing.
otIp6SelectSourceAddress(otInstance *aInstance, otMessageInfo *aMessageInfo)
Fungsi ini melakukan pemilihan alamat sumber OpenThread.
otIp6Send(otInstance *aInstance, otMessage *aMessage)
Fungsi ini mengirim datagram IPv6 melalui antarmuka Thread.
otIp6SetAddressCallback(otInstance *aInstance, otIp6AddressCallback aCallback, void *aCallbackContext)
void
Fungsi ini mendaftarkan callback untuk memberi tahu perubahan alamat IPv6 internal.
otIp6SetEnabled(otInstance *aInstance, bool aEnabled)
Menghadirkan antarmuka IPv6 ke atas atau ke bawah.
otIp6SetMeshLocalIid(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid)
Fungsi ini menyetel IID Lokal Mesh (untuk tujuan pengujian).
otIp6SetMulticastPromiscuousEnabled(otInstance *aInstance, bool aEnabled)
void
Mengaktifkan atau menonaktifkan mode promiscuous multicast pada antarmuka Thread.
otIp6SetReceiveCallback(otInstance *aInstance, otIp6ReceiveCallback aCallback, void *aCallbackContext)
void
Fungsi ini mendaftarkan callback untuk memberikan datagram IPv6 yang diterima.
otIp6SetReceiveFilterEnabled(otInstance *aInstance, bool aEnabled)
void
Fungsi ini menetapkan apakah traffic kontrol Thread difilter atau tidak saat mengirimkan datagram IPv6 melalui callback yang ditentukan di otIp6SetReceiveCallback().
otIp6SetSlaacEnabled(otInstance *aInstance, bool aEnabled)
void
Fungsi ini mengaktifkan/menonaktifkan modul SLAAC.
otIp6SetSlaacPrefixFilter(otInstance *aInstance, otIp6SlaacPrefixFilter aFilter)
void
Fungsi ini menetapkan pengendali filter modul SLAAC.
otIp6SockAddrToString(const otSockAddr *aSockAddr, char *aBuffer, uint16_t aSize)
void
Fungsi ini mengonversi alamat soket IPv6 tertentu menjadi string yang dapat dibaca manusia.
otIp6SubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
Menyertakan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.
otIp6UnsubscribeMulticastAddress(otInstance *aInstance, const otIp6Address *aAddress)
Berhenti berlangganan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.

Struct

otBorderRoutingCounters

Struktur ini menampilkan penghitung paket yang diteruskan melalui Border Routing.

otIp6Address

Struktur ini mewakili alamat IPv6.

otIp6AddressComponents

Struktur ini mewakili komponen alamat IPv6.

otIp6AddressInfo

Struktur ini mewakili informasi alamat IPv6.

otIp6InterfaceIdentifier

Struktur ini mewakili ID Antarmuka dari alamat IPv6.

otIp6NetworkPrefix

Struktur ini mewakili Awalan Jaringan dari alamat IPv6 (64 bit yang paling signifikan dari alamat).

otIp6Prefix

Struktur ini mewakili awalan IPv6.

otMessageInfo

Struktur ini mewakili alamat soket IPv6 lokal dan pembanding.

otNetifAddress

Struktur ini mewakili alamat unicast antarmuka jaringan IPv6.

otNetifMulticastAddress

Struktur ini mewakili alamat multicast antarmuka jaringan IPv6.

otPacketsAndBytes

Struktur ini mewakili penghitung untuk paket dan byte.

otSockAddr

Struktur ini merepresentasikan alamat soket IPv6.

Union

otIp6InterfaceIdentifier::OT_TOOL_PACKED_FIELD

Enumerasi

enum anonim

 anonymous enum

Asal Alamat IPv6.

Properti
OT_ADDRESS_ORIGIN_DHCPV6

Alamat yang ditetapkan DHCPv6.

OT_ADDRESS_ORIGIN_MANUAL

Alamat yang ditetapkan secara manual.

OT_ADDRESS_ORIGIN_SLAAC

Alamat SLAAC yang ditetapkan.

OT_ADDRESS_ORIGIN_THREAD

Alamat yang ditetapkan untuk rangkaian pesan (ALOC, RLOC, MLEID, dll.)

enum anonim

 anonymous enum

Status ECN, direpresentasikan seperti pada header IP.

Properti
OT_ECN_CAPABLE_0

ECT(0)

OT_ECN_CAPABLE_1

ECT(1)

OT_ECN_MARKED

Kemacetan (CE) terjadi

OT_ECN_NOT_CAPABLE

Non-ECT.

enum anonim

 anonymous enum

Nomor Protokol Internet.

Properti
OT_IP6_PROTO_DST_OPTS

Opsi Tujuan untuk IPv6.

OT_IP6_PROTO_FRAGMENT

Header Fragmen untuk IPv6.

OT_IP6_PROTO_HOP_OPTS

Opsi IPv6 Hop-by-Hop.

OT_IP6_PROTO_ICMP6

ICMP untuk IPv6.

OT_IP6_PROTO_IP6

Enkapsulasi IPv6.

OT_IP6_PROTO_NONE

Tidak Ada Header Berikutnya untuk IPv6.

OT_IP6_PROTO_ROUTING

Routing Header untuk IPv6.

OT_IP6_PROTO_TCP

Protokol Kontrol Transmisi.

OT_IP6_PROTO_UDP

Datagram Pengguna.

Typedef

otBorderRoutingCounter

struct otBorderRoutingCounters otBorderRoutingCounters

Struktur ini menampilkan penghitung paket yang diteruskan melalui Border Routing.

otIp6Alamat

struct otIp6Address otIp6Address

Struktur ini mewakili alamat IPv6.

otIp6AlamatCallback

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

Pointer fungsi ini dipanggil saat alamat IPv6 internal ditambahkan atau dihapus.

Detail
Parameter
[in] aAddressInfo
Pointer ke informasi alamat IPv6.
[in] aIsAdded
TRUE jika aAddress ditambahkan, FALSE jika aAddress dihapus.
[in] aContext
Pointer untuk konteks khusus aplikasi.

otIp6AddressComponents

struct otIp6AddressComponents otIp6AddressComponents

Struktur ini mewakili komponen alamat IPv6.

otIp6AlamatInfo

struct otIp6AddressInfo otIp6AddressInfo

otIp6InterfaceIdentifier

struct otIp6InterfaceIdentifier otIp6InterfaceIdentifier

Struktur ini mewakili ID Antarmuka dari alamat IPv6.

otIp6JaringanAwalan

struct otIp6NetworkPrefix otIp6NetworkPrefix

Struktur ini mewakili Awalan Jaringan dari alamat IPv6 (64 bit yang paling signifikan dari alamat).

otIp6Awalan

struct otIp6Prefix otIp6Prefix

Struktur ini mewakili awalan IPv6.

otIp6TerimaCallback

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

Pointer fungsi ini dipanggil saat datagram IPv6 diterima.

Detail
Parameter
[in] aMessage
Pointer ke buffer pesan yang berisi datagram IPv6 yang diterima. Fungsi ini mentransfer kepemilikan aMessage ke penerima callback. Pesan akan dibebaskan oleh penerima callback setelah diproses (lihat otMessageFree()).
[in] aContext
Pointer untuk konteks khusus aplikasi.

otIp6RegisterMulticastListenersCallback

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

Pointer fungsi ini dipanggil dengan hasil otIp6RegisterMulticastListeners.

Detail
Parameter
[in] aContext
Pointer untuk konteks pengguna.
[in] aError
OT_ERROR_NONE saat berhasil mengirim MLR.req dan menerima MLR.rsp, OT_ERROR_RESPONSE_adtype saat gagal menerima MLR.rsp, OT_ERROR_PARSE saat gagal menguraikan MLR.rsp.
[in] aMlrStatus
Status Pendaftaran Pemroses Multicast saat aError adalah OT_ERROR_NONE.
[in] aFailedAddresses
Pointer ke alamat IPv6 yang gagal saat aError adalah OT_ERROR_NONE.
[in] aFailedAddressNum
Jumlah alamat IPv6 yang gagal saat aError adalah OT_ERROR_NONE.
Lihat juga:
otIp6RegisterMulticastListeners

otIp6SlaacPrefixFilter

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

Pointer fungsi ini memungkinkan pengguna memfilter awalan dan tidak mengizinkan alamat SLAAC berdasarkan awalan yang akan ditambahkan.

otIp6SetSlaacPrefixFilter() dapat digunakan untuk menetapkan pengendali filter. Pengendali filter dipanggil oleh modul SLAAC ketika akan menambahkan alamat SLAAC berdasarkan awalan. Nilai pengembalian boolean-nya menentukan apakah alamat difilter (tidak ditambahkan) atau tidak.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aPrefix
Pointer ke awalan yang akan ditambahkan alamat SLAAC.
Nilai yang Ditampilkan
TRUE
Menunjukkan bahwa alamat SLAAC berdasarkan awalan harus difilter dan TIDAK ditambahkan.
FALSE
Menunjukkan bahwa alamat SLAAC berdasarkan awalan harus ditambahkan.

otMessageInfo

struct otMessageInfo otMessageInfo

Struktur ini mewakili alamat soket IPv6 lokal dan pembanding.

otNetifAddress

struct otNetifAddress otNetifAddress

Struktur ini mewakili alamat unicast antarmuka jaringan IPv6.

otNetifMulticastAddress

struct otNetifMulticastAddress otNetifMulticastAddress

Struktur ini mewakili alamat multicast antarmuka jaringan IPv6.

OTPacketsAndBytes

struct otPacketsAndBytes otPacketsAndBytes

Struktur ini mewakili penghitung untuk paket dan byte.

OTSockAddr

struct otSockAddr otSockAddr

Struktur ini merepresentasikan alamat soket IPv6.

Variabel

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIp6InterfaceIdentifier OT_TOOL_PACKED_END

Functions

otIp6AddUnicastAddress

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

Menambahkan Alamat Antarmuka Jaringan ke antarmuka Thread.

Instance aAddress yang diteruskan disalin oleh antarmuka Thread. Antarmuka Thread hanya mendukung sejumlah alamat tetap unicast yang ditambahkan secara eksternal. Lihat OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Pointer ke Alamat Antarmuka Jaringan.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil menambahkan (atau memperbarui) Alamat Antarmuka Jaringan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat internal.
OT_ERROR_NO_BUFS
Antarmuka Jaringan telah menyimpan alamat eksternal maksimum yang diperbolehkan.

otIp6AddUnsecurePort

otError otIp6AddUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Fungsi ini menambahkan port ke daftar port tidak aman yang diizinkan.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aPort
Nilai port.
Nilai yang Ditampilkan
OT_ERROR_NONE
Port berhasil ditambahkan ke daftar port tidak aman yang diizinkan.
OT_ERROR_INVALID_ARGS
Port tidak valid (nilai 0 dicadangkan untuk penggunaan internal).
OT_ERROR_NO_BUFS
Daftar port yang tidak aman penuh.

otIp6AddressFromString

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

Fungsi ini mengonversi string alamat IPv6 yang dapat dibaca manusia menjadi representasi biner.

Detail
Parameter
[in] aString
Pointer ke string yang dihentikan NULL.
[out] aAddress
Pointer ke alamat IPv6.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil menguraikan string.
OT_ERROR_INVALID_ARGS
Gagal menguraikan string.

otIp6AddressToString

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

Fungsi ini mengonversi alamat IPv6 tertentu menjadi string yang dapat dibaca manusia.

String alamat IPv6 diformat sebagai 16 nilai heksadesimal yang dipisahkan oleh ':' (yaitu, "%x:%x:%x:...:%x").

Jika string yang dihasilkan tidak sesuai dengan aBuffer (dalam karakter aSize), string akan terpotong, tetapi string yang dihasilkan selalu diakhiri dengan null.

Detail
Parameter
[in] aAddress
Pointer ke alamat IPv6 (HARUS TIDAK berupa NULL).
[out] aBuffer
Pointer ke array char untuk menghasilkan string (HARUS TIDAK berupa NULL).
[in] aSize
Ukuran aBuffer (dalam byte). Sebaiknya gunakan OT_IP6_ADDRESS_STRING_SIZE.

otIp6ArePrefixesEqual

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

Uji apakah dua awalan IPv6 sama.

Detail
Parameter
[in] aFirst
Pointer ke awalan IPv6 pertama yang akan dibandingkan.
[in] aSecond
Pointer ke awalan IPv6 kedua yang akan dibandingkan.
Nilai yang Ditampilkan
TRUE
Kedua awalan IPv6 tersebut sama.
FALSE
Kedua awalan IPv6 tersebut tidak sama.

otIp6GetBorderRoutingCounters

const otBorderRoutingCounters * otIp6GetBorderRoutingCounters(
  otInstance *aInstance
)

Mendapatkan penghitung Border Routing.

Fungsi ini memerlukan pengaktifan fitur waktu build OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Hasil
Pointer ke penghitung Border Routing.

otIp6GetMulticastAddress

const otNetifMulticastAddress * otIp6GetMulticastAddresses(
  otInstance *aInstance
)

Mendapatkan daftar alamat multicast IPv6 yang berlangganan antarmuka Thread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Hasil
Pointer ke Alamat Multicast Antarmuka Jaringan pertama.

otIp6GetPrefix

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

Metode ini mendapatkan awalan dengan aLength dari aAddress.

Detail
Parameter
[in] aAddress
Pointer ke alamat IPv6.
[in] aLength
Panjang awalan dalam bit.
[out] aPrefix
Pointer untuk menghasilkan awalan IPv6.

otIp6GetUnicastAlamat

const otNetifAddress * otIp6GetUnicastAddresses(
  otInstance *aInstance
)

Mendapatkan daftar alamat IPv6 yang ditetapkan untuk antarmuka Thread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Hasil
Pointer ke Alamat Antarmuka Jaringan pertama.

otIp6GetUnsecurePorts

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

Fungsi ini menampilkan pointer ke daftar port yang tidak aman.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[out] aNumEntries
Jumlah entri dalam daftar.
Hasil
Pointer ke daftar port yang tidak aman.

otIp6IsAddressEqual

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

Uji apakah dua alamat IPv6 sama.

Detail
Parameter
[in] aFirst
Pointer ke alamat IPv6 pertama yang akan dibandingkan.
[in] aSecond
Pointer ke alamat IPv6 kedua yang akan dibandingkan.
Nilai yang Ditampilkan
TRUE
Kedua alamat IPv6 tersebut sama.
FALSE
Kedua alamat IPv6 tersebut tidak sama.

otIp6IsAddressUnspecified

bool otIp6IsAddressUnspecified(
  const otIp6Address *aAddress
)

Fungsi ini menunjukkan apakah alamat IPv6 tertentu adalah Alamat yang Tidak Ditentukan.

Detail
Parameter
[in] aAddress
Pointer ke alamat IPv6.
Nilai yang Ditampilkan
TRUE
Jika alamat IPv6 adalah Alamat yang Tidak Ditentukan.
FALSE
Jika alamat IPv6 bukan Alamat yang Tidak Ditentukan.

otIp6IsEnabled

bool otIp6IsEnabled(
  otInstance *aInstance
)

Menunjukkan apakah antarmuka IPv6 aktif atau tidak.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Nilai yang Ditampilkan
TRUE
Antarmuka IPv6 diaktifkan.
FALSE
Antarmuka IPv6 dinonaktifkan.

otIp6IsMulticastPromiscuousDiaktifkan

bool otIp6IsMulticastPromiscuousEnabled(
  otInstance *aInstance
)

Memeriksa apakah mode promiscuous multicast diaktifkan pada antarmuka Thread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Lihat juga:
otIp6SetMulticastPromiscuousEnabled

otIp6IsReceiveFilterEnabled

bool otIp6IsReceiveFilterEnabled(
  otInstance *aInstance
)

Fungsi ini menunjukkan apakah traffic kontrol Thread difilter atau tidak saat mengirimkan datagram IPv6 melalui callback yang ditentukan di otIp6SetReceiveCallback().

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
Hasil
TRUE jika traffic Kontrol thread difilter, FALSE jika tidak.
Lihat juga:
otIp6SetReceiveCallback
otIp6SetReceiveFilterEnabled

otIp6IsSlaacDiaktifkan

bool otIp6IsSlaacEnabled(
  otInstance *aInstance
)

Fungsi ini menunjukkan apakah modul SLAAC diaktifkan atau tidak.

Fungsi ini memerlukan pengaktifan fitur waktu build OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE.

Detail
Nilai yang Ditampilkan
TRUE
Modul SLAAC diaktifkan.
FALSE
Modul SLAAC dinonaktifkan.

otIp6PesanBaru

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

Alokasikan buffer pesan baru untuk mengirim pesan IPv6.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aSettings
Pointer ke setelan pesan atau NULL untuk menetapkan setelan default.
Hasil
Pointer ke buffer pesan atau NULL jika tidak ada buffer pesan yang tersedia atau parameter tidak valid.
Lihat juga:
otMessageFree

otIp6NewMessageFromBuffer

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

Alokasikan buffer pesan baru dan tulis datagram IPv6 ke buffering pesan untuk mengirim pesan IPv6.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aData
Pointer ke buffer datagram IPv6.
[in] aDataLength
Ukuran buffer datagram IPv6 yang ditunjukkan oleh aData.
[in] aSettings
Pointer ke setelan pesan atau NULL untuk menetapkan setelan default.
Hasil
Pointer ke pesan atau NULL jika header IPv6 yang salah atau buffer pesan tidak mencukupi tersedia.
Lihat juga:
otMessageFree

otIp6PrefixMatch

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

Fungsi ini menampilkan panjang pencocokan awalan (bit) untuk dua alamat IPv6.

Detail
Parameter
[in] aFirst
Pointer ke alamat IPv6 pertama.
[in] aSecond
Pointer ke alamat IPv6 kedua.
Hasil
Panjang kecocokan awalan dalam bit.

otIp6PrefixToString

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

Fungsi ini mengonversi awalan IPv6 tertentu menjadi string yang dapat dibaca manusia.

String alamat IPv6 diformat sebagai "%x:%x:%x:...[::]/plen".

Jika string yang dihasilkan tidak sesuai dengan aBuffer (dalam karakter aSize), string akan terpotong, tetapi string yang dihasilkan selalu diakhiri dengan null.

Detail
Parameter
[in] aPrefix
Pointer ke awalan IPv6 (HARUS TIDAK berupa NULL).
[out] aBuffer
Pointer ke array char untuk menghasilkan string (HARUS TIDAK berupa NULL).
[in] aSize
Ukuran aBuffer (dalam byte). Sebaiknya gunakan OT_IP6_PREFIX_STRING_SIZE.

otIp6ProtoToString

const char * otIp6ProtoToString(
  uint8_t aIpProto
)

Fungsi ini mengonversi nomor protokol IP tertentu menjadi string yang dapat dibaca manusia.

Detail
Parameter
[in] aIpProto
Nomor protokol IP (enumerasi OT_IP6_PROTO_*).
Hasil
String yang mewakili aIpProto.

otIp6RegisterMulticastListeners

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

Fungsi ini mendaftarkan Pemroses Multicast ke Router Backbone Utama.

Catatan: hanya tersedia jika OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE dan OPENTHREAD_CONFIG_COMMISSIONER_ENABLE diaktifkan)

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddresses
Array Alamat Multicast yang akan didaftarkan.
[in] aAddressNum
Jumlah Alamat Multicast yang akan didaftarkan (0 jika aAddresses NULL).
[in] aTimeout
Pointer ke nilai waktu tunggu (dalam detik) yang akan disertakan dalam MLR.req. Nilai waktu tunggu 0 akan menghapus Pemroses Multicast yang sesuai. Jika NULL, MLR.req tidak akan memiliki Timeout Tlv secara default.
[in] aCallback
Pointer ke fungsi callback.
[in] aContext
Pointer untuk konteks pengguna.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil mengirim MLR.req. aCallback akan dipanggil jika metode ini menampilkan OT_ERROR_NONE.
OT_ERROR_BUSY
Jika pendaftaran sebelumnya sedang berlangsung.
OT_ERROR_INVALID_ARGS
Jika satu atau beberapa argumen tidak valid.
OT_ERROR_INVALID_STATE
Jika perangkat tidak dalam status valid untuk mengirim MLR.req (mis. Commissioner tidak dimulai, Router Backbone Utama tidak ditemukan).
OT_ERROR_NO_BUFS
Jika buffer pesan tidak tersedia.
Lihat juga:
otIp6RegisterMulticastListenersCallback

otIp6RemoveAllUnsecurePorts

void otIp6RemoveAllUnsecurePorts(
  otInstance *aInstance
)

Fungsi ini menghapus semua port dari daftar port tidak aman yang diizinkan.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.

otIp6RemoveUnicastAddress

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

Menghapus Alamat Antarmuka Jaringan dari antarmuka Thread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Pointer ke Alamat IP.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil menghapus Alamat Antarmuka Jaringan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat internal.
OT_ERROR_NOT_FOUND
Alamat IP yang ditunjukkan oleh aAddress tidak ditemukan.

otIp6RemoveUnsecurePort

otError otIp6RemoveUnsecurePort(
  otInstance *aInstance,
  uint16_t aPort
)

Fungsi ini menghapus port dari daftar port tidak aman yang diizinkan.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aPort
Nilai port.
Nilai yang Ditampilkan
OT_ERROR_NONE
Port berhasil dihapus dari daftar port tidak aman yang diizinkan.
OT_ERROR_INVALID_ARGS
Port tidak valid (nilai 0 dicadangkan untuk penggunaan internal).
OT_ERROR_NOT_FOUND
Port tidak ditemukan dalam daftar port yang tidak aman.

otIp6ResetBorderRoutingCounters

void otIp6ResetBorderRoutingCounters(
  otInstance *aInstance
)

Mereset penghitung Border Routing.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.

otIp6SelectSourceAddress

otError otIp6SelectSourceAddress(
  otInstance *aInstance,
  otMessageInfo *aMessageInfo
)

Fungsi ini melakukan pemilihan alamat sumber OpenThread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in,out] aMessageInfo
Pointer ke informasi pesan.
Nilai yang Ditampilkan
OT_ERROR_NONE
Menemukan alamat sumber dan diisi ke mSockAddr dari aMessageInfo.
OT_ERROR_NOT_FOUND
Tidak ada alamat sumber ditemukan dan aMessageInfo tidak berubah.

otIp6Kirim

otError otIp6Send(
  otInstance *aInstance,
  otMessage *aMessage
)

Fungsi ini mengirim datagram IPv6 melalui antarmuka Thread.

Penelepon mentransfer kepemilikan aMessage saat melakukan panggilan ini. OpenThread akan membebaskan aMessage saat pemrosesan selesai, termasuk saat nilai selain OT_ERROR_NONE ditampilkan.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aMessage
Pointer ke buffer pesan yang berisi datagram IPv6.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil memproses pesan.
OT_ERROR_DROP
Pesan diformat dengan baik, tetapi tidak diproses sepenuhnya karena aturan pemrosesan paket.
OT_ERROR_NO_BUFS
Tidak dapat mengalokasikan buffer pesan yang diperlukan saat memproses datagram.
OT_ERROR_NO_ROUTE
Tidak ada rute untuk dihosting.
OT_ERROR_INVALID_SOURCE_ADDRESS
Alamat sumber tidak valid, misalnya alamat anycast atau alamat multicast.
OT_ERROR_PARSE
Terjadi kesalahan format pada header saat memproses pesan.

otIp6SetAddressCallback

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

Fungsi ini mendaftarkan callback untuk memberi tahu perubahan alamat IPv6 internal.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aCallback
Pointer ke fungsi yang dipanggil saat alamat IPv6 internal ditambahkan atau dihapus. NULL untuk menonaktifkan callback.
[in] aCallbackContext
Pointer untuk konteks khusus aplikasi.

otIp6SetDiaktifkan

otError otIp6SetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Menghadirkan antarmuka IPv6 ke atas atau ke bawah.

Panggil ini untuk mengaktifkan atau menonaktifkan komunikasi IPv6.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE untuk mengaktifkan IPv6, FALSE jika tidak.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil memunculkan antarmuka IPv6 ke atas/bawah.
OT_ERROR_INVALID_STATE
Antarmuka IPv6 tidak tersedia karena perangkat beroperasi dalam mode link mentah (hanya berlaku jika fitur OPENTHREAD_CONFIG_LINK_RAW_ENABLE diaktifkan).

otIp6SetMeshLocalIid

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

Fungsi ini menyetel IID Lokal Mesh (untuk tujuan pengujian).

Hanya tersedia jika OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE diaktifkan.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aIid
Pointer ke ID Mesh Local yang akan ditetapkan.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil menetapkan IID Lokal Mesh.
OT_ERROR_INVALID_STATE
Protokol rangkaian pesan diaktifkan.

otIp6SetMulticastPromiscuousEnabled

void otIp6SetMulticastPromiscuousEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Mengaktifkan atau menonaktifkan mode promiscuous multicast pada antarmuka Thread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE untuk mengaktifkan mode Promiscuous Multicast, FALSE jika tidak.
Lihat juga:
otIp6IsMulticastPromiscuousEnabled

otIp6SetReceiveCallback

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

Fungsi ini mendaftarkan callback untuk memberikan datagram IPv6 yang diterima.

Secara default, callback ini tidak meneruskan traffic kontrol Thread. Lihat otIp6SetReceiveFilterEnabled() untuk mengubah setelan filter traffic kontrol Thread.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aCallback
Pointer ke fungsi yang dipanggil saat datagram IPv6 diterima atau NULL untuk menonaktifkan callback.
[in] aCallbackContext
Pointer untuk konteks khusus aplikasi.
Lihat juga:
otIp6IsReceiveFilterEnabled
otIp6SetReceiveFilterEnabled

otIp6SetReceiveFilterEnabled

void otIp6SetReceiveFilterEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Fungsi ini menetapkan apakah traffic kontrol Thread difilter atau tidak saat mengirimkan datagram IPv6 melalui callback yang ditentukan di otIp6SetReceiveCallback().

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE jika traffic Kontrol thread difilter, FALSE jika tidak.
Lihat juga:
otIp6SetReceiveCallback
otIsReceiveIp6FilterEnabled

otIp6SetSlaacDiaktifkan

void otIp6SetSlaacEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Fungsi ini mengaktifkan/menonaktifkan modul SLAAC.

Fungsi ini memerlukan pengaktifan fitur waktu build OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE.

Saat modul SLAAC diaktifkan, alamat SLAAC (berdasarkan awalan pada mesh di Data Jaringan) ditambahkan ke antarmuka. Jika modul SLAAC dinonaktifkan, alamat SLAAC yang ditambahkan sebelumnya akan dihapus.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aEnabled
TRUE untuk mengaktifkan, FALSE untuk dinonaktifkan.

otIp6SetSlaacPrefixFilter

void otIp6SetSlaacPrefixFilter(
  otInstance *aInstance,
  otIp6SlaacPrefixFilter aFilter
)

Fungsi ini menetapkan pengendali filter modul SLAAC.

Fungsi ini memerlukan pengaktifan fitur waktu build OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE.

Pengendali filter dipanggil oleh modul SLAAC ketika akan menambahkan alamat SLAAC berdasarkan awalan untuk memutuskan apakah alamat harus ditambahkan atau tidak.

Pengendali filter NULL menonaktifkan pemfilteran dan memungkinkan semua alamat SLAAC ditambahkan.

Jika fungsi ini tidak dipanggil, filter default yang digunakan oleh modul SLAAC akan menjadi NULL (pemfilteran dinonaktifkan).

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aFilter
Pointer ke pengendali filter awalan SLAAC, atau NULL untuk menonaktifkan pemfilteran.

otIp6SockAddrToString

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

Fungsi ini mengonversi alamat soket IPv6 tertentu menjadi string yang dapat dibaca manusia.

String alamat soket IPv6 diformat sebagai [address]:port dengan address ditampilkan sebagai 16 nilai heksadesimal yang dipisahkan oleh : dan port adalah nomor port dalam format desimal, misalnya "[%x:%x:...:%x]:%u".

Jika string yang dihasilkan tidak sesuai dengan aBuffer (dalam karakter aSize), string akan terpotong, tetapi string yang dihasilkan selalu diakhiri dengan null.

Detail
Parameter
[in] aSockAddr
Pointer ke alamat soket IPv6 (HARUS TIDAK NULL).
[out] aBuffer
Pointer ke array char untuk menghasilkan string (HARUS TIDAK berupa NULL).
[in] aSize
Ukuran aBuffer (dalam byte). Sebaiknya gunakan OT_IP6_SOCK_ADDR_STRING_SIZE.

otIp6SubscribeMulticastAddress

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

Menyertakan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.

Instance aAddress yang diteruskan akan disalin oleh antarmuka Thread. Antarmuka Thread hanya mendukung jumlah alamat multicast yang ditambahkan secara eksternal. Lihat OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Pointer ke Alamat IP.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil berlangganan Alamat Multicast Antarmuka Jaringan.
OT_ERROR_ALREADY
Alamat multicast sudah berlangganan.
OT_ERROR_INVALID_ARGS
Alamat IP yang ditunjukkan oleh aAddress adalah alamat multicast yang tidak valid.
OT_ERROR_REJECTED
Alamat IP yang ditunjukkan oleh aAddress adalah alamat multicast internal.
OT_ERROR_NO_BUFS
Antarmuka Jaringan sudah menyimpan alamat multicast eksternal maksimum yang diizinkan.

otIp6UnsubscribeMulticastAddress

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

Berhenti berlangganan antarmuka Thread ke Alamat Multicast Antarmuka Jaringan.

Detail
Parameter
[in] aInstance
Pointer ke instance OpenThread.
[in] aAddress
Pointer ke Alamat IP.
Nilai yang Ditampilkan
OT_ERROR_NONE
Berhasil berhenti berlangganan Alamat Jaringan Multicast.
OT_ERROR_REJECTED
Alamat IP yang ditunjukkan oleh aAddress adalah alamat internal.
OT_ERROR_NOT_FOUND
Alamat IP yang ditunjukkan oleh aAddress tidak ditemukan.

Makro

OT_IP6_ADDRESS_SIZE

 OT_IP6_ADDRESS_SIZE 16

Ukuran alamat IPv6 (byte)

OT_IP6_ADDRESS_STRING_SIZE

 OT_IP6_ADDRESS_STRING_SIZE 40

Ukuran yang direkomendasikan untuk representasi string alamat IPv6.

OT_IP6_IID_SIZE

 OT_IP6_IID_SIZE 8

Ukuran ID Antarmuka IPv6 (byte)

OT_IP6_MAX_MLR_ADDRESS

 OT_IP6_MAX_MLR_ADDRESSES 15

Jumlah maksimum alamat IPv6 yang didukung oleh Pendaftaran Pemroses Multicast.

OT_IP6_PREFIX_BITSIZE

 OT_IP6_PREFIX_BITSIZE (OT_IP6_PREFIX_SIZE * 8)

Ukuran awalan IPv6 (bit)

OT_IP6_PREFIX_SIZE

 OT_IP6_PREFIX_SIZE 8

Ukuran awalan IPv6 (byte)

OT_IP6_PREFIX_STRING_SIZE

 OT_IP6_PREFIX_STRING_SIZE 45

Ukuran yang direkomendasikan untuk representasi string dari awalan IPv6.

OT_IP6_SOCK_ Automator_STRING_SIZE

 OT_IP6_SOCK_ADDR_STRING_SIZE 48

Ukuran yang direkomendasikan untuk representasi string alamat soket IPv6.

Materi

Topik Referensi API OpenThread berasal dari kode sumber, yang tersedia di GitHub. Untuk mengetahui informasi selengkapnya, atau untuk berkontribusi pada dokumentasi kami, lihat Resource.