Live data from Hacker News

Enabling IPv6 support for IPv4-only apps on Linux

blog.apnic.net

91–100 of 199 posts

Re: Enabling IPv6 support for IPv4-only apps on Linux

#91
post #86

Discord hardcodes ipv4 addresses and will not work for webrtc calls in DNS64 setup. In 2023 I consider it an insult to the internet as a whole.

I'm of the opinion that IPv6 is old enough that the fact we have not hopped to it yet means its not happening anytime soon. I wanted it back in 2008 when I first learned about it, and I know its older than that (90s iirc) so its either going to come one day "abruptly" by force and break half the internet, or people will do hacks to maintain IPv4 as is.

I think the only way IPv6 will ever become mainstream is if either the EU or US Congress pass a bill making it the preferred IP standard.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#92

Earlier quoted context omitted.

Also Android doesn't support DHCPv6

What's the benefit of DHCPv6 over SLAAC (genuine question, never looked into DHCPv6 at all)

The primary advantage is you can delegate prefixes over DHCP, but that probably doesn't matter for most Android devices

There are other advantages too, like if you want to assign specific addresses to specific devices without having to configure each device separately.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#93
post #71
post #51

I made a Terrible decision of a project at Netflix. The idea was that you could swap out an IPv4 (AF_INET/SOCK_STREAM) socket with an AF_INET6 one. Turns out actually doing this with the Linux kernel is exceptionally difficult. You can swap out the underlying sk, but doing it safely is damn near impossible because the two data structures aren’t really built like that. One day, I’d love if someone added the ability to…

Did you try just dup2()'ing a new socket file descriptor over the old socket file descriptor? Probably it bring other kinds of problems, but would be interesting to hear what they are.

Yep. You lose sockopts (trivially restorable), async ownership (less trivially restorable, but with some kernel patches, it’s possible), and epoll registration (which omg, wtf.).

The other problem is that we found runtimes that would immediately send data after a non blocking connect (or receive data), and you needed a way to kick these off again. It was really a nightmare to restore all that state in a running socket.

The real solution was to add a new address family, and patch the kernel (as opposed to a module), that could dynamically switch back and forth (think AF_KCM). Unfortunately, I never got around to that.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#94
So when and how will IPv6 become the absolute standard? I presume an act of government law would do it, otherwise, if tech companies got together to force the change en masse, that would also do it.

I don't understand why IPv6 has not become more prevalent over the coming years. Seems like we're taking baby steps and growing in our dependence on IPv4 IPs, although based on other comments here it sounds like at least Linux and Mac have a way to handle this transparently, not sure about Windows.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#95

Earlier quoted context omitted.

Why wouldn't you be able to disable IPv4 in the router ? Also, isn't trying to run both IPv4 and IPv6 inherently a security issue coming from the complexity of dealing with two overlapping networks with very different logic ?

Then how would you reach the IPv4-only internet (i.e. a large part of the Internet)?

It depends on your ISP, but providers are slowly switching to IPv6-only connections to their customers. The customer's router converts v4 to v6, and a translator at the ISP converts back to v4.

If you do the 4-to-6 translation on your own machine, your local router doesn't need to know about v4 at all. This is already happening with mobile networks.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#96
post #86

Discord hardcodes ipv4 addresses and will not work for webrtc calls in DNS64 setup. In 2023 I consider it an insult to the internet as a whole.

I'm of the opinion that IPv6 is old enough that the fact we have not hopped to it yet means its not happening anytime soon. I wanted it back in 2008 when I first learned about it, and I know its older than that (90s iirc) so its either going to come one day "abruptly" by force and break half the internet, or people will do hacks to maintain IPv4 as is. I think the only way IPv6 will ever become mainstream is if eithe…

Yeah, we need more incentive. Ipv6 is harder to implement yes, it is true, there is no point in denying this and arguing it solves tons of problem (it does). Most companies have ipv4 experience and it's just simpler. There must be some political pressure to make it move. But "hopefully" the economical pressure is starting to build up, a lot of providers are cheaper in ipv6 only configuration.

Still, for a company like discord, not even using host names to allow DNS64 is really sad.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#98
post #86

Discord hardcodes ipv4 addresses and will not work for webrtc calls in DNS64 setup. In 2023 I consider it an insult to the internet as a whole.

Discord not running in a browser on a system that can ONLY do 3 billion instructions a second is an insult to the Internet.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#99
post #73

Earlier quoted context omitted.

Please name and shame software/hardware that doesn't support IPv6 released after 2017 (when the IPv6 standard was finally finalized).

Any android phone

Android has had support for IPv6 since at least 2014, and there are plenty of mobile networks which are IPv6-only and work just fine with Android phones doing CLAT.

The only thing missing is DHCPv6, and that's a deliberate decision - albeit a somewhat controversial one.

Re: Enabling IPv6 support for IPv4-only apps on Linux

#100
post #87

I kid you not, WordPress.org does not support IPv6 to fetch plugins, themes etc. https://meta.trac.wordpress.org/ticket/3090 "The WordPress.org systems team DO have IPv6 plans, but at present there are higher priority tasks and there's no widespread requirement for IPv6 connectivity." Its not possible to run a WordPress instance and auto-update with IPv6-only and without any kind of adress translation.

Wordpress auto-update is fundamentally broken, anyway, which is why it's still one of the most popular phishing site hosting platforms out there.

This is sad, but not surprising.

Post reply on HN