DNS-SD (Avahi) an der Bluetooth-Netzwerkschnittstelle (BNEP)

475
Saby

Ich versuche, discover dns-sd-Dienste auf der BNEP-Netzwerkschnittstelle zu veröffentlichen. Ich habe ein Linux-System und ein Android-Handy. Ich habe das Tethering von meinem Android-Handy aus aktiviert und das Linux-System mit dem BNEP-Netzwerk verbunden. Nach dem Setup konnte ich zwischen beiden Geräten pingen.

Meine Anforderung ist es, einen Dienst, einen DNS-SD-Dienst, vom Linux-System zu veröffentlichen und dies vom Android-Gerät aus zu ermitteln. Ich verwende Avahi, um den Dienst aus dem Linux-System zu veröffentlichen und eine App aus der Android-App zum Durchsuchen der Dienste.

Das Problem, mit dem ich konfrontiert bin, ist, dass der Dienst lokal im Linux-System veröffentlicht wird, nicht jedoch im BNEP-Netzwerk (da ich beim Durchsuchen des unter Linux veröffentlichten Dienstes unter Linux einen erfolgreichen Suchvorgang durchführte).

Befehlsdetails weiterleiten

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 

Ich habe den tcpdump erfasst, als ich die Entdeckung vom Android-Handy aus gestartet habe, um zu prüfen, ob die Antwort auf das Telefon eingeht. Und ich habe festgestellt, dass die Nachricht richtig kommt.

Android-Telefon-IP: 192.168.44.1

Linux-Gerät: mx6q.local

Tcpdump-Details

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-Datei

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

Ich denke, eine Konfiguration fehlt im Linux-System, die ich nicht identifizieren kann. Bitte helfen Sie mir.

NB: 1. Wenn ich einen DNS-SD-Dienst vom Android-Gerät aus veröffentliche, kann ich dasselbe auf dem Linux-System feststellen, das Problem ist jedoch umgekehrt. 2. Das gleiche Gerät funktioniert mit der WLAN-, Ethernet- und USB-Netzwerkschnittstelle

1

0 Antworten auf die Frage