How I got Roon working over OpenVPN (hard for me, easy for you)

You have configured udp-proxy-2020 to use eth2. But eth2 only has an IPv6 address and not an IPv4 address. I’ve never seen any indication that Roon supports IPv6, but I do know that udp-proxy-2020 only supports IPv4.

So either remove eth2 from the list of interfaces, or assign it an IPv4 address.

Thanks for analysing.

That finding surprises me because my network is entirely IPv4. It entirely makes sense if it’s only configured for IPv6.

I will first try it out without eth2 and see if it works. I assumed eth2 was the Roon port and had to be included. If it’s not got the Roon IP address then maybe I’m wrong.

I will feedback. Thanks again.

You were right. I can get everything working using the Wireguard client on my MacBook. It works really well. Thanks for your help. I don’t know if you can help me with my next challenge, it could be out of scope.

Where I am now stuck is the VPN set-up on my travel router doesn’t work. The router acts as a VPN Proxy, although there are other modes. The proxied UDP messages are sent to the VPN client on the router according to the logs. I can see no difference between logs for Wireguard on MacBook and Wireguard on travel router, but they seem not to reach the client devices attached to the travel router.

My guess is that as I go from 192.168.4.0/24 (Wireguard) to 192.168.8.0/24 (Travel Router) networks the data is not broadcast. If I have time I’ll work out if I can see data in the network using something like Wireshark although I’ve not used it before. Either the VPN config needs changing, there is a firewall rules in the way or I need to run udp-proxy-2020 on that too, but I don’t know if that’s possible.

Yes, if you want a more “site to site” VPN, ie: two routers, then you will need to run udp-proxy-2020 on both routers.

1 Like

That’s great, at least I know what I need to do now. Thanks for help troubleshooting.

Whilst it’s a small sample size, I know two Roon users using these GL iNet devices, which are based on openwrt. Is this something you’d consider making a release for or does one of the existing binaries work already?

I really have no idea what kind of hardware that is. OpenWRT is just Linux. Have you tried the existing Linux binaries?

If it is one of the GoLang supported hardware architectures then it might be possible: Go (Golang) GOOS and GOARCH · GitHub

I’ll have a go and see what happens.

Looks like it works nicely with a binary, i.e. it runs fine on the travel router. Very easy.

Now I just need to get the two UDP Proxies exchanging data correctly. I’ll re-read the site to site vpn thread again, but where I am now is tinkering with the --fixed-ip setting to see if that helps.

When I open Roon I can see both UDP proxy instanced do something, but I’m not sure it’s completely working because my MacBook is not seen as an endpoint yet.

I have ROCK on 192.168.1.40, Wireguard client on 192.168.4.2 and my MacBook on 192.168.8.186. I figured if I made each device a fixed IP in the config for each UDP Proxy it would work.

On the UDR I run this command:

udp-proxy-2020 --port 9003 --interface br0,wgsrv1  --level debug --fixed-ip br0@194.168.1.40,wgsrv1@192.168.4.2

On the travel router I run:

./udp-proxy-2020-0.0.11-linux-arm64 --port 9003 --interface br-lan,wgclient  --level d
ebug --fixed-ip br-lan@192.168.8.186,wgclient@192.168.4.2

I’m getting there and appreciate your help.

I’ve documented site-to-site here: How I got Roon working over OpenVPN (hard for me, easy for you) - #272 by Aaron_Turner

Due to everyone’s network is a total special snowflake and debugging remotely asynchronously is extremely painful, that’s the limit of my help at this time.

1 Like

I totally get it. A bunch of non-standardised kit in the hands of an amateur is hard to support. Thank you for building the software and providing guidance so far. I started the repo as instructed.

If/when I get this working I’ll contribute here so others can learn from my experience.

1 Like