I’m currently facing a challenge with my network topology, which is attached for reference. Despite my efforts, I haven’t been successful in activating multicast to enable the use of an MDNS print server within my setup.
I’m specifically looking for guidance on how the multicast configuration should be set up to traverse the GRE tunnel successfully. If anyone has experience or insights into this, I would greatly appreciate your assistance.
Thank you for your response. While I’m not very familiar with pimsim, I’ve replicated the configurations you provided on both devices. On the first device (R1), I confirmed the setup:
Alas, mDNS is a link-local multicast (RFC6762), this means that routers are not supposed to pass them across subnets. This includes not passing over GRE tunnels.
To pass them across subnets, you need a mDNS reflector: it basically takes the advertisements on one subnet and republish them on a different subnet. This is, unfortunately, not available by default in Mikrotik. Another possibility is to bridge the two subnets and selectively pass the frames sent to 01:00:5E:00:00:FB. Another another one is to set up a pair of openwrt devices with a tunnel between them, these devices would only do mDNS reflection.
I strongly encourage the use of PIM-SM first in this situation as some devices and apps use mDNS and/or protocols that work over PIM-SM, but if you really need mDNS you can resort to this method as PIM-SM, good as it is, won’t work with mDNS because it’s link-local. It’s a shame printer manufacturers don’t support some kind of protocol that work with PIM-SM.
Appreciate your response! Your example with EOIP and bridging interfaces is insightful, but in my scenario, I’m working with separate interfaces, and unfortunately, I don’t have the option to bridge interfaces on both sides. Any suggestions considering this constraint would be very helpful.
If you use an Avahi style reflector the application needs to have access to all the interfaces’ broadcast domains - not possible if you can’t do things like EoIP.
Another idea is to run a CUPS server(s) on the subnets with the iPads, set it up with direct IP to the the printers on the other mDNS servers and have CUPS run Bonjour to readvertise them. That would effectively make an Airprint proxy for you.