شبکه موضوعی را تشکیل دهید

مشاهده منبع در GitHub

یک شبکه Thread تشکیل دهید و اتصال آن به اینترنت را آزمایش کنید.

یک جلسه «ot-ctl» را شروع کنید

ot-ctl دستورات OpenThread CLI را نشان می دهد، برای جزئیات بیشتر به راهنمای OpenThread CLI مراجعه کنید.

اگر از Docker استفاده می کنید، یک جلسه ot-ctl را به صورت زیر شروع کنید:

docker exec -it otbr ot-ctl

اگر از میزبان بومی استفاده می کنید، یک جلسه ot-ctl را به صورت زیر شروع کنید:

sudo ot-ctl

یک شبکه موضوعی تشکیل دهید

  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. در کنسول میزبان لینوکس (نه در یک جلسه ot-ctlifconfig برای مشاهده رابط شبکه 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 اضافه کنید و تست کنید که به اینترنت متصل است.

برای دستورالعمل های دقیق در مورد ساخت و فلش کردن پلت فرم Nordic nRF52840، به شبکه Build a Thread با بردهای nRF52840 و OpenThread Codelab مراجعه کنید.

  1. پس از ساخت و چشمک زدن، از screen در پنجره ترمینال جدید برای دسترسی به CLI استفاده کنید. برای مثال، اگر دستگاه روی پورت /dev/ttyACM1 نصب شده باشد:

    screen /dev/ttyACM1 115200
    

  2. کلید Enter را فشار دهید تا اعلان > OpenThread CLI ظاهر شود.

گره دوم را به شبکه Thread بپیوندید

با استفاده از OpenThread CLI برای دومین گره Thread خود، گره را به شبکه Thread ایجاد شده توسط OTBR بپیوندید.

  1. با استفاده از حداقل مقادیر مورد نیاز از OTBR، اعتبار شبکه Thread را برای گره به روز کنید:

    dataset networkkey f366cec7a446bab978d90d27abe38f23
    Done
    dataset commit active
    Done
    

  2. رابط Thread را بیاورید و Thread را شروع کنید:

    ifconfig up
    Done
    thread start
    Done
    

  3. گره باید به طور خودکار به شبکه OTBR Thread بپیوندد. در عرض دو دقیقه وضعیت آن باید router باشد:

    state
    router
    

یک آدرس عمومی پینگ کنید

در این مرحله باید بتوانید یک آدرس IPv4 عمومی را از گره Thread مستقل پینگ کنید. از آنجایی که Thread فقط از IPv6 استفاده می کند، آدرس IPv4 عمومی به طور خودکار با ترکیب با پیشوند NAT64 در شبکه Thread به IPv6 ترجمه می شود.

  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. یک آدرس 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 با اینترنت ارتباط برقرار کند.