כדי להפעיל עמלות צריך מכשיר אחד עם תפקיד 'נציב' ומכשיר אחד עם התפקיד 'הצטרפות'. המפקח הוא מכשיר Thread ברשת Thread קיימת, או מכשיר חיצוני לרשת Thread (כמו טלפון נייד) שממלא את תפקיד המפקח. ה-joiner הוא המכשיר שרוצה להצטרף לרשת בפרוטוקול Thread.
ועדת Thread משמשת לאימות מכשיר ברשת. הוא לא מעביר או שומר פרטי כניסה לרשת Thread, כמו מפתח הרשת.
המדריך הזה עוסק בהפעלה בסיסית של רשתות מוטמעות ללא נציג או נתב גבול חיצוני. במאמר הזמנת מודעות מגורם חיצוני מוסבר איך משתמשים בגורם חיצוני להזמנת מודעות.
דוגמה להפעלה באמצעות מכשירים וירטואליים מופיעה בCodelab של סימולציה של OpenThread.
הפעלת תפקידים
כדי להפעיל את התפקידים 'מפעיל' ו'מצטרף', משתמשים באפשרויות cmake הבאות:
אפשרות | תיאור |
---|---|
-DOT_COMMISSIONER=ON |
הפעלת התפקיד 'נציב' |
-DOT_JOINER=ON |
הפעלת התפקיד 'מצטרף' |
לדוגמה, כדי לבנות את הפלטפורמה לדוגמה CC2538 שתשמש כ-join בלבד:
./script/build -DOT_JOINER=ON
מבצעים אימייל של כל קובץ בינארי למכשיר הרצוי. מכשיר אחד משמש כנציב והשני משמש כנציב.
הוראות ספציפיות לגבי פיתוח ופלאשב של פלטפורמות נתמכות מפורטות במאגר OpenThread של כל פלטפורמה. אפשר למצוא את המאגר בארגון OpenThread ב-GitHub.
יצירת רשת
יוצרים רשת במכשיר שמשמשת כנציב:
dataset init new
Donedataset
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 Donedataset commit active
Doneifconfig up
Donethread 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
Donejoiner start J01NME
Done
ממתינים כמה שניות לאישור:
Join success!
המכשיר המצטרף אומת בהצלחה אצל המאמת וקיבלו פרטי כניסה לרשת Thread.
עכשיו מפעילים את Thread במכשיר שמצטרף:
thread start
Done
אימות האימות
בודקים את המצב במכשיר ה-joiner כדי לוודא שהוא הצטרף לרשת. תוך שתי דקות, המצב עובר מהצאצא לנתב:
state
child Done ...state
router Done