There are now so many people running this now and I'm sending out a couple of PM links a day, so I'm just going to post it here. One day it will get officially taken up and will appear in the plugins. In the meantime should something change then I will update the pkg accordingly and post here.
You can grab it here. https://www.dropbox.com/s/no60byvyspab9m0/os-os-udpbroadcastrelay-devel-0.5_0.6.txz?dl=0 (https://www.dropbox.com/s/no60byvyspab9m0/os-os-udpbroadcastrelay-devel-0.5_0.6.txz?dl=0)
To install, copy the file to a your opnsense instance /tmp folder. Go to the shell, cd to the /tmp folder and issue the following command.
pkg install os-*.txz
You should then have a new menu item in services.
This is an updated version of udpbroadcastrelay that uses a new method of reflection detection. This can be overridden using the Use TTL for ID option, it then resorts to it's former operation, however the new method appears to work fine, so you should be able to leave that option un-ticked.
It now also supports multiple multicast addresses on the same port.
Add the relay you want, here are the values for some common ones. the --dev items refer to your interfaces, in the UDP Broadcast Relay menu you just select the interfaces from the dropdown box in the menu.
Syncthing discoveryudp_vars="--id 1 --port 21027 --dev igb1 --dev igb2"
mDNS / Multicast DNS (Chromecast Discovery + Bonjour + More)udp_vars="--id 1 --port 5353 --dev eth0 --dev eth1 --multicast 224.0.0.251 -s 1.1.1.1"(Chromecast requires broadcasts to originate from an address on its subnet)
SSDP (Roku Discovery, Sonos + More) --id 1 --port 1900 --dev eth0 --dev eth1 --multicast 239.255.255.250"
Lifx Bulb Discovery --id 1 --port 56700 --dev eth0 --dev eth1
Broadlink IR Emitter Discovery --id 1 --port 80 --dev eth0 --dev eth1
Warcraft 3 Server Discovery --id 1 --port 6112 --dev eth0 --dev eth1"
Once you have created the instance(s) you'll need to start them for the first time from the services widget in the lobby, just click on the start button that will have appeared there. After that you can start and stop them from the UDP Broadcast Relay menu itself.
NB - each instance should have a unique ID, 1 2 3 etc...
I'd like to try using the package, but the dropbox link appears broken. Thank you in advance for your assistance.
Just checked it and its working fine.
I did notice that dropbox now opens the txz file, but just click the download button and you get the full txz file to install.
(https://i.ibb.co/KsXb2JC/Capture.png) (https://ibb.co/dprjPRn)
Quote from: jhenderson0107 on May 02, 2020, 02:30:07 AM
I'd like to try using the package, but the dropbox link appears broken. Thank you in advance for your assistance.
pkg install os-udpbroadcastrelay-devel
is he running on dev? I did not see that.
This also works in production :)
OK, never knew that. So although you cannot see it in production plugins you can install it from the shell, you learn something new every day - currently I'm learning to do brain surgery...
Hi,
I just tested the current devel version of the plugin.
I was searching for a replacement for mDNS-repeater because I had timeouts after 5 minutes. The device is not reachable anymore from other networks after that period.
I tested the udp broadcast relay plugin with mDNS and it was working. Altough I needed to leave away the 1.1.1.1 or 1.1.1.2 as source address. With 1.1.1.1 it had the same timeouts like mDNS-repeater and with 1.1.1.2 the devices (HP with Bonjour service) didn´t show up on other networks.
With empty source address it´s working without timeouts.
As I don´t have a Chromecast I can´t test if this would fail in my setup.
Thank you very much for this plugin. Good work so far!
I've installed the package and all (almost all) works well, except onkyo broadcast.
I know onkyo sends broadcast using port 10102. I wasn't sure of broadcast address and with use of tcpdump I managed to observe that once broadcast address is set to 239.255.255.250 mobile devices in other subnets are able to send packets over respective subnet's broadcast address to onkyo receiver. Unfortunately, it doesn't allow for onkyo app to find and login to receiver.
I did try to set source address, use TTL for ID and nothing helps. Required ports in firewall are open between subnets. What am I missing?
Some manufacturers do weird things. Onkyo was not on the list of systems known to work with the original daemon. I'm afraid you might have to contact Onkyo and find out from them how they communicate with their apps if you can find nothing on the www.
Quote from: marjohn56 on June 22, 2020, 12:31:39 PM
I'm afraid you might have to contact Onkyo and find out from them how they communicate with their apps if you can find nothing on the www.
Thanks for a prompt reply. I've contacted them but the only thing I got was the answer from guy who used typical FAQ sheet and told me that all devices must be in one subnet. No technical info at all. I'll try one more time to contact Onkyo, maybe this time I'll be more lucky...
Thanks for providing this package!
I have followed the instructions to install and set up, but I cannot find my Sonos speakers over Airplay across VLANs. I actually believe this to be an issue with my switch (TP-Link T1700G-28TQ). Are there L2 and/or L3 settings I should consider while trying to configure the switch?
My network is a router-on-a-stick topology, with OPNsense trunked to the T1700 with Home and IoT VLANs. The T1700 switch is trunked to another switch with equivalent native vlan and vlan setup to which the WAP is connected.
Good question to which i do not have an answer. The way to prove or disprove is to use the port mirroring feature and see if the packets are being relayed across the VLANs. I use DLink switches and using port mirroring I am able to see the UDP packets being relayed. If you have set it UDPBroadcastRelay correctly, and it's pretty difficult not to, then you should be able to use Wireshark to see them. I would not have thought you needed to do any extra settings on the switches, mine are just set to basic settings with the VLANs set up and it works.
Shall we release this plugin as stable 1.0 version?
Cheers,
Franco
I'd love to step in and say "Hell yes" lol
@Franco - Yes, sorry, didn't see your post.. for some reason I appear not to be getting email notifications.
Quote from: franco on July 02, 2020, 04:09:14 PM
Shall we release this plugin as stable 1.0 version?
Cheers,
Franco
I just joined this forum, and am planning to switch from pfSense to OPNsense.
I currently have SONOS on a VLAN using PIMD, and this is one of the key requirements for me before switching to OPNsense. Happy to see this being released to a stable version :)
Forgot about this... will be officially released in 20.7.1.
Cheers,
Franco
Quote from: franco on July 31, 2020, 08:43:14 AM
Forgot about this... will be officially released in 20.7.1.
Cheers,
Franco
Great news Franco, looking forward :)
Quote from: franco on July 31, 2020, 08:43:14 AM
Forgot about this... will be officially released in 20.7.1.
Maybe.... 🤞
Looks like a "definitively maybe" to me. 8)
https://github.com/opnsense/plugins/commit/34ce960535
Now this is devotion! You guys rock 8).
Just migrated my printer to its own vlan and started to use this package successfully to forward MDNS for Bonjour/AirPrint discovery. :)
There seems to be only IPv4 support, do you plan adding IPv6 support?
I doubt it.
Do I need to add firewall rules to make this work? I added the SSDP and mDNS to UDP Broadcast Relay and I can see my three Roku devices for casting and can select them in the Roku app after about a 7 second delay.
I cannot see any of my chromecast devices.
All of my IOT devices are on the 40_IOT net and my phone is on the 10_Trusted net.
UDP Broadcast Relay setup:
(https://cwhits.s3.amazonaws.com/fugaciousness-rowdier-semianatomically-retaliation.png)
my firewall rules are pretty non-existant and the same on both interfaces:
(https://cwhits.s3.amazonaws.com/scampering-unhinging-captainess-severian.png)
mDNS Repeater is currently disabled. I tried adding an allow in rule on the 10_Trusted net for all traffic whose source is 40_IOT and that didn't work either.
I can see all the chromecasts, google devices and speaker groups in wireshark from 10_Trusted:
11 11.823222 192.168.10.1 224.0.0.251 MDNS 419 Standard query response 0x0000 PTR Google-Home-Mini-6b0461727bacfded14f5c854c4d4437f._googlecast._tcp.local TXT, cache flush SRV, cache flush 0 0 8009 6b046172-7bac-fded-14f5-c854c4d4437f.local A, cache flush 192.168.40.27
Any ideas?
Quote from: chelming on December 06, 2020, 06:38:33 PM
Do I need to add firewall rules to make this work?
did you figure this out and if FW rules were needed?
Yes, you will need rules. There is no way of knowing the address of the server responding an another LAN/VLAN OR the port it will respond on. Therefore you need ideally to have the server at a static address. For example, I use it for Sky, same ports as Sonos, so I have one rule on my IOT VLAN which allows the server to send traffic back to my primary VLAN. As I don't know what port it will use to send back to the client I have to allow all ports from that server, which I have also given a static address.
What's the current status of this package? I'm running 20.7, and I've installed the 0.5_0.6 beta, but it fails to run.
/usr/local/sbin/udpbroadcastrelay: Exec format error. Binary file not executable.
I see hints of it being installed in 21, but is there a version of those of us on 20.x stable?
Just install the package from the plugins. v1.01 is current.
Turns out I'm running 20.1.9.i386 - hence the binary not running.
Any chance there's a version for those of us still on the i386 version?
Not in the short term, up to my eyeballs with my real job. The source is available if you want to try and compile it yourself.