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