Please reload

Recent Posts

delete: The Virtue of Forgetting in the Digital Age - Book Review.

May 6, 2020

1/6
Please reload

Featured Posts

mDNS Relay between VLANs on Untangle 14 (and most Linux distros)

February 19, 2020

Why?

VLANs break up broadcast domains and thus the multicast traffic that mDNS (Avahi, Bonjour) enabled devices use to advertise their availability and services. We need a relay that will receive the multicast messages on one VLAN and repeat them to a different VLAN. Additionally, I have several Firewall rules, including those that explicitly allow specific traffic between individual VLANs (and block all other traffic). Sure, you can stand up a VM and use that to relay but doing this on the firewall is more appropriate and secure, in my opinion. Untangle, based on Debian Linux; allows us to easily install a minimally sized program, that starts at boot, this will accomplish our goals. Unfortunately, this feature although requested by users, is not officially supported by Untangle.


 

What You Need:

  1. A running and configured Untangle (or other Ubuntu/debian distro) installation

  2. Internet access

  3. Basic Linux terminal knowledge

 

Installation Procedure 1:

This method is probably the preferred of the two.

  1. Open the terminal

  2. Add the Debian repository.

    • nano /etc/apt/sources.list.d/deb.list

      • deb http://ftp.us.debian.org/debian jessie main contrib non-free

      • control + x and y

    • apt update

    • apt install avahi-daemon avahi-utils

  3. Edit the avahi-daemon config file to allow reflection

    • nano /etc/avahi/avahi-daemon.conf

      • enable-reflector=yes

      • control + x and y

  4. Restart the daemon

    • service avahi-daemon restart

  5. Configure Avahi to run on system startup

    • systemctl enable avahi-daemon

  6. Test it, if you would like, replace X with the VLAN ID

    • tcpdump -i eth1.X port 5353 or igmp

 

Installation Procedure 2:

Note: 'mdns-repeater' compiles and runs fine on Untangle 14 but doesn't appear to repeat broadcast packets. See Installation Procedure 1 for Untangle NGF. For Ubuntu systems, its runs fine, however. This method has the added benefit of seeing/logging the output of mDNS activity.

 

  1. Open the terminal

  2. Install the necessary packages:

    • apt install git make gcc -y

    • git clone https://github.com/kennylevinsen/mdns-repeater.git

  3. Compile the program

    • cd mdns-repeater

    • make mdns-repeater

    • mv mdns-repeater /bin

    • chmod +x /bin/mdns-repeater

    • apt purge git make gcc -y 

  4. Configure the system so mdns-repeater will start at system boot

    • nano /etc/init.d/mdns-repeater

      • /bin/mdns-repeater eth1.100 eth1.102 eth1.103

      • control  + x and y

    • chmod +x /etc/init.d/mdns-repeater

    • update-rc.d mdns-repeater defaults

  5. Reboot if you want to or run the script to ensure proper operation

    • sh /etc/init.d/mdns-repeater

 

Conclusion

We looked at how you can repeat multicast frames across VLANs because we want to use Chromecast and other mDNS enabled services. VLANs break up broadcast domains by design. We installed the mdns-repeater application on an Untangle Next-Generation Firewall and configured the app to start at system boot.

 

 

Disclaimer

For obvious reasons, you would not want to implement this on a production network because mDNS advertises somewhat sensitive information to all devices on those subnets.

 

 

 

 

 

Share on Facebook
Share on Twitter
Please reload

Follow Us