"Programmers can't get IPv6 thus that is why they do not have IPv6 in their applications"....

Jared Mauch jared at puck.nether.net
Tue Nov 27 22:27:56 UTC 2012


On Nov 27, 2012, at 4:30 PM, Bryan Tong <contact at nullivex.com> wrote:

> Personally I have ran into this dilema a few times.
> 
> The code just like network equipment needs dual stacks which is double
> the amount of code and since IPv4 and IPv6 do not share a native
> topology just supporting both kinds of addresses isnt sufficient.

I reject the above statement having operated networks with congruent v4+v6 topologies for over a decade.

Doing dual-stack is the easiest method.  Any modern hardware supports it.

If your upstream doesn't support IPv6, replace them.  There are plenty of choices these days for IPv6 services.  I've seen very large customer flows on single ports of IPv6 traffic (8-10Gb/s), so there is real traffic out there.

While this may not be feasible for all use cases, I found myself looking for internet access about a year ago and each ISP I contacted had simple checkboxes on their forms for IPv6 and it was a breeze to turn up.  (174/6461).  I know many others can deliver this service as well (7922, 2914, 3561, 7018, 3549, 6453) amongst others.

Even server hosting folks offer it as a checkbox as seen here:

https://outlet.softlayer.com/Sales/orderServer/35/14015

Single IPv6 address is free.. a /64 is $5/mo

Its readily available and you can get it via VPN while traveling if it's not already native (my Verizon LTE iPad does native IPv6).

It sounds like the threshold is "Didn't pay for a server to host my application with IPv6 and can't spend $20/mo for LTE access to have native IPv6".

> I agree that some of it comes down to knowledge; most programmers
> learn from experience and lets face it unless you go looking your
> unlikely to run into IPv6 even as of yet. I believe as the ISP
> implements IPv6 and companies get more demand on the customer facing
> side of things it will pick up quickly.

Sure, using gethostbyname() is certainly easier to find code examples, but not impossible to find other examples.

> In our datacenters all our software is built with IPv6 addressing
> supported but we have yet to build the logic stack as we are waiting
> for the demand. It makes no sense to build all the support just
> because when there are other important things to do.

There is something else.  Many people "cheated" and stuck a 2^32 number in an integer datatype for their SQL or other servers.  They don't work as well with 2^128 sized IPs.  They have to undertake the actual effort of storing their data in a proper datatype instead of cheating.  I've seen this over-and-over and likely is a significant impediment just as the gethostbyname vs getaddrinfo() system call translations may be.

- Jared



More information about the NANOG mailing list