We are rolling out IPv6 initially with a single IP address to see how the network side of things handles that since we have already a large deployment of IPv4 and then evaluate from there.
Is this a single IPv6 address sharing the same /64 with stateless auto-configuration, or static?
The implementation is important, over the years I've had annoying experiences with certain providers trying to do IPv6 - but not getting things quite right:
Hetzner - Gave customers a /64, but using additional IPv6 addresses required setting up proxy NDP - which at the time was annoying as only more recent Linux kernels supported it. I believe they've improved on this since though.
OVH - Requires setting up a default route outside of your normal netmask - this isn't fun. We don't do this with IPv4 - so why do some providers do it with IPv6?
Linode - Enables IPv6 auto-configuration, so many servers share the same /64 by default, and they give accounts "pools" of /116 allocations. Sites like Google considers all of them to be part of the same /64 network - so your server will probably have trouble accessing certain resources if another server is doing excessive queries.
Only tangentially related, but Linode gives each server a /128 by default, and gives out /56, /64, and /116 for free on request. I use a /56 to do my own subnetting and other fanciness.
A _single_ v6 address? Are you serious? I guess we'll never get rid of NAT and other idiocy if people seriously allocate single IPv6 addresses to customers ...
I'd eat my hat if it stays that way, as far as I know it's just while we test ipv6/deploy it to more regions, eventually we'll get with the program, so to speak. :D
A single IPv6 address suggests strongly that they are doing it completely wrong. A /64 is the equivalent of a single ipv4 address, and you should never be allocated less than this.
Well, and unless I am mistaken, they still route the larger subnets to your interface rather than to your machine? There it nothing wrong with testing stuff with "small" subnets, even if it may be a bit pointless, but my point is that a setup that provides you with a single address just has a structure that cannot really easily be changed in a sane way into a setup that provides you with larger subnets.
A sane setup should use a transfer net on your interface, and should route your actual address space to your gateway address on that transfer net - otherwise you'll need ugly hacks such as proxy-NDP in order to be able to route addresses for sub-allocations. This flat setup without a transfer net was invented for IPv4 when IPv4 addresses became scarce, so it was a necessary evil, but it's a stupid setup that causes nothing but pain when you have billions of /64s available.
That is the reason why I don't understand why anyone would even test with single-address allocations.
The implementation is important, over the years I've had annoying experiences with certain providers trying to do IPv6 - but not getting things quite right:
Hetzner - Gave customers a /64, but using additional IPv6 addresses required setting up proxy NDP - which at the time was annoying as only more recent Linux kernels supported it. I believe they've improved on this since though.
OVH - Requires setting up a default route outside of your normal netmask - this isn't fun. We don't do this with IPv4 - so why do some providers do it with IPv6?
Linode - Enables IPv6 auto-configuration, so many servers share the same /64 by default, and they give accounts "pools" of /116 allocations. Sites like Google considers all of them to be part of the same /64 network - so your server will probably have trouble accessing certain resources if another server is doing excessive queries.