NAT64

এই মডিউলটি বর্ডার রাউটারে NAT64 ফাংশনের জন্য ফাংশন এবং স্ট্রাকস অন্তর্ভুক্ত করে।

সারসংক্ষেপ

OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE সক্ষম হলেই এই ফাংশনগুলি উপলব্ধ৷

গণনা

otNat64DropReason {
OT_NAT64_DROP_REASON_UNKNOWN = 0,
OT_NAT64_DROP_REASON_ILLEGAL_PACKET ,
OT_NAT64_DROP_REASON_UNSUPPORTED_PROTO ,
OT_NAT64_DROP_REASON_NO_MAPPING
}
enum
প্যাকেট ড্রপ কারণ.
otNat64State {
OT_NAT64_STATE_DISABLED = 0,
OT_NAT64_STATE_NOT_RUNNING ,
OT_NAT64_STATE_IDLE ,
OT_NAT64_STATE_ACTIVE
}
enum
NAT64 এর রাজ্য।

Typedefs

otIp4Address typedef
struct otIp4Address
একটি IPv4 ঠিকানা প্রতিনিধিত্ব করে।
otIp4Cidr typedef
struct otIp4Cidr
otNat64AddressMapping typedef
NAT64 এর জন্য একটি ঠিকানা ম্যাপিং রেকর্ড প্রতিনিধিত্ব করে।
otNat64AddressMappingIterator typedef
NAT64 ঠিকানা ম্যাপিংয়ের মাধ্যমে পুনরাবৃত্তি করতে ব্যবহৃত হয়।
otNat64Counters typedef
NAT64 এর জন্য কাউন্টার প্রতিনিধিত্ব করে।
otNat64DropReason typedef
প্যাকেট ড্রপ কারণ.
otNat64ErrorCounters typedef
NAT64 প্যাকেটগুলি পরিচালনা করার সময় ত্রুটির কারণে বাদ দেওয়া প্যাকেটগুলির কাউন্টারগুলিকে প্রতিনিধিত্ব করে৷
otNat64ProtocolCounters typedef
NAT64 দ্বারা সমর্থিত প্রোটোকলগুলির জন্য কাউন্টারগুলির প্রতিনিধিত্ব করে।
otNat64ReceiveIp4Callback )(otMessage *aMessage, void *aContext) typedef
void(*
পয়েন্টার বলা হয় যখন একটি IPv4 ডেটাগ্রাম (NAT64 অনুবাদক দ্বারা অনুবাদিত) প্রাপ্ত হয়।

ভেরিয়েবল

OT_TOOL_PACKED_END

ফাংশন

otIp4AddressFromString (const char *aString, otIp4Address *aAddress)
একটি মানব-পাঠযোগ্য IPv4 ঠিকানা স্ট্রিংকে একটি বাইনারি উপস্থাপনায় রূপান্তর করে।
otIp4AddressToString (const otIp4Address *aAddress, char *aBuffer, uint16_t aSize)
void
ঠিকানাটিকে একটি স্ট্রিংয়ে রূপান্তর করে।
otIp4CidrFromString (const char *aString, otIp4Cidr *aCidr)
একটি মানব-পাঠযোগ্য IPv4 CIDR স্ট্রিংকে একটি বাইনারি উপস্থাপনায় রূপান্তর করে।
otIp4CidrToString (const otIp4Cidr *aCidr, char *aBuffer, uint16_t aSize)
void
IPv4 CIDR-কে একটি স্ট্রিং-এ রূপান্তর করে।
otIp4ExtractFromIp6Address (uint8_t aPrefixLength, const otIp6Address *aIp6Address, otIp4Address *aIp4Address)
void
RFC 6052-এ উল্লেখিত হিসাবে aIp6Address থেকে NAT64 ঠিকানা অনুবাদ সম্পাদন করে aIp4Address সেট করুন।
otIp4IsAddressEqual (const otIp4Address *aFirst, const otIp4Address *aSecond)
bool
দুটি IPv4 ঠিকানা একই কিনা তা পরীক্ষা করুন।
otIp4NewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
NAT64 অনুবাদককে একটি IPv4 বার্তা পাঠানোর জন্য একটি নতুন বার্তা বাফার বরাদ্দ করুন৷
otNat64GetCidr ( otInstance *aInstance, otIp4Cidr *aCidr)
NAT64 অনুবাদক-এ IPv4 CIDR কনফিগার করা হয়।
otNat64GetCounters ( otInstance *aInstance, otNat64ProtocolCounters *aCounters)
void
NAT64 অনুবাদক কাউন্টার পায়।
otNat64GetErrorCounters ( otInstance *aInstance, otNat64ErrorCounters *aCounters)
void
NAT64 অনুবাদক ত্রুটি কাউন্টার পায়।
otNat64GetNextAddressMapping ( otInstance *aInstance, otNat64AddressMappingIterator *aIterator, otNat64AddressMapping *aMapping)
পরবর্তী ঠিকানা ম্যাপিং তথ্য পায় (একটি পুনরাবৃত্তিকারী ব্যবহার করে)।
otNat64GetPrefixManagerState ( otInstance *aInstance)
NAT64 উপসর্গ ব্যবস্থাপকের অবস্থা পায়।
otNat64GetTranslatorState ( otInstance *aInstance)
NAT64 অনুবাদকের অবস্থা পায়।
otNat64InitAddressMappingIterator ( otInstance *aInstance, otNat64AddressMappingIterator *aIterator)
void
একটি otNat64AddressMappingIterator শুরু করে।
otNat64Send ( otInstance *aInstance, otMessage *aMessage)
একটি IPv4 ডেটাগ্রামকে একটি IPv6 ডেটাগ্রামে অনুবাদ করে এবং থ্রেড ইন্টারফেসের মাধ্যমে পাঠায়।
otNat64SetEnabled ( otInstance *aInstance, bool aEnabled)
void
NAT64 ফাংশন সক্রিয় বা নিষ্ক্রিয় করুন।
otNat64SetIp4Cidr ( otInstance *aInstance, const otIp4Cidr *aCidr)
বহির্গামী অনুবাদিত IPv4 প্যাকেটের উৎস ঠিকানা সেট করার সময় ব্যবহৃত CIDR সেট করে।
otNat64SetReceiveIp4Callback ( otInstance *aInstance, otNat64ReceiveIp4Callback aCallback, void *aContext)
void
প্রাপ্ত IPv4 ডেটাগ্রাম প্রদানের জন্য একটি কলব্যাক নিবন্ধন করে।
otNat64SynthesizeIp6Address ( otInstance *aInstance, const otIp4Address *aIp4Address, otIp6Address *aIp6Address)
পছন্দের NAT64 উপসর্গ থেকে NAT64 ঠিকানা অনুবাদ এবং RFC 6052-এ নির্দিষ্ট করা IPv4 ঠিকানা থেকে IPv6 ঠিকানা সেট করে।

কাঠামো

otIp4 ঠিকানা

একটি IPv4 ঠিকানা প্রতিনিধিত্ব করে।

otIp4Cidr

একটি IPv4 CIDR ব্লকের প্রতিনিধিত্ব করে।

otNat64AddressMapping

NAT64 এর জন্য একটি ঠিকানা ম্যাপিং রেকর্ড প্রতিনিধিত্ব করে।

otNat64AddressMappingIterator

NAT64 ঠিকানা ম্যাপিংয়ের মাধ্যমে পুনরাবৃত্তি করতে ব্যবহৃত হয়।

otNat64 কাউন্টার

NAT64 এর জন্য কাউন্টার প্রতিনিধিত্ব করে।

otNat64ErrorCounters

NAT64 প্যাকেটগুলি পরিচালনা করার সময় ত্রুটির কারণে বাদ দেওয়া প্যাকেটগুলির কাউন্টারগুলিকে প্রতিনিধিত্ব করে৷

otNat64 প্রোটোকল কাউন্টার

NAT64 দ্বারা সমর্থিত প্রোটোকলগুলির জন্য কাউন্টারগুলির প্রতিনিধিত্ব করে।

ইউনিয়ন

otIp4Address:: OT_TOOL_PACKED_FIELD

গণনা

otNat64DropReason

 otNat64DropReason

প্যাকেট ড্রপ কারণ.

বৈশিষ্ট্য
OT_NAT64_DROP_REASON_ILLEGAL_PACKET

ডেটাগ্রাম পার্স করতে ব্যর্থ হওয়ার কারণে প্যাকেট ড্রপ।

OT_NAT64_DROP_REASON_NO_MAPPING

কোনো ম্যাপিং খুঁজে না পাওয়া বা ম্যাপিং পুল শেষ হওয়ার কারণে প্যাকেট ড্রপ।

OT_NAT64_DROP_REASON_UNKNOWN

অজানা কারণে প্যাকেট ড্রপ.

OT_NAT64_DROP_REASON_UNSUPPORTED_PROTO

অসমর্থিত আইপি প্রোটোকলের কারণে প্যাকেট ড্রপ।

otNat64State

 otNat64State

NAT64 এর রাজ্য।

বৈশিষ্ট্য
OT_NAT64_STATE_ACTIVE

BR একটি NAT64 উপসর্গ প্রকাশ করছে এবং/অথবা প্যাকেট অনুবাদ করছে।

OT_NAT64_STATE_DISABLED

NAT64 নিষ্ক্রিয়।

OT_NAT64_STATE_IDLE

NAT64 সক্রিয় আছে, কিন্তু এই BR একটি সক্রিয় NAT64 BR নয়।

OT_NAT64_STATE_NOT_RUNNING

NAT64 সক্রিয় আছে, কিন্তু NAT64-এর এক বা একাধিক নির্ভরতা চলছে না।

Typedefs

otIp4 ঠিকানা

struct otIp4Address otIp4Address

একটি IPv4 ঠিকানা প্রতিনিধিত্ব করে।

otIp4Cidr

struct otIp4Cidr otIp4Cidr

otNat64AddressMapping

struct otNat64AddressMapping otNat64AddressMapping

NAT64 এর জন্য একটি ঠিকানা ম্যাপিং রেকর্ড প্রতিনিধিত্ব করে।

otNat64AddressMappingIterator

struct otNat64AddressMappingIterator otNat64AddressMappingIterator

NAT64 ঠিকানা ম্যাপিংয়ের মাধ্যমে পুনরাবৃত্তি করতে ব্যবহৃত হয়।

এই ধরনের ক্ষেত্রগুলি অস্বচ্ছ (শুধুমাত্র OpenThread কোর দ্বারা ব্যবহারের উদ্দেশ্যে) এবং তাই কলার দ্বারা অ্যাক্সেস বা ব্যবহার করা উচিত নয়।

একটি পুনরাবৃত্তিকারী ব্যবহার করার আগে, এটি অবশ্যই otNat64AddressMappingIteratorInit() ব্যবহার করে আরম্ভ করা উচিত।

otNat64 কাউন্টার

struct otNat64Counters otNat64Counters

NAT64 এর জন্য কাউন্টার প্রতিনিধিত্ব করে।

otNat64DropReason

enum otNat64DropReason otNat64DropReason

প্যাকেট ড্রপ কারণ.

otNat64ErrorCounters

struct otNat64ErrorCounters otNat64ErrorCounters

NAT64 প্যাকেটগুলি পরিচালনা করার সময় ত্রুটির কারণে বাদ দেওয়া প্যাকেটগুলির কাউন্টারগুলিকে প্রতিনিধিত্ব করে৷

otNat64 প্রোটোকল কাউন্টার

struct otNat64ProtocolCounters otNat64ProtocolCounters

NAT64 দ্বারা সমর্থিত প্রোটোকলগুলির জন্য কাউন্টারগুলির প্রতিনিধিত্ব করে।

otNat64ReceiveIp4Callback

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

পয়েন্টার বলা হয় যখন একটি IPv4 ডেটাগ্রাম (NAT64 অনুবাদক দ্বারা অনুবাদিত) প্রাপ্ত হয়।

বিস্তারিত
পরামিতি
[in] aMessage
প্রাপ্ত IPv6 ডেটাগ্রাম ধারণকারী বার্তা বাফারের একটি পয়েন্টার। এই ফাংশনটি কলব্যাকের রিসিভারের কাছে aMessage এর মালিকানা স্থানান্তর করে। বার্তাটি প্রক্রিয়া করার পরে কলব্যাকের রিসিভার দ্বারা মুক্ত করা উচিত।
[in] aContext
অ্যাপ্লিকেশন-নির্দিষ্ট প্রেক্ষাপটে একটি পয়েন্টার।

ভেরিয়েবল

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIp4Address OT_TOOL_PACKED_END

ফাংশন

otIp4AddressFromString

otError otIp4AddressFromString(
  const char *aString,
  otIp4Address *aAddress
)

একটি মানব-পাঠযোগ্য IPv4 ঠিকানা স্ট্রিংকে একটি বাইনারি উপস্থাপনায় রূপান্তর করে।

বিস্তারিত
পরামিতি
[in] aString
একটি NULL-সমাপ্ত স্ট্রিং একটি পয়েন্টার.
[out] aAddress
একটি IPv4 ঠিকানার একটি পয়েন্টার।
রিটার্ন মান
OT_ERROR_NONE
স্ট্রিংটি সফলভাবে পার্স করা হয়েছে৷
OT_ERROR_INVALID_ARGS
স্ট্রিং পার্স করতে ব্যর্থ হয়েছে.

otIp4AddressToString

void otIp4AddressToString(
  const otIp4Address *aAddress,
  char *aBuffer,
  uint16_t aSize
)

ঠিকানাটিকে একটি স্ট্রিংয়ে রূপান্তর করে।

স্ট্রিং ফরম্যাট ঠিকানায় চার বাইটের কোয়াড-ডটেড নোটেশন ব্যবহার করে (যেমন, "127.0.0.1")।

যদি ফলস্বরূপ স্ট্রিংটি aBuffer এ মাপসই না হয় (এর aSize অক্ষরের মধ্যে), স্ট্রিংটি কাটা হবে তবে আউটপুট করা স্ট্রিংটি সর্বদা নাল-টার্মিনেট করা হয়।

বিস্তারিত
পরামিতি
[in] aAddress
একটি IPv4 ঠিকানার একটি পয়েন্টার (শূন্য হতে হবে না)।
[out] aBuffer
স্ট্রিং আউটপুট করার জন্য একটি চার অ্যারের একটি পয়েন্টার ( nullptr হতে হবে না)।
[in] aSize
aBuffer এর আকার (বাইটে)।

otIp4CidrFromString

otError otIp4CidrFromString(
  const char *aString,
  otIp4Cidr *aCidr
)

একটি মানব-পাঠযোগ্য IPv4 CIDR স্ট্রিংকে একটি বাইনারি উপস্থাপনায় রূপান্তর করে।

বিস্তারিত
পরামিতি
[in] aString
একটি NULL-সমাপ্ত স্ট্রিং একটি পয়েন্টার.
[out] aCidr
একটি IPv4 CIDR-এর একটি পয়েন্টার৷
রিটার্ন মান
OT_ERROR_NONE
স্ট্রিংটি সফলভাবে পার্স করা হয়েছে৷
OT_ERROR_INVALID_ARGS
স্ট্রিং পার্স করতে ব্যর্থ হয়েছে.

otIp4CidrToString

void otIp4CidrToString(
  const otIp4Cidr *aCidr,
  char *aBuffer,
  uint16_t aSize
)

IPv4 CIDR-কে একটি স্ট্রিং-এ রূপান্তর করে।

স্ট্রিং বিন্যাসটি উপসর্গের দৈর্ঘ্য (যেমন, "127.0.0.1/32") ঠিকানায় চার বাইটের চতুর্ভুজ-বিন্দুযুক্ত স্বরলিপি ব্যবহার করে।

যদি ফলস্বরূপ স্ট্রিংটি aBuffer এ মাপসই না হয় (এর aSize অক্ষরের মধ্যে), স্ট্রিংটি কাটা হবে তবে আউটপুট করা স্ট্রিংটি সর্বদা নাল-টার্মিনেট করা হয়।

বিস্তারিত
পরামিতি
[in] aCidr
একটি IPv4 CIDR-এর একটি পয়েন্টার (NULL হওয়া উচিত নয়)৷
[out] aBuffer
স্ট্রিং আউটপুট করার জন্য একটি চার অ্যারের একটি পয়েন্টার ( nullptr হতে হবে না)।
[in] aSize
aBuffer এর আকার (বাইটে)।

otIp4ExtractFromIp6Address

void otIp4ExtractFromIp6Address(
  uint8_t aPrefixLength,
  const otIp6Address *aIp6Address,
  otIp4Address *aIp4Address
)

RFC 6052-এ উল্লেখিত হিসাবে aIp6Address থেকে NAT64 ঠিকানা অনুবাদ সম্পাদন করে aIp4Address সেট করুন।

NAT64 aPrefixLength অবশ্যই নিম্নলিখিত মানগুলির মধ্যে একটি হতে হবে: 32, 40, 48, 56, 64, বা 96, অন্যথায় এই পদ্ধতির আচরণ অনির্ধারিত।

বিস্তারিত
পরামিতি
[in] aPrefixLength
IPv4/IPv6 অনুবাদের জন্য ব্যবহার করা উপসর্গের দৈর্ঘ্য।
[in] aIp6Address
একটি IPv6 ঠিকানার একটি পয়েন্টার।
[out] aIp4Address
IPv4 ঠিকানা আউটপুট করার জন্য একটি পয়েন্টার।

otIp4IsAddressEqual

bool otIp4IsAddressEqual(
  const otIp4Address *aFirst,
  const otIp4Address *aSecond
)

দুটি IPv4 ঠিকানা একই কিনা তা পরীক্ষা করুন।

বিস্তারিত
পরামিতি
[in] aFirst
তুলনা করার জন্য প্রথম IPv4 ঠিকানার একটি পয়েন্টার।
[in] aSecond
তুলনা করার জন্য দ্বিতীয় IPv4 ঠিকানার একটি পয়েন্টার।
রিটার্ন মান
TRUE
দুটি IPv4 ঠিকানা একই।
FALSE
দুটি IPv4 ঠিকানা একই নয়।

otIp4NewMessage

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

NAT64 অনুবাদককে একটি IPv4 বার্তা পাঠানোর জন্য একটি নতুন বার্তা বাফার বরাদ্দ করুন৷

এই ফাংশন দ্বারা বরাদ্দ করা বার্তা বাফারগুলিতে 20 বাইট (IPv6 হেডার এবং IPv4 হেডারের আকারের মধ্যে পার্থক্য) সংরক্ষিত থাকবে।

OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম হলে উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in] aSettings
বার্তা সেটিংসে একটি পয়েন্টার বা ডিফল্ট সেটিংস সেট করতে NULL৷
রিটার্নস
কোনো বার্তা বাফার উপলব্ধ না হলে বা পরামিতি অবৈধ হলে বার্তা বাফার বা NULL-এর একটি পয়েন্টার৷
আরো দেখুন:
otNat64 পাঠান

otNat64GetCidr

otError otNat64GetCidr(
  otInstance *aInstance,
  otIp4Cidr *aCidr
)

NAT64 অনুবাদক-এ IPv4 CIDR কনফিগার করা হয়।

OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম হলে উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[out] aCidr
একটি otIp4Cidr- এর একটি পয়েন্টার। যেখানে সিআইডিআর পূরণ করা হবে।

otNat64GetCounters

void otNat64GetCounters(
  otInstance *aInstance,
  otNat64ProtocolCounters *aCounters
)

NAT64 অনুবাদক কাউন্টার পায়।

উদাহরণ শুরু হওয়ার পর থেকে কাউন্টারটি গণনা করা হয়।

OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম হলে উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[out] aCounters
একটি otNat64Counters এর একটি পয়েন্টার যেখানে NAT64 অনুবাদকের কাউন্টার স্থাপন করা হবে।

otNat64GetErrorCounters

void otNat64GetErrorCounters(
  otInstance *aInstance,
  otNat64ErrorCounters *aCounters
)

NAT64 অনুবাদক ত্রুটি কাউন্টার পায়।

ওপেন থ্রেড ইনস্ট্যান্স আরম্ভ হলে কাউন্টারগুলিকে শূন্য করা হয়।

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[out] aCounters
একটি otNat64Counters এর একটি পয়েন্টার যেখানে NAT64 অনুবাদকের কাউন্টার স্থাপন করা হবে।

otNat64GetNextAddressMapping

otError otNat64GetNextAddressMapping(
  otInstance *aInstance,
  otNat64AddressMappingIterator *aIterator,
  otNat64AddressMapping *aMapping
)

পরবর্তী ঠিকানা ম্যাপিং তথ্য পায় (একটি পুনরাবৃত্তিকারী ব্যবহার করে)।

OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম হলে উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in,out] aIterator
পুনরাবৃত্তিকারী একটি নির্দেশক. সফল হলে পুনরাবৃত্তিকারী পরবর্তী NAT64 ঠিকানা ম্যাপিং রেকর্ডে নির্দেশ করতে আপডেট করা হবে। প্রথম এন্ট্রি পেতে পুনরাবৃত্তিকারীকে OT_NAT64_ADDRESS_MAPPING_ITERATOR_INIT এ সেট করা উচিত।
[out] aMapping
একটি otNat64AddressMapping এর একটি পয়েন্টার যেখানে পরবর্তী NAT64 ঠিকানা ম্যাপিং রেকর্ডের তথ্য রাখা হয় (সফলতার উপর)।
রিটার্ন মান
OT_ERROR_NONE
পরবর্তী NAT64 ঠিকানা ম্যাপিং তথ্য সফলভাবে পাওয়া গেছে ( aMapping সফলভাবে আপডেট করা হয়েছে)।
OT_ERROR_NOT_FOUND
পরবর্তী NAT64 ঠিকানা ম্যাপিং তথ্য পাওয়া যায়নি।

otNat64GetPrefixManagerState

otNat64State otNat64GetPrefixManagerState(
  otInstance *aInstance
)

NAT64 উপসর্গ ব্যবস্থাপকের অবস্থা পায়।

OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE সক্ষম হলে উপলব্ধ।

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
রিটার্ন মান
OT_NAT64_STATE_DISABLED
NAT64 প্রিফিক্স ম্যানেজার অক্ষম করা হয়েছে।
OT_NAT64_STATE_NOT_RUNNING
NAT64 প্রিফিক্স ম্যানেজার সক্রিয় আছে, কিন্তু চলছে না (কারণ রাউটিং ম্যানেজার চলছে না)।
OT_NAT64_STATE_IDLE
NAT64 প্রিফিক্স ম্যানেজার সক্রিয় আছে, কিন্তু NAT64 উপসর্গ প্রকাশ করছে না। সাধারণত যখন অন্য বর্ডার রাউটার থাকে তখন উচ্চ অগ্রাধিকার সহ NAT64 উপসর্গ প্রকাশ করে।
OT_NAT64_STATE_ACTIVE
NAT64 প্রিফিক্স ম্যানেজার সক্রিয় করা হয়েছে, এবং থ্রেড নেটওয়ার্কে NAT64 উপসর্গ প্রকাশ করছে।

otNat64GetTranslatorState

otNat64State otNat64GetTranslatorState(
  otInstance *aInstance
)

NAT64 অনুবাদকের অবস্থা পায়।

OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম হলে উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
রিটার্ন মান
OT_NAT64_STATE_DISABLED
NAT64 অনুবাদক নিষ্ক্রিয়।
OT_NAT64_STATE_NOT_RUNNING
NAT64 অনুবাদক সক্ষম, কিন্তু অনুবাদক একটি বৈধ NAT64 উপসর্গ এবং একটি CIDR দিয়ে কনফিগার করা হয়নি৷
OT_NAT64_STATE_ACTIVE
NAT64 অনুবাদক সক্রিয় করা হয়েছে, এবং প্যাকেট অনুবাদ করছে।

otNat64InitAddressMappingIterator

void otNat64InitAddressMappingIterator(
  otInstance *aInstance,
  otNat64AddressMappingIterator *aIterator
)

একটি otNat64AddressMappingIterator শুরু করে।

একটি পুনরাবৃত্ত ব্যবহার করার আগে এটি অবশ্যই শুরু করতে হবে।

ম্যাপিং তথ্যের শুরু থেকে পুনরায় চালু করার জন্য একটি পুনরাবৃত্তিকারীকে আবার শুরু করা যেতে পারে।

বিস্তারিত
পরামিতি
[in] aInstance
OpenThread উদাহরণ.
[out] aIterator
আরম্ভ করার জন্য পুনরাবৃত্তিকারীর একটি পয়েন্টার।

otNat64 পাঠান

otError otNat64Send(
  otInstance *aInstance,
  otMessage *aMessage
)

একটি IPv4 ডেটাগ্রামকে একটি IPv6 ডেটাগ্রামে অনুবাদ করে এবং থ্রেড ইন্টারফেসের মাধ্যমে পাঠায়।

এই কল করার সময় কলার aMessage এর মালিকানা স্থানান্তর করে। প্রক্রিয়াকরণ সম্পূর্ণ হলে OpenThread aMessage মুক্ত করবে, যখন OT_ERROR_NONE ছাড়া অন্য কোনো মান ফেরত দেওয়া হয়।

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in] aMessage
IPv4 ডেটাগ্রাম ধারণকারী বার্তা বাফারের একটি পয়েন্টার।
রিটার্ন মান
OT_ERROR_NONE
বার্তাটি সফলভাবে প্রক্রিয়া করা হয়েছে৷
OT_ERROR_DROP
বার্তাটি সুগঠিত ছিল কিন্তু প্যাকেট প্রক্রিয়াকরণ নিয়মের কারণে সম্পূর্ণরূপে প্রক্রিয়া করা হয়নি।
OT_ERROR_NO_BUFS
ডেটাগ্রাম প্রক্রিয়া করার সময় প্রয়োজনীয় বার্তা বাফার বরাদ্দ করা যায়নি।
OT_ERROR_NO_ROUTE
কোন রুট হোস্ট করার জন্য.
OT_ERROR_INVALID_SOURCE_ADDRESS
উত্স ঠিকানাটি অবৈধ, যেমন একটি যেকোনকাস্ট ঠিকানা বা একটি মাল্টিকাস্ট ঠিকানা৷
OT_ERROR_PARSE
বার্তাটি প্রক্রিয়া করার সময় একটি বিকৃত হেডারের সম্মুখীন হয়েছে৷

otNat64Set সক্ষম

void otNat64SetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

NAT64 ফাংশন সক্রিয় বা নিষ্ক্রিয় করুন।

দ্রষ্টব্য: এর মধ্যে রয়েছে NAT64 অনুবাদক (যখন OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্রিয় থাকে) এবং NAT64 উপসর্গ ব্যবস্থাপক (যখন OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE সক্রিয় থাকে)।

যখন OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম করা হয়, তখন অনুবাদকের ম্যাপিং টেবিলটিকে সত্যিকারে নিষ্ক্রিয় করে সেট করা হয়।

OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE বা OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE সক্ষম হলে উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in] aEnabled
NAT64 ফাংশন সক্রিয়/অক্ষম করার জন্য একটি বুলিয়ান
আরো দেখুন:
otNat64GetTranslatorState
otNat64GetPrefixManagerState

otNat64SetIp4Cidr

otError otNat64SetIp4Cidr(
  otInstance *aInstance,
  const otIp4Cidr *aCidr
)

বহির্গামী অনুবাদিত IPv4 প্যাকেটের উৎস ঠিকানা সেট করার সময় ব্যবহৃত CIDR সেট করে।

শুধুমাত্র OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE সক্ষম হলেই উপলব্ধ৷

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in] aCidr
NAT64-এর জন্য IPv4 CIDR ব্লকের জন্য একটি otIp4Cidr- এর একটি পয়েন্টার।
রিটার্ন মান
OT_ERROR_INVALID_ARGS
প্রদত্ত CIDR NAT64-এর জন্য বৈধ IPv4 CIDR নয়৷
OT_ERROR_NONE
NAT64-এর জন্য সফলভাবে CIDR সেট করা হয়েছে।
আরো দেখুন:
otBorderRouterSend
#BorderRouterSetReceiveCallback

otNat64SetReceiveIp4Callback

void otNat64SetReceiveIp4Callback(
  otInstance *aInstance,
  otNat64ReceiveIp4Callback aCallback,
  void *aContext
)

প্রাপ্ত IPv4 ডেটাগ্রাম প্রদানের জন্য একটি কলব্যাক নিবন্ধন করে।

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in] aCallback
একটি ফাংশনের একটি পয়েন্টার যা একটি IPv4 ডেটাগ্রাম প্রাপ্ত হলে বলা হয় বা কলব্যাক নিষ্ক্রিয় করতে NULL।
[in] aContext
অ্যাপ্লিকেশন-নির্দিষ্ট প্রেক্ষাপটে একটি পয়েন্টার।

otNat64SynthesizeIp6Address

otError otNat64SynthesizeIp6Address(
  otInstance *aInstance,
  const otIp4Address *aIp4Address,
  otIp6Address *aIp6Address
)

পছন্দের NAT64 উপসর্গ থেকে NAT64 ঠিকানা অনুবাদ এবং RFC 6052-এ নির্দিষ্ট করা IPv4 ঠিকানা থেকে IPv6 ঠিকানা সেট করে।

বিস্তারিত
পরামিতি
[in] aInstance
একটি OpenThread উদাহরণের একটি পয়েন্টার.
[in] aIp4Address
IPv6 এ অনুবাদ করার জন্য IPv4 ঠিকানার একটি পয়েন্টার।
[out] aIp6Address
সংশ্লেষিত IPv6 ঠিকানার একটি পয়েন্টার।
রিটার্নস
OT_ERROR_NONE সফলভাবে NAT64 উপসর্গ এবং IPv4 ঠিকানা থেকে IPv6 ঠিকানা সংশ্লেষিত হয়েছে৷
রিটার্নস
OT_ERROR_INVALID_STATE নেটওয়ার্ক ডেটাতে কোনো বৈধ NAT64 উপসর্গ নেই৷

ম্যাক্রো

OT_IP4_ADDRESS_SIZE

 OT_IP4_ADDRESS_SIZE 4

একটি IPv4 ঠিকানার আকার (বাইট)

OT_IP4_ADDRESS_STRING_SIZE

 OT_IP4_ADDRESS_STRING_SIZE 17

দৈর্ঘ্য 000.000.000.000 প্লাস একটি প্রত্যয় NUL।

OT_IP4_CIDR_STRING_SIZE

 OT_IP4_CIDR_STRING_SIZE 20

দৈর্ঘ্য 000.000.000.000/00 প্লাস একটি প্রত্যয় NUL।

সম্পদ

OpenThread API রেফারেন্স বিষয়গুলি উৎস কোড থেকে উদ্ভূত হয়, যা GitHub- এ উপলব্ধ। আরও তথ্যের জন্য, বা আমাদের ডকুমেন্টেশনে অবদান রাখতে, সম্পদ দেখুন।