1

I am trying to publish discover dns-sd services on BNEP network interface. I have a Linux system and one Android phone. I have enabled tethering from my android phone and made the Linux System connect to the BNEP network. After making the set up, I was able to ping between both devices.

My requirement is to publish a service a DNS-SD service from the Linux System and discover that from the Android device. I am using Avahi for publishing the service from the Linux System and using an App from Android app to browse the services.

The issue I am facing is, the service is published locally in the Linux system but not on the BNEP network(because when I started a browse from Linux for the service published in Linux, the discovery is successful)

Route command details

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

I have captured the tcpdump when I started the discovery from the android phone to check if the response is coming to the phone. And I found that the message is coming properly.

Android Phone IP : 192.168.44.1

Linux Device: 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 file

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

I think some configuration is missing from the Linux system which I am not able to identify, Please help me.

N.B: 1. When I publish a DNS-SD service from the Android Device, I can discover the same on the Linux system but the reverse is the problem. 2. Same set is working with Wifi, Ethernet and USB (rndis) network interface

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.