I installed openWRT distro on my router and enable support of avahi in it. My goal is to discover network services in my network.
I plugged my PC to LAN port with announced services. On router I run tcpdump on bridge interface : tcpdump -i br0 -vvn udp port 5353
During avahi browse execution i receive output:
root@localhost:~# avahi-browse -art
21:55:22.995004 IP (tos 0x0, ttl 255, id 0, offset 0, flags [DF], proto UDP (17), length 74)
192.168.1.1.5353 > 224.0.0.251.5353: [udp sum ok] 0 PTR (QM)? _services._dns-sd._udp.local. (46)
But on my PC wireshark didn't show any multicast queries during that call, hence no services found.
Does it mean that router filter multicast packets somehow?
Only way that i know is to filter in ebtables, which shows nothing about filtering of mDNS addresses:
root@localhost:~# ebtables -L
Bridge table: filter
Bridge chain: INPUT, entries: 1, policy: ACCEPT
-j RO_INPUT
Bridge chain: FORWARD, entries: 1, policy: ACCEPT
-j RO
Bridge chain: OUTPUT, entries: 1, policy: ACCEPT
-j IGMPPROXY
Bridge chain: RO, entries: 0, policy: RETURN
Bridge chain: RO_INPUT, entries: 0, policy: RETURN
Bridge chain: IGMPPROXY, entries: 4, policy: RETURN
-p IPv4 -o wl0.1 --ip-dst 239.0.0.0/8 -j DROP
-p IPv4 -o wl0.2 --ip-dst 239.0.0.0/8 -j DROP
-p IPv4 -o wl0.3 --ip-dst 239.0.0.0/8 -j DROP
-p IPv4 -o br0 --ip-dst 239.0.0.0/8 -j DROP
Where these multicast packets could be filtered/dropped?