اكتشاف نظام أسماء النطاقات (DNS)

عرض المصدر على GitHub

يسجل OTBR خدمة _meshcop._udp باسم OpenThread BorderRouter. يتم إعداد هذه الخدمة في ملف OTBR CMakeLists.txt. تتطلّب "مواصفات سلسلة المحادثات" أن تكون موجّهات حدود سلسلة المحادثات لنشر خدمة _meshcop._udp لخدمة "وكيل حدود سلسلة المحادثات". قد تنشر أجهزة توجيه حدود سلسلة المحادثات الخدمات الأخرى التي تنفذها ولكن هذا الأمر متروك لكل جهاز ومطوّر برامج على وجه الخصوص.

هناك عدة طرق لاكتشاف شبكة Thread.

DNS Service Discovery (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

فحص اتصال عنوان 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-daemon وavahi-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، على سبيل المثال: