&gt; you still need to upgrade all software on the planet and all routers on the planet.<p>No, you don&#x27;t. The biggest benefit to using IPv4 as the routing-infrastructure and extra bits (maybe an IP option) to describe the host is that most of the Internet (routers, etc) don&#x27;t need to get upgraded, only hosts. Routers don&#x27;t normally mess with the packets so only the first&#x2F;last wifi&#x2F;switch actually need upgrading. This is a small number of devices (certainly much smaller than all!).<p>There could be a few routers that lose the option, and one option is to just fix <i>those</i> routers (still a much smaller number than <i>all</i> routers), but another option is to rely on connection tracking only when the service is behind such a router. The ubiquity of UPNP suggests this path would have worked just fine.<p>NAT gives us a 32-bit port number pair, which requires memory, makes denial-of-service attacks easier, and is complicated. An IP option means that the hosts track the connection themselves.<p>Another option would be to move port numbers into DNS. This might&#x27;ve been simple (48-bit addresses are pretty big), and only affected new services. We upgraded all of the webservers and web browsers faster than IPv6 deployed, so this probably would have just been a simple matter of mothballing IANA.<p>However, I worry we&#x27;re not actually arguing about what we think someone a decade (or two) ago thought could be the direction to talk about solving a problem.<p>IPv6 is the biggest deploy attempted on the Internet, and it&#x27;s been miserable. We should be talking about its failings, its mistakes, and how we could do better knowing what we learned, not patting ourselves on the back for doing the best we could&#x27;ve done knowing what we knew. IPv6 might be inevitable at this point, but that doesn&#x27;t mean it was right.