原生安装

在 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

修改电台网址路径

OTBR 代理使用 /etc/default/otbr-agent 配置文件来设置其启动参数。此文件包含 OTBR_AGENT_OPTS 变量,用于定义广播网址等设置。例如 spinel+hdlc+uart:///dev/ttyACM0

此配置文件由 CMake 根据 otbr-agent.default.in 源文件生成。然后,它会作为服务启动参数馈送到系统服务中。

如需更改目标系统上的电台网址路径,请执行以下操作:

  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