Hey @ChuckPa Thanks for the response, Here’s the responses to your questions. Great news that engineering is looking into better IPv6 support, it will be a hidden benefit for all. Hopefully we can get NAT64/DNS64 support first since its the lowest hanging fruit. All my subs stream without issues even the IPv4 ones which I’ll explain lower this is just an issue with scraping/PubSub’s:
Do you have dual stack capability ?
I pulled it since it was silly maintaining dual stacks across my network, I’m currently running ~16 sites with ~200 /64 subnets so migrating to IPv6 was a much cleaner solution to the mess of RFC1918, IPv4 NAT and IPv6. All of my sites support native Public IPv6 so it was a simple migration especially since I run my own name servers via BIND9. The minimal amount of IPv4 traffic is handled via NAT64 and currently dumps out of my data-center instead of the individual connections to get around carrier CGNAT. Check out my advertised FQDN via dig/nslookup to show what I’m talking about, my IPv4 prefix is not in the same AS as my IPv6 one.
Does your modem/router handle NAT64 transparently?
No, its stateful. I’m currently running Juniper SRX series devices which are built for this. If you want some more info I can share some examples of my NAT64 and NAT46 configurations to “get back” to my IPv6 Plex server via outside IPv4 addresses. Here’s an example like what I’m running, its pretty cool:
Does the modem/router create an IPv4 LAN with an IPv6 WAN ?
No, all my “LAN’s” are pure IPv6 again for ease of management. Its really nice to not have to deal with NAT for most of my flows. Any IPv4 traffic actually originates as an IPv6 flow that the router NAT64’s into a IPv4 flow on egress to the WAN. This is because the applications do a DNS lookup for the IPv4 record and my DNS servers return a synthetic AAAA IPv6 address. The application networking is IPv6 aware so it just uses the address from the DNS record. Notice the 64:ff9b:: prefix signifying NAT64/DNS64.
; <<>> DiG 9.18.30-0ubuntu0.24.04.2-Ubuntu <<>> aaaa plex.tv
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16668
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;plex.tv. IN AAAA
;; ANSWER SECTION:
plex.tv. 45 IN AAAA 64:ff9b::36dc:9c43
plex.tv. 45 IN AAAA 64:ff9b::22fa:7b37
What happens when you remove the PubSub references?
After pulling the variables in Preferences.xml it attempts to directly connect to a list of IPv4 addresses,which is what I was expecting. I wireshark’d the flow and it appears to connect to pubsub.plex.tv for a list of IPs but since its HTTPs I can’t see what the full request is.
2415 9.983835 REDACTED:502::8 64:ff9b::ac68:da65 CS0 TLSv1.2 402 Client Hello (SNI=pubsub.plex.tv)
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 151.236.217.85 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 139.162.134.185 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 172.105.203.197 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 172.104.217.190 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 172.105.13.59 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 45.118.132.58 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 45.33.119.35 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 45.56.91.127 failed: Network unreachable.
Mar 30, 2025 18:00:55.742 [136674134731576] WARN - [PubsubServerManager/process] Connection to 50.116.44.223 failed: Network unreachable.
This matches what another user was having issues with, even if we could MITM feed a new list of servers or just have a variable we can set via Preferences.xml that would be a HUGE improvement.