التفويض على الإنترنت

الاطّلاع على المصدر على GitHub

المفوَّض والانضمام

يتطلّب التفويض توفّر جهاز واحد يتضمّن دور المفوَّض وجهازًا واحدًا. بدور "الانضمام". إنّ المفوَّض هو جهاز Thread في أو شبكة Thread الحالية أو جهاز خارجي غير متصل بشبكة Thread (مثل الهاتف المحمول) الذي يؤدي دور المفوض. أداة الانضمام هو الجهاز يريد الانضمام إلى شبكة Thread.

يتم استخدام مفوض سلاسل المحادثات لمصادقة جهاز على الشبكة. يفعل لا يملكون بيانات اعتماد شبكة Thread أو لا يملكون بيانات اعتمادها، مثل بيانات الشبكة المفتاح.

يتناول هذا الدليل التفويض الأساسي على الشبكة المتداخلة بدون مفوَّض خارجي. أو الحدود Router. لمعرفة كيفية الاستعانة بمفوّض خارجي، يُرجى الاطّلاع على مقالة قسم مفوَّض خارجي. جارٍ تشغيل سلاسل المحادثات.

للحصول على مثال على التفويض باستخدام أجهزة افتراضية، اطّلِع على الدرس التطبيقي حول ترميز محاكاة OpenThread:

تفعيل الأدوار

لتفعيل دورَي "المفوض" و"المنضم"، استخدم خيارات cmake التالية:

Option الوصف
-DOT_COMMISSIONER=ON تفعيل دور المفوّض
-DOT_JOINER=ON تفعيل دور "الانضمام"

على سبيل المثال، لإنشاء منصة CC2538 كمثال للاستخدام كأداة الانضمام فقط:

./script/build -DOT_JOINER=ON

اضبط فلاش كل برنامج ثنائي على الجهاز المطلوب. يعمل أحد الأجهزة كمفوّض، والآخر كالانضمام.

يمكن العثور على تعليمات محددة حول إنشاء ووميض الأنظمة الأساسية المتوافقة في مستودع OpenThread لكل نظام أساسي. يُرجى الاطّلاع على مؤسسة OpenThread GitHub للعثور على المستودع.

إنشاء شبكة

أنشئ شبكة على الجهاز الذي يعمل كمفوض:

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

انتظِر بضع ثوانٍ وتأكَّد من أنّ الجهاز أصبح قائد سلسلة المحادثات:

state
leader
Done

بدء دور المفوّض

على ذلك الجهاز نفسه، ابدأ دور المفوّض:

commissioner start
Done

يمكنك استخدام حرف البدل * للسماح لأي أداة ربط تضم بيانات اعتماد الانضمام المحددة عمولة على الشبكة. تُستخدم بيانات اعتماد الانضمام (بالإضافة إلى رقم تعريف PAN الموسَّع واسم الشبكة) لإنشاء "المفتاح الذي تمت مشاركته مسبقًا" للجهاز (PSKd). يتم بعد ذلك استخدام PSKd لمصادقة جهاز أثناء سلسلة Thread. التشغيل. يجب أن تكون "بيانات اعتماد الانضمام" فريدة لكل جهاز.

commissioner joiner add * J01NME
Done

التقييد برابط محدّد

لتقييد التشغيل على جهاز Joiner معيّن، استخدِم eui64 وهي مواصفات IEEE EUI-64 الصادرة عن الشركة المصنعة للجهاز.

على الجهاز الذي يعمل كأداة الانضمام، احصل على EUI-64:

eui64
2f57d222545271f1
Done

استخدِم هذه القيمة بدلاً من حرف البدل * في الأمر commissioner joiner على الجهاز المفوَّض:

commissioner joiner add 2f57d222545271f1 J01NME
Done

بدء دور "الانضمام"

على الجهاز الذي يعمل كأداة الانضمام، عليك إجراء إعادة ضبط على الإعدادات الأصلية، ثم تفعيل دور المنضم بنفس "بيانات اعتماد الانضمام" المحددة في المفوّض:

factoryreset
ifconfig up
Done
joiner start J01NME
Done

يُرجى الانتظار بضع ثوانٍ للتأكيد:

Join success!

تمت مصادقة جهاز الانضمام بنجاح مع المفوَّض. وحصلنا على بيانات اعتماد Thread Network.

بدء سلسلة المحادثات الآن على جهاز الانضمام:

thread start
Done

التحقق من المصادقة

التحقُّق من الحالة على جهاز Joiner للتحقُّق من انضمامه إلى الجهاز الشبكة. وخلال دقيقتين، ستنتقل الحالة من جهاز فرعي إلى جهاز التوجيه:

state
child
Done
...
state
router
Done