יצירת רשת של פרוטוקול Thread

הצגת המקור ב-GitHub

יוצרים רשת Thread ובודקים את הקישוריות שלה לאינטרנט.

התחלת סשן של `ot-ctl`

ot-ctl חושף את פקודות ה-CLI של OpenThread. לפרטים נוספים, ראו מדריך OpenThread CLI.

אם משתמשים ב-Docker, מתחילים סשן ot-ctl באופן הבא:

docker exec -it otbr ot-ctl

אם משתמשים במארח מקומי, מתחילים סשן ot-ctl באופן הבא:

sudo ot-ctl

יצירת רשת של פרוטוקול Thread

  1. יוצרים הגדרות רשת חדשות.

    dataset init new
    Done
    
  2. הצגת הגדרת הרשת החדשה.

    dataset
    Active Timestamp: 1
    Channel: 15
    Wake-up Channel: 16
    Channel Mask: 0x07fff800
    Ext PAN ID: 39758ec8144b07fb
    Mesh Local Prefix: fdf1:f1ad:d079:7dc0::/64
    Network Key: f366cec7a446bab978d90d27abe38f23
    Network Name: OpenThread-5938
    PAN ID: 0x5938
    PSKc: 3ca67c969efb0d0c74a4d8ee923b576c
    Security Policy: 672 onrc 0
    Done
    
  3. ביצוע השמירה של מערך הנתונים החדש במערך הנתונים התפעולי הפעיל באחסון לא נדיף.

    dataset commit active
    Done
    
  4. מפעילים את ממשק Thread.

    ifconfig up
    Done
    thread start
    Done
    
  5. במסוף המארח של Linux (לא במהלך סשן ot-ctl), משתמשים ב-ifconfig כדי להציג את ממשק הרשת החדש של Thread:

    ifconfig wpan0
    wpan0: flags=4305  mtu 1280
            inet6 fe80::3c98:89e8:ddec:bda7  prefixlen 64  scopeid 0x20
            inet6 fd4d:b3e5:9738:3193:0:ff:fe00:fc00  prefixlen 64  scopeid 0x0
            inet6 fd4d:b3e5:9738:3193:0:ff:fe00:f800  prefixlen 64  scopeid 0x0
            inet6 fd4d:b3e5:9738:3193:39c4:ee02:ca9e:2b1d  prefixlen 64  scopeid 0x0
            unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
            RX packets 16  bytes 1947 (1.9 KiB)
            RX errors 0  dropped 3  overruns 0  frame 0
            TX packets 7  bytes 1152 (1.1 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    

הצגת צומת נוסף של Thread

כש-OTBR פועל, מוסיפים צומת Thread עצמאי לרשת Thread ובודקים שיש לו קישוריות לאינטרנט.

במדריך יצירת רשת Thread באמצעות לוחות nRF52840 ו-OpenThread Codelab מפורטות הוראות מפורטות ליצירה ולתוכנה של פלטפורמת Nordic nRF52840.

  1. אחרי ה-build וה-flash, משתמשים ב-screen בחלון טרמינל חדש כדי לגשת ל-CLI. לדוגמה, אם המכשיר מותקן ביציאה /dev/ttyACM1:

    screen /dev/ttyACM1 115200
    

  2. מקישים על המקש Enter כדי להציג את הנחיה > של OpenThread CLI.

הצטרפות הצומת השני לרשת Thread

באמצעות ה-CLI של OpenThread בצומת Thread השני, מצטרפים לצומת לרשת Thread שנוצרה על ידי OTBR.

  1. מעדכנים את פרטי הכניסה של רשת Thread בצומת, באמצעות הערכים המינימליים הנדרשים מ-OTBR:

    dataset networkkey f366cec7a446bab978d90d27abe38f23
    Done
    dataset commit active
    Done
    

  2. פותחים את ממשק Thread ומתחילים את השרשור:

    ifconfig up
    Done
    thread start
    Done
    

  3. הצומת אמור להצטרף לרשת Thread של OTBR באופן אוטומטי. תוך שתי דקות, הסטטוס שלו אמור להיות router:

    state
    router
    

שליחת הודעות ping לכתובת ציבורית

בשלב הזה, אמורה להיות לכם אפשרות לשלוח הודעות ping לכתובת IPv4 ציבורית מהצומת העצמאי של Thread. מכיוון ש-Thread משתמש רק ב-IPv6, כתובת ה-IPv4 הציבורית תועבר באופן אוטומטי ל-IPv6 על ידי שילוב עם הקידומת NAT64 ברשת Thread.

  1. כדי להציג את הקידומת NAT64 ברשת Thread:

    netdata show
    Prefixes:
    fd3e:d39b:d91:1::/64 paros low 1800
    Routes:
    ::/0 s med 1800
    fd3e:d39b:d91:2:0:0::/96 sn low 1800
    Services:
    Contexts:
    fd3e:d39b:d91:1::/64 1 c
    Commissioning:
    12156 - - -
    
    כאן, fd3e:d39b:d91:2:0:0::/96 היא הקידומת של NAT64 ברשת Thread.

  2. שולחים הודעה ל-ping לכתובת IPv4 מה-CLI של צומת Thread העצמאי כדי לבדוק את קישוריות האינטרנט שלו:

    ping 8.8.8.8
    Pinging synthesized IPv6 address: fd3e:d39b:d91:2:0:0:808:808
    16 bytes from fd3e:d39b:d91:2:0:0:808:808: icmp_seq=1 hlim=113 time=73ms
    1 packets transmitted, 1 packets received. Packet loss = 0.0%. Round-trip min/avg/max = 73/73.0/73 ms.
    Done
    

הצלחת! צומת ה-Thread השני יכול עכשיו לתקשר עם האינטרנט דרך OTBR.