Hi Benjamin, thanks for looking into this.
One important correction first: I don’t have an exit node configured at all. My tailnet contains only two devices, my iPhone and the ROCK, and the ROCK can’t act as an exit node — RoonOS only exposes a basic Tailscale login, with no way to advertise it as one. So Tailscale is only routing the 100.64.0.0/10 range so ARC can reach the Server, and ARC’s Qobuz connection already goes out over my normal 4G connection, which is the configuration you’re describing as the fix.
To be precise: the Tailscale app on my iPhone doesn’t even offer an exit node to select. The only option under Exit Node is “Run as exit node”, which would advertise my phone as a gateway for other devices — the picker for using one doesn’t appear because no device in my tailnet advertises itself as an exit node.
I ran your sanity check: with Tailscale connected or not on 4G, a “what’s my IP” page shows the same my mobile carrier’s address (93.34.48.20), not my Starlink address.
I also don’t think the Starlink CGNAT theory fits my results. When I use ARC on my home Wi-Fi, its Qobuz traffic leaves through exactly that Starlink CGNAT address, and playback works fine. If Qobuz were filtering that range, ARC at home should fail too.
Here is everything I’ve tested so far:
| Network |
App |
Tailscale |
Qobuz playback |
| 4G |
Qobuz native app |
connected |
works |
| Home Wi-Fi |
Roon ARC |
connected |
works |
| 4G |
Roon ARC |
connected, no exit node |
fails |
Disabling Tailscale’s DNS on the iPhone made no difference — the error is identical with it on and off.
So the only combination that fails is ARC requests leaving from my mobile carrier’s network. Same account, same Server, same app working from a different network. That looks much closer to the April pattern, where ARC-specific requests were caught by Qobuz’s filtering rules depending on the network they came from.
On MTU: since ARC’s Qobuz connection never enters the Tailscale tunnel in my setup, I don’t think that applies here either. It would become relevant only if I actually set up an exit node — which I’m happy to try as a test if you think it would tell us something useful.
To answer your last questions: every Qobuz tracks and every album fail (both HiRes and CD quality) and it’s consistent.
Thanks.