یک شبکه Thread تشکیل دهید و اتصال آن به اینترنت را آزمایش کنید.
یک جلسه «ot-ctl» را شروع کنید
ot-ctl دستورات OpenThread CLI را نشان می دهد، برای جزئیات بیشتر به راهنمای OpenThread CLI مراجعه کنید.
اگر از Docker استفاده می کنید، یک جلسه ot-ctl را به صورت زیر شروع کنید:
docker exec -it otbr ot-ctl
اگر از میزبان بومی استفاده می کنید، یک جلسه ot-ctl را به صورت زیر شروع کنید:
sudo ot-ctl
یک شبکه موضوعی تشکیل دهید
یک پیکربندی شبکه جدید ایجاد کنید.
dataset init newDoneپیکربندی شبکه جدید را مشاهده کنید.
datasetActive 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مجموعه داده های جدید را به مجموعه داده عملیاتی فعال در ذخیره سازی غیر فرار متعهد کنید.
dataset commit activeDoneرابط Thread را فعال کنید.
ifconfig upDonethread startDoneدر کنسول میزبان لینوکس (نه در یک جلسه
ot-ctl)،ifconfigبرای مشاهده رابط شبکه Thread جدید استفاده کنید:ifconfig wpan0wpan0: flags=4305mtu 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 مراجعه کنید.
پس از ساخت و چشمک زدن، از
screenدر پنجره ترمینال جدید برای دسترسی به CLI استفاده کنید. برای مثال، اگر دستگاه روی پورت/dev/ttyACM1نصب شده باشد:screen /dev/ttyACM1 115200کلید Enter را فشار دهید تا اعلان
>OpenThread CLI ظاهر شود.
گره دوم را به شبکه Thread بپیوندید
با استفاده از OpenThread CLI برای دومین گره Thread خود، گره را به شبکه Thread ایجاد شده توسط OTBR بپیوندید.
با استفاده از حداقل مقادیر مورد نیاز از OTBR، اعتبار شبکه Thread را برای گره به روز کنید:
dataset networkkey f366cec7a446bab978d90d27abe38f23Donedataset commit activeDoneرابط Thread را بیاورید و Thread را شروع کنید:
ifconfig upDonethread startDoneگره باید به طور خودکار به شبکه OTBR Thread بپیوندد. در عرض دو دقیقه وضعیت آن باید
routerباشد:staterouter
یک آدرس عمومی پینگ کنید
در این مرحله باید بتوانید یک آدرس IPv4 عمومی را از گره Thread مستقل پینگ کنید. از آنجایی که Thread فقط از IPv6 استفاده می کند، آدرس IPv4 عمومی به طور خودکار با ترکیب با پیشوند NAT64 در شبکه Thread به IPv6 ترجمه می شود.
برای مشاهده پیشوند NAT64 در شبکه Thread:
در اینجاnetdata showPrefixes: 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 است.یک آدرس IPv4 را از CLI گره Thread مستقل پینگ کنید تا اتصال اینترنت آن را آزمایش کنید:
ping 8.8.8.8Pinging 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 با اینترنت ارتباط برقرار کند.