ZeroTier for remotely connecting to Roon

if anyone has been successful in geting Roon to work remotely (outside of the house from a mobile device) using zero tier (https://www.zerotier.com/) to work? I’m on a Mac hosting the roon core, and remote endpoints are iphone, ipad, computer. there’s multicast wizardry involved that is beyond my networking skills of today, but if anyone has gotten it working and would like to help me, I’ll document for the community with screenshots.

Nope, never heard of them.

However, you can use SSH port tunneling with a SSH App on Android (and I assume on an Apple phone as well) and if you set up NAT port forwarding on your Router/Firewall so that you can connect via SSH remotely to some system on your LAN in the same segment as your Roon core, then that’d work.

Perhaps that is exactly what Zerotier does for you, they sell you a box and a VPN membership.

You’re not going to be able to avoid the fact that RAAT is a pretty hungry protocol, regardless of how you tunnel in from outside your network.

I run ZeroTier. Works just fine for running the Roon Remote from a different physical network from the Roon Core. You must run ZeroTier directly on the Roon systems (both Remote and Core); it won’t work when using a single node to bridge an entire network to ZeroTier.

There isn’t anything to configure with regards to multicast; the default settings work out of the box.

(FWIW, I only use ZeroTier on Linux, Windows and OSX. I’ve never tried the mobile ZeroTier client.)

4 Likes

i have just found out this, and i’ll give a try.
i used to connect via OpenVPN, but now it does not work anymore, so i’m looking for another solution


it seems that IT WORKED!
i have to check from my office, but i tried to connect at home via a routing mobile (i.e. an external network) and i could connect with no problem to my home network.
roon core recognized immediately, streaming via mobile.

configuration:
roon core on a win 7 PC, roon player on a Win10 PC
no need to configure anything
no need to change firewall settings
everything simple

thanks for this suggestion, that is going to be definitive (multiplatform).

glad you got it working, i’m on roon core on a mac mini and haven’t gotten it working yet. i do know enough about networking to know i have the packets going through the ZT tunnel, but there is a multicast aspect that I can’t figure out yet that must work differently on Mac.

anyway… as everything is out there ready for remote streaming, we all hope in a native roon way to work it out

I can confirm now that ZeroTier works perfectly.
i’m using it now between my Win7 Roon Core and a remote Win10 laptop, and stream with no problem.
No configuration needed (vs previous OpenVPN solution, whiche required quite a work in configuration and then stopped working when i changed the router), even no firewall problems…

I could not make it work with the android mobile (with sim data), but i did not try to explore …

Zero tier works for me also on Mac mini to Android. No special settings just had to reboot the mac after installing. Even high res qobuz streams :).

Will try it in the car tomorrow

still unable to get this to work on Mac as the host (zero tier installed directly on host that runs roon core.) plex works. and with roon, i can see that the tunnel is working, because the broadcasts get through but nothing answers. zerotier or the mac aren’t allowing the broadcast responses, but also it seems that the iphone remote endpoint doesn’t default to sending via IP6 like on the lan. I made zerotier tunnel rules allow all to test, and same behavior. i validated i have broadcast and multicast allowed at both the OS routing level/network interface as well as in zero tier configurations. i see the following payload come through UDP IP4 broadcasts, but no response. and the endpoint client on the iphone just searches and searches. any ideas?

btw, plex seems to just work through the tunnel

UDP Payload (to broadcast address on my IP4 Zero Tier network exposed by Mac machine - this is captured via wireshark on the zerotier endpoint with remote attempts to connect from iphone)

SOOD.Q.config_version…1
service_id.$d7634b85-8190-470f->aa51-6cb5538dc1b9._tid.$2A93D6A9-2C29-4608-5FD6-4E1E934FA3C5

machine_id.$5d770334-72d8-4af0-a28f-0030e2eb4183 unique_id.$9e2d85e9-fe23-476a->9224-0f4e5873fe9d.machine_name…Headroom

os_version…iOS 12.2.is_dev…0.protocol_version…1.raat_version…1.1.36.tcp_port…61522 SOOD.Q.config_version…1

service_id.$d7634b85-8190-470f->aa51-6cb5538dc1b9._tid.$2A93D6A9-2C29-4608-5FD6-4E1E934FA3C5

machine_id.$5d770334-72d8-4af0-a28f-0030e2eb4183 unique_id.$9e2d85e9-fe23-476a->9224-0f4e5873fe9d.machine_name…Headroom

os_version…iOS 12.2.is_dev…0.protocol_version…1.raat_version…1.1.36.tcp_port…61522

Andy,
I have set up Zerotier on my Roon Core PC, and am able to access Roon Core from outside, even with my Microsoft Surface Pro PC(LTE version), with just LTE.

But for Android, I cannot do so with “LTE ON” and “Wi-Fi OFF”. When I launch the Roon client on my Android, I have this message showing “No Wi-Fi Connection”. (Zerotier on Android is showing it’s connected of course.)

May I ask what steps you took to get past the “No Wi-Fi Connection” page, as shown on your screen shot?

Thanks a lot in advance!

1 Like

It flashes that same wifi message very briefely too but then connects automatically…didnt do anything special…

Interesting. Mine doesn’t do that. May I ask other users if I am the only person having this problem?

I’m using ZeroTier on my Qnap together with Roon and I can remotely control any endpoint flawlessly when I’m out.

To find Roon Radio streaming while opening the door back from work is priceless! :grinning:

Btw I’m not able to use the iPhone as endpoint… And this would be awesome since I noticed that with my Bluetooth devices Roon sounds terrific. A way better than any native app such as Tidal or Qobuz.

I played with Zerotier (ZT) a year ago and gave up after a while, finding the setup experience a little complicated. I’m not inexperienced, running pfSense as router and a Ubiquiti wifi network, but got confused over routing, addressing and subnets. I recently gave it another try and this time have it working very nicely…

  • Home network is native 192.168.0.x addressing. I used the “Easy” in ZT at first with auto-addressing, but realised I wanted more ordered/memorable device addresses not random, even if they do stick, so tried advanced but that seems to not automatically add routes and wanted to keep things simple. So I went back to “Easy” and chose 172.22.x.x as the address scheme (you could choose anything), but manually set each device’s address. This worked well…

  • In the clients I have Allow Managed = YES, Allow Global = NO, Allow Default = NO. In my.zerotier.com I have ZeroTier RFC4193 and 6PLANE both ON.

  • No changes were needed to my pfSense firewall - ZT punched through.

  • What works very well now is my MacBookPro laptop connected remotely over ZT streaming from Roon running on Mac Mini at home. I have my MBP endpoint set to maximum 16bit/48khz in Roon DSP settings so that any high-res files get downsampled to limit bandwidth consumption.

  • What doesn’t work is connecting from Roon Remote on iPhone. Also, interestingly, I cannot connect from the same MBP when using personal internet sharing via USB or WiFi to the iPhone.

One thing I’ve been wondering… as mentioned I have DSP set to 16/48 maximum, and bandwidth appears to be about 200-300 kilobytes per second. If possible I’d like to reduce that further (quality unimportant to me when remote streaming). Presumably this is streaming via RAAT protocol. So does RAAT provide any kind of internal compression in the protocol? Is there a way to stream non-losslessly to a specific endpoint e.g. using MP3/AAC compression for the transport?

Thanks!

1 Like

Status report, my Roon core is on a Synology NAS with zerotier. I can’t see it from my iPhone over ZT, but I can connect OK from a MacBook Pro. So theres some essential difference in how the iOS client works vs MacOS. Ive tried bridge mode on and off, as ZT mention they handle multicast differently when bridging, but I haven’t detected any difference, although I may not be doing it completely right on the Syno.

Unfortunately, although I can connect to the core, it can’t see the MacBook pro’s audio devices back through the VPN, which kinda defeats the object…unless I want to play music at home for my cats when Im away.

Ill keep poking at ZT and bridge mode and report back if I get a breakthrough.

It doesn’t see the MBP’s default audio device e.g. internal speakers? Had you enabled that as an endpoint before starting the ZeroTier? Just asking as it worked for me…

Confirmed working with ZeroTier. So easy! Glad I found this topic, thanks everyone!

1 Like

the best would be a router with zerotier…

Or use an Android SSH client with port forwarding and tunnel your mobile in to your LAN and use your Roon remote / bridge on your mobile as if you were at home. At full bandwidth, mind you. But that’d be a free solution.