Assigning IPv6 /48's to CPE's?

1 IPv4 Class A is approximately 0.39% of available IPv4 space

Uh.... hu? It's worse than that... at least a bit.

Disallowing 0/8, 10/8 and 127/8, you wind up with 125 Class A address
prefixes, and assuming that each of these can be used all the way up to
the theoretical 16,777,216 addresses, then we have 2,097,152,000
addresses there. For the non-math folks, that's ~= to 2.1*10^9.

If we then further count Class B's as all prefixes from 128.0/16 to
191.255/16, excluding the first, last, 169.254/16, and 172.16/12,
there are 16,349 Class B's, with a theoretical 65,536 usable
addresses in each, then we have 1,071,448,064 addresses there.

If we then further count Class C's as all prefixes from
to, and there are a few blocks in there that ought to
be excluded, but who cares, that's 2,031,616 networks of 256 addresses,
or 520,093,696 addresses there.

I don't realistically believe that D or E are usable general-purpose
address classes within the expected remaining lifetime of the protocol.

So, we have:

1 ClassA= 16,777,216
All IPv4= 3,688,693,760

So it's closer to .5%, theoretical. It's even more interesting if you
look at it after excluding allocated-but-not-announced space. I'm
personally glad that all those Class C's aren't announced individually..

... JG