mDNS 发现广告

<ph type="x-smartling-placeholder"></ph> 在 GitHub 上查看源代码

OTBR 注册了一项名为 OpenThread BorderRouter_meshcop._udp 服务。这个 是在 GCP 控制台中配置的 OTBR CMakeLists.txt 文件。 线程规范要求在线程边界路由器上发布 用于线程边界代理服务的 _meshcop._udp 服务。线形边框 路由器设备可能会发布它们实现的其他服务 每台特定设备和开发者

您可以通过多种方式发现 Thread 网络。

DNS 服务发现 (DNS-SD)

使用 dns-sd 浏览查找 _meshcop._udp. 类型的服务实例:

dns-sd -B _meshcop._udp local
Browsing for _meshcop._udp.local
DATE: ---Tue 16 Nov 2021---
13:31:03.197  ...STARTING...
Timestamp     A/R    Flags  if Domain               Service Type         Instance Name
13:31:03.198  Add        2   6 local.               _meshcop._udp.       OpenThread BorderRouter (#3991)

使用 dns-sd 解析服务实例:

dns-sd -L "OpenThread BorderRouter (#3991)" _meshcop._udp local
Lookup OpenThread BorderRouter #(3991)._meshcop._udp.local
DATE: ---Tue 16 Nov 2021---
13:33:05.197  ...STARTING...
13:33:05.350  OpenThread\032BorderRouter\032(#3991)._meshcop._udp.local. can be reached at raspberrypi.local.:49155 (interface 3)

使用 dns-sd 解析主机名:

dns-sd -G v4/v6 raspberrypi.local
DATE: ---Tue 16 Nov 2021---
14:21:29.485  ...STARTING...
Timestamp     A/R Flags if Hostname           Address                                      TTL
14:21:29.486  Add     3  3 raspberrypi.local. FDDE:AD11:11DE:0000:74D0:6FC9:6BE6:3582%<0>  120
14:21:29.486  Add     3  3 raspberrypi.local. FD00:0000:0000:0000:74D0:6FC9:6BE6:3582%<0>  120
14:21:29.486  Add     3  3 raspberrypi.local. FE80:0000:0000:0000:74D0:6FC9:6BE6:3582%eth0 120
14:21:29.486  Add     3  3 raspberrypi.local. FE80:0000:0000:0000:287F:87CA:F4B3:498A%eth0 120
14:21:29.486  Add     2  3 raspberrypi.local. 192.168.0.10                                 120

Ping 您的 IP 地址。从 dns-sd 结果中,选择一个 可通过您的网络访问,例如全局 <0> 地址 FD00::74D0:6FC9:6BE6:3582:

ping -6 FD00::74D0:6FC9:6BE6:3582
PING FD00::74D0:6FC9:6BE6:3582(fd00::74d0:6fc9:6be6:3582) 56 data bytes
64 bytes from fd00::74d0:6fc9:6be6:3582: icmp_seq=1 ttl=64 time=27.1 ms
64 bytes from fd00::74d0:6fc9:6be6:3582: icmp_seq=2 ttl=64 time=3.18 ms
64 bytes from fd00::74d0:6fc9:6be6:3582: icmp_seq=3 ttl=64 time=2.76 ms

Avahi 实用程序

安装 avahi-daemonavahi-utils

sudo apt-get install -y avahi-daemon avahi-utils

启动 avahi-daemon

sudo service avahi-daemon start

使用 avahi-browse

avahi-browse -r -t _meshcop._udp
+ eth0 IPv6 OpenThread BorderRouter (#3991)   _meshcop._udp        local
= eth0 IPv6 OpenThread BorderRouter (#3991)   _meshcop._udp        local
   hostname = [raspberrypi.local]
   address = [192.168.0.10]
   port = [49155]
   txt = []

mDNS 应用

Google Play 中搜索 mDNS 发现应用,例如: