Closed sjtuross closed 11 months ago
based on the pcaps you've provided, your phone is not responding to the queries from your Roon Core. This would explain your problem. Generally speaking this seems to be a Roon client bug. Best I can say is to fully quit/exit Roon on your phone, make sure you are connected to VPN first, and then start Roon.
This issue is stale because it has been open for 14 days with no response from the reporter. It will be automatically closed in 14 days from this message.
This issue was closed because it has been inactive for 28 days.
Hey @synfinatic I think I found the cause. See the screenshot below from the pcap I originally provided. The phone app communicates from a dynamic port 50188 and the core connects back to it. If this port is not forwarded, connection fails, and then the core falls back connecting to 9003 which the phone app is not listening on I believe.
So I tried including 50188 as one additional port, the phone device can be discovered as audio device and it plays fine.
./udp-proxy-2020 --port 9003,50188 --interface eth0,wg0 --level trace
The remaining problem is that the dynamic port could change time to time. Sometimes it's 52027. Do you have any suggestion how to solve this?
Hi @sjtuross,
Yes, the Roon clients open an ephemeral, high numbered port. This port is fairly random and determined by the underlying OS's TCP/IP stack. However, if you look at your screenshot, you'll see packet 4 has a destination port of 9003. So this packet is being forwarded by udp-proxy-2020.
Anyways, the thing is that udp-proxy-2020 only really needs to forward broadcast/multicast packets. Packets with unicast addresses (your phone or Roon Server) should be forwarded by your router/firewall where udp-proxy-2020 runs. So if you need to specify ports other than 9003 or to unicast addresses like you have highlighted, that means your firewall/router isn't configured correctly.
Thank you for the insights. It works now. The problem is that the routable ip range set on my phone for wireguard vpn is too strict.
I tried my iPhone and Android devices. Both are not discovered as audio devices when Wireguard VPN is on, although they can connect to roon core (version 1.8) while your tool is running.
I run the latest release 0.0.11 on OpenWrt x64 router with the below command. I checked this issue #95 but I don't do NAT in my Wireguard setup. Could you take a look the attached log and pcap files and advise how I can troubleshoot further? Thanks a ton!
./udp-proxy-2020 --port 9003 --interface eth0,wg0 --level trace
pcap.zip