1

Я пытаюсь опубликовать службы Discover dns-sd в сетевом интерфейсе BNEP. У меня есть система Linux и один телефон Android. Я включил модем с моего телефона Android и подключил систему Linux к сети BNEP. После настройки я смог пинговать между обоими устройствами.

Мое требование состоит в том, чтобы опубликовать службу DNS-SD из системы Linux и обнаружить ее на устройстве Android. Я использую Avahi для публикации сервиса из системы Linux и использую приложение из Android для просмотра сервисов.

Проблема, с которой я сталкиваюсь, заключается в том, что служба публикуется локально в системе Linux, но не в сети BNEP (потому что, когда я начал поиск в Linux для службы, опубликованной в Linux, обнаружение прошло успешно)

Детали команды маршрута

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.44.1    0.0.0.0         UG    0      0        0 bnep0
172.17.0.0      *               255.255.0.0     U     0      0        0 eth0
192.168.44.0    *               255.255.255.0   U     0      0        0 bnep0
192.168.44.1    *               255.255.255.255 UH    0      0        0 bnep0
192.168.203.0   *               255.255.255.0   U     0      0        0 inc-scc
192.168.204.0   *               255.255.255.0   U     0      0        0 inc-adr3
224.0.0.0       *               240.0.0.0       U     0      0        0 bnep0

Я запечатлел tcpdump, когда запустил обнаружение с телефона Android, чтобы проверить, приходит ли ответ на телефон. И я обнаружил, что сообщение приходит правильно.

IP-телефон Android: 192.168.44.1

Устройство Linux: mx6q.local

Детали Tcpdump

192.168.44.1.mdns > 224.0.0.251.mdns: 0 PTR (QM)? _services._dns-sd._udp.local. (46)
04:26:58.158918 IP (tos 0x0, ttl 255, id 16701, offset 0, flags [DF], proto UDP (17), length 169)
mx6q.local.mdns > 224.0.0.251.mdns: 0*- [0q] 4/0/0 _services._dns-sd._udp.local. PTR _workstation._tcp.local., _services._dns-sd._udp.local. PTR _sftp-ssh._tcp.local., _services._dns-sd._udp.local. PTR _ssh._tcp.local., _services._dns-sd._udp.local. PTR _udisks-ssh._tcp.local. (141)
192.168.44.1.mdns > 224.0.0.251.mdns: 0 PTR (QM)? _services._dns-sd._udp.local. (46)
04:26:55.154939 IP (tos 0x0, ttl 255, id 16698, offset 0, flags [DF], proto UDP (17), length 169)
mx6q.local.mdns > 224.0.0.251.mdns: 0*- [0q] 4/0/0 _services._dns-sd._udp.local. PTR _workstation._tcp.local., _services._dns-sd._udp.local. PTR _sftp-ssh._tcp.local., _services._dns-sd._udp.local. PTR _ssh._tcp.local., _services._dns-sd._udp.local. PTR _udisks-ssh._tcp.local. (141)

Avahi Config file

[server]
domain-name=local
use-ipv4=yes
use-ipv6=no
[wide-area]
enable-wide-area=yes

Я думаю, что в системе Linux отсутствует какая-то конфигурация, которую я не могу определить. Пожалуйста, помогите мне.

NB: 1. Когда я публикую сервис DNS-SD с устройства Android, я могу обнаружить то же самое в системе Linux, но проблема заключается в обратном. 2. Тот же набор работает с сетевым интерфейсом Wi-Fi, Ethernet и USB (rndis)

0