बॉर्डर राऊटर

इस मॉड्यूल में OpenThread Border राऊटर की मदद से लोकल नेटवर्क डेटा को मैनेज करने के लिए फ़ंक्शन शामिल किए गए हैं.

खास जानकारी

गतिविधियां

otBorderRouterAddOnMeshPrefix(otInstance *aInstance, const otBorderRouterConfig *aConfig)
स्थानीय नेटवर्क डेटा में बॉर्डर राऊटर कॉन्फ़िगरेशन जोड़ें.
otBorderRouterAddRoute(otInstance *aInstance, const otExternalRouteConfig *aConfig)
स्थानीय नेटवर्क डेटा में एक बाहरी रूट कॉन्फ़िगरेशन जोड़ें.
otBorderRouterGetNetData(otInstance *aInstance, bool aStable, uint8_t *aData, uint8_t *aDataLength)
इस तरीके से लोकल थ्रेड नेटवर्क डेटा की पूरी या स्थिर कॉपी मिलती है.
otBorderRouterGetNextOnMeshPrefix(otInstance *aInstance, otNetworkDataIterator *aIterator, otBorderRouterConfig *aConfig)
इस फ़ंक्शन को लोकल नेटवर्क डेटा में अगला मेश प्रीफ़िक्स मिलता है.
otBorderRouterGetNextRoute(otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
यह फ़ंक्शन लोकल नेटवर्क डेटा में अगला बाहरी रूट ले लेता है.
otBorderRouterRegister(otInstance *aInstance)
लीडर के साथ तुरंत स्थानीय नेटवर्क डेटा को रजिस्टर करें.
otBorderRouterRemoveOnMeshPrefix(otInstance *aInstance, const otIp6Prefix *aPrefix)
लोकल नेटवर्क डेटा से बॉर्डर राऊटर कॉन्फ़िगरेशन हटाएं.
otBorderRouterRemoveRoute(otInstance *aInstance, const otIp6Prefix *aPrefix)
लोकल नेटवर्क डेटा से किसी बाहरी रूट कॉन्फ़िगरेशन को हटाएं.
otBorderRoutingGetNat64Prefix(otInstance *aInstance, otIp6Prefix *aPrefix)
यह फ़ंक्शन लोकल NAT64 प्रीफ़िक्स लौटाता है.
otBorderRoutingGetOmrPrefix(otInstance *aInstance, otIp6Prefix *aPrefix)
यह तरीका ऑफ़-मेश-रूटेबल (OMR) प्रीफ़िक्स लौटाता है.
otBorderRoutingGetOnLinkPrefix(otInstance *aInstance, otIp6Prefix *aPrefix)
यह तरीका आस-पास के इंफ़्रास्ट्रक्चर लिंक के लिए ऑन-लिंक प्रीफ़िक्स दिखाता है.
otBorderRoutingInit(otInstance *aInstance, uint32_t aInfraIfIndex, bool aInfraIfIsRunning)
यह तरीका, दिए गए इंफ़्रास्ट्रक्चर इंटरफ़ेस पर बॉर्डर रूटिंग मैनेजर को शुरू करता है.
otBorderRoutingSetEnabled(otInstance *aInstance, bool aEnabled)
यह तरीका, बॉर्डर रूटिंग मैनेजर को चालू/बंद कर देता है.

गतिविधियां

otBorderRouterAddOnMashPrefix

otError otBorderRouterAddOnMeshPrefix(
  otInstance *aInstance,
  const otBorderRouterConfig *aConfig
)

स्थानीय नेटवर्क डेटा में बॉर्डर राऊटर कॉन्फ़िगरेशन जोड़ें.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aConfig
बॉर्डर राऊटर कॉन्फ़िगरेशन के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
स्थानीय नेटवर्क डेटा में कॉन्फ़िगरेशन जोड़ा गया.
OT_ERROR_INVALID_ARGS
एक या उससे ज़्यादा कॉन्फ़िगरेशन पैरामीटर अमान्य थे.
OT_ERROR_NO_BUFS
स्थानीय नेटवर्क डेटा में कॉन्फ़िगरेशन जोड़ने के लिए काफ़ी स्थान उपलब्ध नहीं है.
यह भी देखें:
otBorderRouterRemoveOnMashPrefix
otBorderRouterregister

otBorderRouterAddRoute

otError otBorderRouterAddRoute(
  otInstance *aInstance,
  const otExternalRouteConfig *aConfig
)

स्थानीय नेटवर्क डेटा में एक बाहरी रूट कॉन्फ़िगरेशन जोड़ें.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aConfig
बाहरी रूट कॉन्फ़िगरेशन के लिए एक पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
स्थानीय नेटवर्क डेटा में कॉन्फ़िगरेशन जोड़ा गया.
OT_ERROR_INVALID_ARGS
एक या उससे ज़्यादा कॉन्फ़िगरेशन पैरामीटर अमान्य थे.
OT_ERROR_NO_BUFS
स्थानीय नेटवर्क डेटा में कॉन्फ़िगरेशन जोड़ने के लिए काफ़ी स्थान उपलब्ध नहीं है.
यह भी देखें:
otBorderRouterRemoveRoute
otBorderRouterregister

otBorderRouterGetNetData

otError otBorderRouterGetNetData(
  otInstance *aInstance,
  bool aStable,
  uint8_t *aData,
  uint8_t *aDataLength
)

इस तरीके से लोकल थ्रेड नेटवर्क डेटा की पूरी या स्थिर कॉपी मिलती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aStable
स्थिर वर्शन को कॉपी करते समय TRUE, पूरे वर्शन को कॉपी करते समय FALSE.
[out] aData
डेटा बफ़र के लिए एक पॉइंटर.
[in,out] aDataLength
एंट्री पर, डेटा बफ़र का साइज़ aData की ओर इशारा करता है. बाहर निकलने पर, कॉपी किए गए बाइट की संख्या.

otBorderRouterGetNextOnMashPrefix

otError otBorderRouterGetNextOnMeshPrefix(
  otInstance *aInstance,
  otNetworkDataIterator *aIterator,
  otBorderRouterConfig *aConfig
)

इस फ़ंक्शन को लोकल नेटवर्क डेटा में अगला मेश प्रीफ़िक्स मिलता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in,out] aIterator
नेटवर्क डेटा को दोहराने वाली सुविधा के बारे में बताने वाला पॉइंटर. पहली बार मेश एंट्री पाने के लिए, इसे OT_Network_DATA_ITERATOR_INIT पर सेट करना चाहिए.
[out] aConfig
मेश प्रीफ़िक्स की जानकारी का पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
मेश से शुरू होने वाला अगला प्रीफ़िक्स मिला है.
OT_ERROR_NOT_FOUND
थ्रेड नेटवर्क डेटा में, बाद का कोई भी मेश प्रीफ़िक्स मौजूद नहीं है.

otBorderRouterGetNextRoute

otError otBorderRouterGetNextRoute(
  otInstance *aInstance,
  otNetworkDataIterator *aIterator,
  otExternalRouteConfig *aConfig
)

यह फ़ंक्शन लोकल नेटवर्क डेटा में अगला बाहरी रूट ले लेता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in,out] aIterator
नेटवर्क डेटा को दोहराने वाली सुविधा के बारे में बताने वाला पॉइंटर. पहली बाहरी मार्ग प्रविष्टि पाने के लिए उसे OT_network_DATA_ITERATOR_INIT पर सेट किया जाना चाहिए.
[out] aConfig
बाहरी रास्ते की जानकारी देने वाला एक पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
अगला बाहरी रास्ता मिल गया.
OT_ERROR_NOT_FOUND
थ्रेड नेटवर्क डेटा में, इसके बाद कोई भी बाहरी रूट एंट्री मौजूद नहीं है.

otBorderRouterरजिस्टर

otError otBorderRouterRegister(
  otInstance *aInstance
)

लीडर के साथ तुरंत स्थानीय नेटवर्क डेटा को रजिस्टर करें.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
डिलीवरी के लिए सर्वर डेटा अनुरोध मैसेज को कतार में रखा गया.
यह भी देखें:
otBorderRouterAddOnMashPrefix
otBorderRouterRemoveOnMashPrefix
otBorderRouterAddRoute
otBorderRouterRemoveRoute

otBorderRouterRemoveOnMashPrefix

otError otBorderRouterRemoveOnMeshPrefix(
  otInstance *aInstance,
  const otIp6Prefix *aPrefix
)

लोकल नेटवर्क डेटा से बॉर्डर राऊटर कॉन्फ़िगरेशन हटाएं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aPrefix
IPv6 प्रीफ़िक्स का एक पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
स्थानीय नेटवर्क डेटा से कॉन्फ़िगरेशन हटाया गया.
OT_ERROR_NOT_FOUND
बॉर्डर राऊटर की एंट्री नहीं मिली.
यह भी देखें:
otBorderRouterAddOnMashPrefix
otBorderRouterregister

otBorderRouterRemoveRoute

otError otBorderRouterRemoveRoute(
  otInstance *aInstance,
  const otIp6Prefix *aPrefix
)

लोकल नेटवर्क डेटा से किसी बाहरी रूट कॉन्फ़िगरेशन को हटाएं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aPrefix
IPv6 प्रीफ़िक्स का एक पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
स्थानीय नेटवर्क डेटा से कॉन्फ़िगरेशन हटाया गया.
OT_ERROR_NOT_FOUND
बॉर्डर राऊटर की एंट्री नहीं मिली.
यह भी देखें:
otBorderRouterAddRoute
otBorderRouterregister

otBorderRoutingGetNat64Prefix

otError otBorderRoutingGetNat64Prefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

यह फ़ंक्शन लोकल NAT64 प्रीफ़िक्स लौटाता है.

हो सकता है कि यह प्रीफ़िक्स थ्रेड नेटवर्क में न दिखाया जाए.

यह फ़ंक्शन सिर्फ़ तब उपलब्ध होता है, जब OPENTHREAD_CONFIG_BORDER_ROUTING_NAT64_ENABLE चालू हो.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[out] aPrefix
वह पॉइंटर जहां प्रीफ़िक्स आउटपुट देगा.
रिटर्न वैल्यू
OT_ERROR_INVALID_STATE
बॉर्डर रूटिंग मैनेजर अभी तक प्रारंभ नहीं किया गया है.
OT_ERROR_NONE
NAT64 प्रीफ़िक्स सफलतापूर्वक मिला.

otBorderRoutingGetOmrPrefix

otError otBorderRoutingGetOmrPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

यह तरीका ऑफ़-मेश-रूटेबल (OMR) प्रीफ़िक्स लौटाता है.

अगर पहले से कोई OMR प्रीफ़िक्स नहीं है, तो बिना क्रम के जनरेट किया गया 64-बिट प्रीफ़िक्स, थ्रेड नेटवर्क में प्रकाशित हो जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[out] aPrefix
वह पॉइंटर जहां प्रीफ़िक्स आउटपुट देगा.
रिटर्न वैल्यू
OT_ERROR_INVALID_STATE
बॉर्डर रूटिंग मैनेजर अभी तक प्रारंभ नहीं किया गया है.
OT_ERROR_NONE
ओएमआर प्रीफ़िक्स मिला.

otBorder रूटिंगGetOnLinkPrefix

otError otBorderRoutingGetOnLinkPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

यह तरीका आस-पास के इंफ़्रास्ट्रक्चर लिंक के लिए ऑन-लिंक प्रीफ़िक्स दिखाता है.

अगर लिंक पर कोई ऐसा इस्तेमाल नहीं किया जा सकता जो लिंक करने लायक पहले से इस्तेमाल हो रहा हो, तो इन्फ़्रास्ट्रक्चर लिंक पर, बिना क्रम के जनरेट किए गए 64-बिट प्रीफ़िक्स का विज्ञापन दिया जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[out] aPrefix
वह पॉइंटर जहां प्रीफ़िक्स आउटपुट देगा.
रिटर्न वैल्यू
OT_ERROR_INVALID_STATE
बॉर्डर रूटिंग मैनेजर अभी तक प्रारंभ नहीं किया गया है.
OT_ERROR_NONE
लिंक का प्रीफ़िक्स सफलतापूर्वक मिला.

otBorderRoutingInit

otError otBorderRoutingInit(
  otInstance *aInstance,
  uint32_t aInfraIfIndex,
  bool aInfraIfIsRunning
)

यह तरीका, दिए गए इंफ़्रास्ट्रक्चर इंटरफ़ेस पर बॉर्डर रूटिंग मैनेजर को शुरू करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aInfraIfIndex
इंफ़्रास्ट्रक्चर इंटरफ़ेस इंडेक्स.
[in] aInfraIfIsRunning
एक बूलियन जो बताता है कि इंफ़्रास्ट्रक्चर इंटरफ़ेस चल रहा है या नहीं.
रिटर्न वैल्यू
OT_ERROR_NONE
दी गई संरचना पर बॉर्डर रूटिंग मैनेजर सफलतापूर्वक प्रारंभ किया गया.
OT_ERROR_INVALID_STATE
बॉर्डर रूटिंग मैनेजर पहले से ही प्रारंभ कर दिया गया है.
OT_ERROR_INVALID_ARGS
इंफ़्रास्ट्रक्चर इंटरफ़ेस का इंडेक्स मान्य नहीं है.
OT_ERROR_FAILED
अंदरूनी गड़बड़ी. आम तौर पर, रैंडम प्रीफ़िक्स जनरेट न कर पाने की वजह से होता है.
यह भी देखें:
otPlatInfraIfStateChanged.

otBorderरूट सेटसेट

otError otBorderRoutingSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

यह तरीका, बॉर्डर रूटिंग मैनेजर को चालू/बंद कर देता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए एक पॉइंटर.
[in] aEnabled
रूटिंग मैनेजर को सक्षम/अक्षम करने के लिए एक बूलियन.
रिटर्न वैल्यू
OT_ERROR_INVALID_STATE
बॉर्डर रूटिंग मैनेजर अभी तक प्रारंभ नहीं किया गया है.
OT_ERROR_NONE
बॉर्डर रूटिंग मैनेजर को सफलतापूर्वक सक्षम/अक्षम किया गया.

संसाधन

OpenThread API रेफ़रंस विषय, स्रोत कोड से आते हैं, जो GitHub पर उपलब्ध है. ज़्यादा जानकारी पाने या हमारे दस्तावेज़ में योगदान देने के लिए, संसाधन देखें.