Wait. Does this mean if my home network is IPv6 and my wireless carrier is also IPv6 I can use the normal Roon app and not ARC while not at home?
I donât think that is likely.
Whilst IPv6 does not employ NAT (at least not usually) and all IPv6 connected devices (usually) have a public IP address, IPv6 does still embody the idea of subnetting which means that multi-cast packets will still normally be restricted to the local subnet.
Thus device discovery is still likely to be limited to the local subnet.
If that was the case, they would have mentioned it. As @Wade_Oram wrote above
Yeah, I know how roon discovery works for the normal Roon App (not ARC)⌠If this is just about IPv6 and ARC then why mention âRoon Remotesâ? Or is this really just about the CG-NAT problem with ARC?
Also: "Additionally, Roon Remotes first look for your Roon Server on your local network. If they canât find it, they try an internet-based method. "
I honestly canât tell if theyâre just talking about ARC or the normal Roon app. I mean, donât get me started why we have two apps and the terminology that goes along with it.
They explained it in the note. They had a fallback via the Internet and Roon cloud servers, which regular remotes would use if server discovery failed locally, which only applied in networks with subnets etc
Iâve never seen regular Roon client (not ARC) be able to discover a server across subnets without the user doing some serious tinkering. The normal Roon client & server as of a few weeks ago as best as I can determine relys solely on broadcast/multicast packets on UDP/9003 to discover each other. I mean it definitely didnât work across subnets two weeks ago when I was testing. ARC client is different and uses an internet server to discover the Roon server behind your home router/firewall. Of course you can also use ARC at home, which is why it seems this IPv6 thing is really about ARC only.
I mean, Iâm not a Roon employee so Iâm not the actual expert on this. But as the person who wrote GitHub - synfinatic/udp-proxy-2020: A crappy UDP router for the year 2020 and beyond to deal with this specific issue for the traditional Roon client (before ARC existed) and also the Wireshark dissector for the Roon Discovery protocol Iâm fairly well educated on this matter. Of course things change and it would be great if all these hacks werenât neccessary anymore.
I donât expect this to change. If it did then Roon would have made a big and much more explicit issue of it in the announcement. As it stands, Roon have always been very clear that, ARC aside, Roon is architected to operate only on the local subnet.
This is not quite correct. It is correct for IPv6 where the Roon Server registers itâs public ip address on the Roon Cloud servers and from where it is retrieved by ARC and used to connect directly to the server (assuming an appropriate IPv6 firewall exception/pinhole has been configured).
However, for IPv4, only the public ip address of your router (the one handling the internet connection if you have more than one) is made known to the Roon Cloud servers. In fact, in the absense of VPNs, this is the only ip address that any application outside of your network can use. This router ip address is then retrieved by the ARC app and used to connect to the router as if it was the ip address of the Roon Server. It is then up to the port forwarding rule on your router to pass (or forward) that connection to the Roon Server. The router port forwarding is configured either automatically (by uPNP/natPMP) or manually via an explicit port forwarding rule. If the router does not have the appropriate port forwarding rule in place, then the connection will be refused by the router itself.
And maybe thatâs the reason for why they are removing this code now.
Nevertheless, this was the reason for why the note spoke about Roon Remote, which was your question
Yes, that is my understanding. And maybe my source of confusion is what is âRoon Remoteâ? I have a Roon Server and multiple Roon Clients on my home network (and other places, but again âtinkeringâ). Is the âRoon ARCâ another name for âRoon Remoteâ? Naming⌠how does it work?
You are of course technically correct. I was too lazy to explain the difference in detail, because it wasnât relevant to my question about the Roon app. ![]()
Honestly, at the end of the day I find ARC to be a worse experience than using udp-proxy-2020 w/ VPN most of the time⌠ARC is great if on a plane, but other than that
. I Sounds like nothing in this announcement changes any of that.
Roon Remote is a term often used to indicate the standard Roon Client on mobile devices (iPhone, iPads, Android phones and tablets). Going back a while the Android and IOS apps were actually called âRoon Remoteâ in the respective app stores. These days the are just called âRoonâ.
And Roon Labs themselves are very sloppy with their own terminology, so users and Roon staff alike will also call any PC client a remote. Essentially, every Roon app that is not a Roon server and is used to control Roon.
Youâre hoping that this change makes your life easier? I wish I was optimistic like you. I think itâs more likely to break your setup than to make it work better.
I get that since Roon is dead set on not deploying a proxy for ARC, it doesnât work for users on CGNAT or who canât, for whatever reason, just forward an IPv4 port. I think itâs a big stretch to believe that making Roon run dual stack will significantly increase the number of users who can get it to work without something like Tailscale. I canât imagine itâs going to be trivial to get those struggling users set up with routable IPv6 and the right firewall rules.
What I donât get is what other changes theyâre making. Iâm with @Aaron_Turner in being surprised about the assertion that Roon remotes use an internet discovery service to find Roon servers on different LAN segments. Iâve never been able to get Roon and remotes to work across vlans without deploy Aaronâs excellent proxy. So I have no idea what theyâre referring to when they hint at some sort of discovery service and they seem to be implying that these changes are going to break people with non-standard setups. That has me worried.
Right? So when they say:
Additionally, Roon Remotes first look for your Roon Server on your local network. If they canât find it, they try an internet-based method.
They seem to be saying the âRoonâ app (not âRoon ARCâ) will use this âinternet-based methodâ which we all seem to agree isnât a thing? ÂŻ\_(ă)_/ÂŻ
Anyways⌠Iâm kinda bummed, but not surprised that I still have to run my proxy to get Roon to work across subnets.
It did surprise me, too. Maybe it worked for a small number of people with certain segmented setup types even though their configuration wasnât quite up to par, and we never heard from them because, well, it worked.
What kills me is you can type in the IP address of your Roon server in the app and it still canât âconnectâ properly. They could use that IP address to send a unicast UDP packet to the server and that would be enough to bootstrap the Roon client on another subnet. But they choose not to do that.
You left off the rest of thatâŚâThis method is the one we are changing.â Meaning that is the current methodology and they are closing it. At least that is how I read it.
I have no idea what youâre trying to suggest. Nobody is suggesting that this change makes any modifications to local discovery over UDP/9003.
Honestly, I donât understand why Roonâs communication on this is so unclear. Most people have no idea how IPv6 works and using terms like âRoon Remotesâ and âinternet discoveryâ which are poorly defined is not helping.
Why they couldnât just say:
Weâre changing how Roon ARC discovers your server to support IPv6. This is to help those who have their Roon Server behind double-NAT/CG-NAT. This change will have no impact on those of you using the normal Roon client on your phone, laptop or other Roon client endpoints. If you are using Roon ARC and your ISP supports IPv6 please continue readingâŚ
So this change is just about Roon ARC usability? I donât use ARC, so perhaps this change doesnât apply to me.
The announcement seems aimed at those with IT/Network knowledge, certainly much more than the average user (like me). There was mention of users being âpreparedâ, but I have no clue how that applies to me and my simple setup. I guess Iâll find out if Iâm affected when the switch occurs.
uPNP/natPMP
double-NAT/CG-NAT
IPv6
IPv4
UDP/9003
GUA
pv6 prefix, dns + ipv6 prefix + ipv6 adress
dhcpv6
OMG
Us mere mortals have no idea what all this means ???
???
This just confirms why my favourite topic in the community is:
They might have said exactly that if it represented the full extent of the changes.
They are changing something about how Roon remotes discover servers. The reason weâre confused is that they have implied that a discovery mechanism exists: the use of a cloud-discovery service to help a remote find a server on a LAN. You, @Aaron_Turner, me, and others have empirical evidence that this mechanism doesnât exist.
At best, thatâs weird. But the concerning thing is the sense that this post is some combination of a warning or a call to action for some of us, but thereâs no way to understand it without more information.
I hope that whatever theyâre actually doing is a net improvement of the product. Unfortunately, it seems that itâs just taking them further down the road of requiring users to do complicated things to solve Roonâs network code choices. Your proxy for those of us with vlans. Tailscale for ROCK users with CGNAT. Now, IPv6 firewalls for non-ROCK users with CGNAT.
I understand they probably donât like the cost and/or complexity of running a proxy for ARC users but come on. Seriously.