原生安裝

在 GitHub 上查看來源

取得 OTBR 代碼

在 Raspberry Pi 上:

  1. 安裝 Git:

    sudo apt install git
    

  2. 從 GitHub 複製 ot-br-posix

    git clone --depth=1 https://github.com/openthread/ot-br-posix
    

建構及安裝 OTBR

OTBR 包含兩個指令碼,可啟動及設定 Thread 邊界路由器:

cd ot-br-posix
./script/bootstrap
INFRA_IF_NAME=wlan0 ./script/setup

OTBR 可在 Thread 介面和基礎架構網路介面 (例如 Wi-Fi/乙太網路) 上運作,並以 INFRA_IF_NAME 指定。Thread 介面是由 OTBR 本身建立,預設名稱為 wpan0,如果未明確指定 INFRA_IF_NAME,基礎架構介面的預設值為 wlan0。如果 Raspberry Pi 是透過乙太網路線連線,請指定乙太網路介面名稱 (例如 eth0):

INFRA_IF_NAME=eth0 ./script/setup

otbr-agent服務現已啟用,重新啟動後就會啟動。如要立即啟動服務,不必重新啟動,請使用 server 指令碼:

./script/server

確認 otbr-agent 服務是否已啟用:

sudo service otbr-agent status
● otbr-agent.service - Border Router Agent
   Loaded: loaded (/lib/systemd/system/otbr-agent.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-03-01 05:46:26 GMT; 2s ago
 Main PID: 2997 (otbr-agent)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/otbr-agent.service
           └─2997 /usr/sbin/otbr-agent -I wpan0 -B wlan0 spinel+hdlc+uart:///dev/ttyACM0

Mar 01 05:46:26 raspberrypi otbr-agent[2997]: Stop publishing service
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: [adproxy] Stopped
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: PSKc is not initialized
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: Check if PSKc is initialized: OK
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: Initialize OpenThread Border Router Agent: OK
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: Border router agent started.
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: [INFO]-CORE----: Notifier: StateChanged (0x00038200) [NetData PanId NetName ExtPanId]
Mar 01 05:46:26 raspberrypi otbr-agent[2997]: [INFO]-PLAT----: Host netif is down

編輯 Radio URL 路徑

OTBR 代理程式會使用 /etc/default/otbr-agent 設定檔做為啟動參數。這個檔案包含 OTBR_AGENT_OPTS 變數,可定義電台網址等設定。例如:spinel+hdlc+uart:///dev/ttyACM0

這個設定檔是由 CMake 從 otbr-agent.default.in 來源檔案產生。然後做為服務啟動參數,提供給系統服務。

如要在目標系統上變更 Radio URL 路徑,請按照下列步驟操作:

  1. 在文字編輯器中開啟 OTBR 代理程式設定檔:

    sudoedit /etc/default/otbr-agent
    

  2. 找出 OTBR_AGENT_OPTS 變數。

  3. 找出字串中的電台網址部分。例如 spinel+hdlc+uart:///dev/ttyACM0

  4. 將該字串變更為新路徑。

  5. 儲存檔案並結束編輯器。

  6. 重新啟動 otbr-agent 服務,以套用變更:

    sudo systemctl restart otbr-agent