I suppose it’s possible to ignore IPv6 and solve address scarcity problems by large-scale adoption of NAT. NAT is already in wide use today, and it works very well for client/server applications, such as the Web and email, where the client is behind a NAT device. But NAT doesn’t work so well for peer-to-peer applications such as Voice over IP and client/server applications, where more than one server is behind the NAT device, and it severely restricts possible new applications, such as home automation or ubiquitous computing. To make NAT really useful as an address conservation technique, it would have to allow multiple servers/peers to share a single IP address. Because obviously two different server or peer-to-peer applications on the same IP address can’t share a single port number, this means the end of the “well-known port” concept. In essence, the TCP or UDP port number would become part of the address. The changes required to make this work are probably similar in scale to the ones needed to make IPv6 work. However, a lot of the work required to get IPv6 off the ground has already been done, so I don’t think we’ll see NAT as a permanent replacement for IPv6. Still, with NAT in place, it’s going to take a little more time to burn up the remaining unused IPv4 address space.