Remix.run Logo
nine_k 3 hours ago

Routing of this additional /16 is more tricky and non-uniform though. NAT, hole-punching, all that.

WorldMaker 2 hours ago | parent [-]

Which is the exact problem any other IPv4 "extended" proposal would have hit. But the practical reality if the port number really was the only freely available bits in the IPv4 header to reasonably extend into. Almost everything else had ossified middleboxes doing something dumb with it. (And we've seen from NAT/hole-punching/etc how even port numbers had a lot of assumptions to overcome from middle boxes and we aren't using a full /16 there either. A lot of the safest traffic has to be > 10,000, a constraint on 14 of those 16 bits.)

There was never 64-78 bits in the IPv4 header unconstrained enough to extend IPv4 in place even if you accepted the CGNAT-like compromise of routing through IPv4 "super-routers" on the way to 128-bit addresses. Extending address size was always going to need a version change.

bombcar an hour ago | parent [-]

DNS SRV records actually can identify a port, so for "many" uses it would be transparent.

I've rarely seen it used in practice, but it's in theory doable.