Roon over (any) VPN that actually works

For a year now I’ve been running Roon on my FIIO M17 at work, used with Tailscale.

It’s been working great. I do have to sometimes restart tailscale a few times for it to have the M17 as a playback device.

My NAS and Roon server are at home and I have tailscale installed on the Roon server box.

I recently brought in my FIIO K15 to use at work. I also have a GL.INET Slate 7 that I use tailscale on. But I an unable to get Roon to see the K15. Even Roon doesn’t see my phone (connected to the Slate 7) But if I enable tailscale on my phone it works (still connected to the Slate 7, so double tailscale’s running)

I also tried to use wireguard. I enabled wireguard on my Unifi Dream Machine Pro. But still the same.

Any ideas? or other options so that I can get Roon to see the K15?

I have a spare PC at home that I am happy to install any other software that can help.

Thanks all

@DSD_Fan I don’t have experience with the GL.INET Slate 7, but did find some related posts on their user forums that might help you troubleshoot.

First post describes an issue using an older version of Tailscale on the Slate 7

Second post is one Slate 7 user’s path to upgrading their Slate 7

Don’t know if your Roon server is running on Linux, so the third post may not be relevant in your situation

1 Like

Thanks for that Dadoo,

I have tailscale up to date. I can see Roon no issues. The issue is it won’t see the K15 within Roon. I see all the home devices, just nothing on the work side.

Do the 3 scenarios below describe your network setup correctly?

Almost bang on :slight_smile:

For number 1, it’s M17 (tailscale installed on the M17) then office internet then to home internet

Corrected Scenario 1…

It’s amazing that the tiny FIIO M17 can run Tailscale; acting more like a portable computer than a portable DAP.

Since Scenario 1 is successful, what do you think of replicating that setup with the FIIO K15?

  • Not use the GL.INET Slate 7
  • Install Tailscale directly on the FIIO K15

If that’s not possible or desirable, you could experiment with the following:

  • On the GL.iNet Slate 7, configure Tailscale to advertise its LAN subnet (I’m assuming you have shell access)
    • tailscale up --advertise-routes=192.168.114.0/24
  • Login to the Tailscale admin console and approve the 192.168.114.0/24 route in the Slate 7 device settings
    • That should allow the Windows PC to send packets for the FIIO back through Tailnet

Here’s my hypothesis why the GL.INET Slate 7 and Tailscale scenario fails:

  • Outbound path (FIIO → Roon Server)
    • FIIO K15 (192.168.114.200) sends connection requests to the Windows PC (192.168.1.100)
    • GL.INET Slate 7 routes the traffic through Tailnet and may be SNATing
    • Windows PC receives the packets
  • Inbound path (Roon Server → FIIO)
    • Roon sends multicast and RAAT discovery packets to its local subnet but they never reach the Roon Remote
    • Windows PC looks at its routing table and sees 192.168.1.0/24 and 100.80.0.0/10 but has no idea about 192.168.114.0/24 (FIIO K15) - the PC knows about its subnet and Tailnet, but is blind to devices behind the Slate 7

I’ve installed Tailscale once and tested it’s capabilities and features, so take the above with a grain of salt (or maybe a handful). I’ve read the Tailscale documentation and put together a bunch of hypotheticals. Hopefully I’m not wasting your time.

I have a late night (or should I say early morning) playing around with this. I’ve done a lot (even with ZeroTier) and no matter what I do, I can’t get any of the remote audio devices to show up in Roon.

So looks like I’ll take the K15 home and use the M17 as that works somehow

Thanks for the information. Lets hope one day we can do this easier