I’m on Starlink (and therefore behind CGNAT), and Tailscale + ARC is working on my iPhone even though the Roon ARC settings in the main Roon app say it’s “not ready” (not surprisingly) as long as I initially setup the Roon ARC app while connected to my local network first. My Roon core is running in Docker on a Synology NAS. I have a RPi 4 running Tailscale with a subnet route to my local network. To make sure this wasn’t just a fluke, I tried deleting ARC and reinstalling it, and then tried to go through its first time setup with wifi off and connected to Tailscale. It saw my core but couldn’t connect to it. Reconnected to wifi to do the initial setup, then force closed ARC so I’d have a fresh restart. Turned off wifi and turned Tailscale back on. Now ARC connects fine and is playing both local and Qobuz tracks. I haven’t downloaded or played any of these tracks with ARC before, so I’m pretty sure it’s not pulling from cache or something.
I haven’t tested this very thoroughly but it seems like this might be a decent workaround for us CGNAT folks.