Google is committed to advancing racial equity for Black communities. See how.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

OpenThread Border Router ساخت و پیکربندی

این راهنما ساخت و پیکربندی اولیه OpenThread Border Router (OTBR) را پوشش می دهد. پس از اتمام این روش ، شما یک OTBR خواهید داشت که به عنوان یک دستگاه کامل نخ (FTD) در طراحی RCP عمل می کند.

پیکربندی سیستم عامل

پیکربندی یک پلت فرم سخت افزار های پشتیبانی شده:

ساخت و فلش RCP

OTBR با طراحی RCP اجرا می شود. یک پلت فرم پشتیبانی شده OpenThread برای استفاده به عنوان RCP انتخاب کرده و دستورالعمل های مربوط به ساختمان و چشمک زن را برای آن سیستم عامل دنبال کنید.

برای مروری بر ساختمان OpenThread ، به راهنمای ساختمان مراجعه کنید.

دستورالعمل های خاص در مورد ساخت سیستم عامل های پشتیبانی شده با ابزار خودکار GNU را می توان در پوشه پلت فرم هر مثال یافت.

مسیریاب را تنظیم کنید

OTBR از طریق spinel با RCP ارتباط برقرار می کند. در سیستم عامل پیکربندی شده سخت افزار :

  1. مخزن OTBR را شبیه سازی کنید:
    git clone https://github.com/openthread/ot-br-posix
  2. نصب وابستگی ها:
    cd ot-br-posix
    ./script/bootstrap
  3. OTBR را کامپایل و نصب کنید. توجه داشته باشید که این اسکریپت راه اندازی از Network Manager برای تنظیم خودکار نقطه دسترسی Wi-Fi (AP) استفاده می کند.
    1. برای راه اندازی خودکار Wi-Fi AP با استفاده از مدیر شبکه:
      ./script/setup
    2. برای رد کردن تنظیمات خودکار Wi-Fi AP و انجام دستی آن بعداً بدون استفاده از مدیر شبکه:
      NETWORK_MANAGER=0 ./script/setup
  4. دستگاه RCP فلش شده را از طریق USB به پلت فرم Border Router وصل کنید.
  5. پورت سریال دستگاه RCP را در otbr-agent پیکربندی کنید:
    1. نام پورت سریال دستگاه RCP را با بررسی /dev :
      ls /dev/tty*
      تعیین کنید
    2. این را به /etc/default/otbr-agent . به عنوان مثال ، برای نام درگاه سریال ttyUSB0 :
      OTBR_AGENT_OPTS="-I wpan0 spinel+hdlc+uart:///dev/ttyUSB0"
  6. روتر Border را با چرخه برق بچرخانید. اگر از سیستم عامل BeagleBone Black استفاده می کنید ، به یاد داشته باشید که هنگام انجام این کار دکمه BOOT را پایین نگه دارید .
  7. سرویس OTBR باید از هنگام راه اندازی شروع شود.

خدمات را تأیید کنید

تأیید کنید که همه سرویس های مورد نیاز فعال هستند:

sudo systemctl status

اگر اسکریپت setup موفقیت آمیز باشد ، خدمات زیر در خروجی ظاهر می شوند:

  • avahi-daemon.service
  • otbr-agent.service
  • otbr-web.service

مثلا:

● raspberrypi
    State: running
     Jobs: 0 queued
   Failed: 0 units
    Since: Thu 1970-01-01 00:00:01 UTC; 47 years 7 months ago
   CGroup: /
           ├─user.slice
           │ └─user-1000.slice
           │   ├─user@1000.service
           │   │ └─init.scope
           │   │   ├─576 /lib/systemd/systemd --user
           │   │   └─580 (sd-pam)
           │   └─session-c1.scope
           │     ├─480 /bin/login --
           │     └─585 -bash
           ├─init.scope
           │ └─1 /sbin/init
           └─system.slice
             ├─systemd-timesyncd.service
             │ └─334 /lib/systemd/systemd-timesyncd
             ├─dbus.service
             │ └─339 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
             ├─hciuart.service
             │ └─442 /usr/bin/hciattach /dev/serial1 bcm43xx 921600 noflow -
             ├─ssh.service
             │ └─621 /usr/sbin/sshd -D
             ├─avahi-daemon.service
             │ ├─341 avahi-daemon: running [raspberrypi.local]
             │ └─361 avahi-daemon: chroot helper
             ├─otbr-web.service
             │ └─472 /usr/sbin/otbr-web
             ├─triggerhappy.service
             │ └─354 /usr/sbin/thd --triggers /etc/triggerhappy/triggers.d/ --socket /run/thd.socket --user nobody --deviceglob /dev/input/event*
             ├─systemd-logind.service
             │ └─353 /lib/systemd/systemd-logind
             ├─otbr-agent.service
             │ └─501 /usr/sbin/otbr-agent -I wpan0
             ├─cron.service
             │ └─350 /usr/sbin/cron -f
             ├─systemd-udevd.service
             │ └─154 /lib/systemd/systemd-udevd
             ├─rsyslog.service
             │ └─345 /usr/sbin/rsyslogd -n
             ├─bluetooth.service
             │ └─445 /usr/lib/bluetooth/bluetoothd
             ├─systemd-journald.service
             │ └─136 /lib/systemd/systemd-journald
             └─dhcpcd.service
               ├─409 wpa_supplicant -B -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0
               └─466 /sbin/dhcpcd -q -w

اگر آن سرویس ها در حال اجرا هستند ، اما RPi3B در وضعیت تخریبی قرار دارد ، برخی سرویس های دیگر شروع به کار نمی کنند. بررسی کنید که:

sudo systemctl --failed

اگر از راه اندازی خودکار Wi-Fi AP رد شد و سرویس ناموفق tayga یا dnsmasq ، این طبیعی است. در صورت انجام تنظیم دستی Wi-Fi AP ، این سرویس ها به طور کامل به عنوان بخشی از Wi-Fi Access Point Setup تنظیم شده در بخش بعدی پیکربندی می شوند.

RCP را تأیید کنید

تأیید کنید که RCP در وضعیت صحیحی قرار دارد:

sudo ot-ctl state

ot-ctl یک ابزار خط فرمان است که با OTBR ارائه می شود. برای برقراری ارتباط با رابط Thread PAN (پیش فرض wpan0 ) استفاده می شود که otbr-agent در طراحی RCP به آن ملزم است.

اگر RCP با موفقیت در حال اجرا است و گره عضوی از یک شبکه Thread نیست ، خروجی باید مانند زیر باشد:

disabled

اگر خروجی OpenThread daemon is not running ، با موارد زیر عیب یابی کنید:

  1. تأیید کنید که روتر Border از قدرت کافی برخوردار است (از آداپتور AC مناسب خارجی استفاده کنید).
  2. برد RCP را به سیستم عامل Border Router قطع و دوباره وصل کنید.
  3. تأیید کنید که دستگاه سریال RCP وجود دارد. به عنوان مثال ، اگر دستگاه باید به /dev/ttyUSB0 متصل شود:
    ls /dev/ttyUSB*
    /dev/ttyUSB0
  4. RCP را با تنظیم مجدد sudo ot-ctl reset .

دوباره وضعیت RCP را با حالت sudo ot-ctl state .