alsmith / multicast-relay

Relay multicast and broadcast packets between interfaces.
GNU General Public License v3.0
304 stars 47 forks source link

Devices from Excluded VLANs Show Up in Logs #62

Open VeniceNerd opened 2 years ago

VeniceNerd commented 2 years ago

Hi guys,

I installed multicast-relay on my Ubiquity Dream Machine pro with the following command:

podman run -it -d \
--restart=on-failure:10 \
--name="multicast-relay-10" \
--network=host \
--mount type=bind,src=/mnt/data/on_boot.d_support,dst=/multicast-relay-config \
-e OPTS="--verbose" \
-e INTERFACES="br10 br50" \
docker.io/scyto/multicast-relay

The only interfaces I have assigned are VLAN 10 (10.0.10.x) and VLAN 50 (10.0.50.x). However, when running a discovery tool I can see a few devices from VLAN 30 show. I can even see them in the logs (10.0.30.145 - AppleTV & 10.0.30.178 - HomePod & 10.0.30.249 -iPad): log3.txt

I'm starting to lose my mind because I don't understand what could possibly be the problem. Does anyone have any ideas on how to trouble shoot this issue?

Here is my ifconfig output:

143946566-bf5255ef-4095-4958-b68d-c571c9b07955
alsmith commented 2 years ago

Hey @VeniceNerd - can you also share the output of brctl show ?

VeniceNerd commented 2 years ago

Hi @alsmith ! Absolutely! Here you go: Screen Shot 2021-12-28 at 4 14 52 PM

alsmith commented 2 years ago

Just wondering: did you disable Unifi’s mDNS reflector service and IGMP everywhere (under Networks - IGMP Snooping and WLAN - Multicast Enhancement). Even when you disable mDNS on the UDM, it actually starts ANOTHER mDNS service. So you can search and destroy the service using ps aux | grep avahi and killing it with sudo kill # (# being the ID).

VeniceNerd commented 2 years ago

So here are my site settings: Screen Shot 2021-12-28 at 4 34 06 PM

The only thing I see enabled there is "DHCP Snooping". Does that have anything to do with the mDNS reflector?

mDNS under services is DISABLED: Screen Shot 2021-12-28 at 4 40 18 PM

"Enable multicast enhancement (IGMPv3)" is DISABLED for all of my wireless networks: Screen Shot 2021-12-28 at 4 42 06 PM

"Enable IGMP snooping" is DISABLED for all of the networks: Screen Shot 2021-12-28 at 4 42 37 PM

Screen Shot 2021-12-28 at 4 42 56 PM

Is there anything else I could be missing?

Even when you disable mDNS on the UDM, it actually starts ANOTHER mDNS service. So you can search and destroy the service using ps aux | grep avahi and killing it with sudo kill # (# being the ID).

I'm not sure I understand this. I have "30-multicast-relay.sh" setup in the "on_boot.d" folder with the following contents:

#!/bin/sh

# kill all instances of avahi-daemon (UDM spins an instance up even with mDNS services disabled)
killall avahi-daemon

# start the multicast-relay container image
podman start multicast-relay

Is that what you're referencing, or do I need to run something else in addition to this?

alsmith commented 2 years ago

Ok, that all looks good. And if your relay is no longer running, do you still see devices that are supposed to be on VLAN30?

VeniceNerd commented 2 years ago

Ok, that all looks good. And if your relay is no longer running, do you still see devices that are supposed to be on VLAN30?

I'll have to try that once I'm back in the US. Flew home to Germany for the holidays and was continuing to trouble shoot remotely. That I'll have to try when I'm back on the local network in two weeks, though! I'll update you then if that's ok.

jdk commented 2 years ago

I'm seeing the same thing. I have all snoooping, mdns disabled. I have two containers. One for br0 and br2 and another for br30 and br40

In the log of the container with br0 and br2 I see the following:

[mDNS] Relayed 260 bytes from 10.0.30.71:5353 on local [ttl 255] to 224.0.0.251:5353 via br20/192.168.20.1

No devices show up in airplay on VLAN0 (br0) until container 2 is started.

Is there a way to stop the bridge through 'local'?

Here is one I expect to see

[mDNS] Relayed 946 bytes from 192.168.1.18:5353 on br0 [ttl 255] to 224.0.0.251:5353 via br20/192.168.20.1

I have killed avahi-daemon, as well, and when I start the second container, I see devices on VLAN - br40 from the main lan.

EDIT I should also mention, I created two firewall rules to block all MDNS / Airplay ports from the main lan, and lan2/iot2 (where br30 and br40), and vice versa just because I'm going crazy, but still see them. That's when I looked into the log above.

VeniceNerd commented 1 year ago

I'm seeing the same thing. I have all snoooping, mdns disabled. I have two containers. One for br0 and br2 and another for br30 and br40

In the log of the container with br0 and br2 I see the following:

[mDNS] Relayed 260 bytes from 10.0.30.71:5353 on local [ttl 255] to 224.0.0.251:5353 via br20/192.168.20.1

No devices show up in airplay on VLAN0 (br0) until container 2 is started.

Is there a way to stop the bridge through 'local'?

Here is one I expect to see

[mDNS] Relayed 946 bytes from 192.168.1.18:5353 on br0 [ttl 255] to 224.0.0.251:5353 via br20/192.168.20.1

I have killed avahi-daemon, as well, and when I start the second container, I see devices on VLAN - br40 from the main lan.

EDIT I should also mention, I created two firewall rules to block all MDNS / Airplay ports from the main lan, and lan2/iot2 (where br30 and br40), and vice versa just because I'm going crazy, but still see them. That's when I looked into the log above.

@jdk did you ever figure this out?