> It isn't that simple. The fact that NAT exists and is seen as useful
> by many people (whether or not they are even aware of it) means
> services and applications need to be aware of it.
This is a hidden cost of NAT. Why hack many applications to work around
a network layer problem ?
The best place to fix a problem is where it actually exists. The
problem NAT tries to solve, but doesn't solve very well (see the
earlier list), exists in the network layer. IPv6 fixes the network
layer problem that IPv4 has, and it fixes it better than NAT does. IPv6
isn't perfect, but nothing ever is.
I think that you've misidentified where the problem really exists.
I'd suggest that it exists at a higher layer. If I'm a resi broadband
subscriber, and I buy an "Internet connection thingamajigger", I may want
to hook up more than the one device I'm allowed, in a hypothetical IPv4-
only world that works like the one we currently have. And yes, while SOME
ISP's do allow you to obtain additional IP addresses, it is certainly not
common, nor is it without a monthly cost. Smart end users WILL identify
that things like "Internet Connection Sharing" or a NAT gateway will
eliminate this cost.
So, one of the real problems is that ISP's sell connections "for a single
device" to end users. Another problem could be that these are dynamic IP,
which makes ever less sense given the nature of always-on Internet access,
and the increasing plethora of Internet-capable devices one finds in a
I realize that these things have typically been differentiators in the
service offerings of an ISP, but if you really want to be able to get rid
of NAT and truly "go IPv6 native", you're going to have to get rid of the
incentives to put a NAT device in, and give end users blocks of address
space sufficient to the task.
Most proponents of IPv6 seem to be operating under the assumption that
an ISP will hand out a block (the latest I recall seeing is RFC 4779,
which suggests a /64, IIRC). That would appear to be sufficient to the
However, I am left wondering what is going to happen in the event that
you're dealing with a service provider who really wants to spec out that
a single client is allowed to attach? Because there's a loose correlation
between the number of clients behind a connection and actual utilization,
carriers have an incentive to limit this...
To really encourage the avoidance of NAT, we really need to move to
service models where Internet connection sharing is expected and allowed.
Limited to within a household? Not technically possible, of course, but
you can certainly /write/ such a restriction into the contract.