Subject: To address or NAT to address?

From: Graham Klyne <[email-masked]>
Date: Tue, 30 Nov 1999 19:42:53 +0000

At 09:15 30/11/99 -0500, Daniel Senie wrote:

>> In any event, I've always personally been of the opinion that
>> if applications don't work in the face of NAT, then the
>> applications themselves are functionally deficient and should be
>> fixed.  :-)
>
>Indeed. While some in the IETF have stomped their feet and railed about
>how bad NAT is architecturally (something I suspect most folks concede)
>they've somehow believed it would be possible to offer a better solution
>and get NAT eliminated before it's widely deployed. Reality: it's
>extremely widely deployed, and must be taken into consideration when
>designing protocols. Those, like Real, who find ways to make their
>protocols work with NAT clearly will do better than those who do not.

[...]
>We are at a crossroads where architectural purity has intersected
>operational reality.

Some similar thoughts have been stirring in my sluggish brain...

It seems to me that we may be able to recapture some aspects of end-to-end
transparency at the application level if addressing issues are focused on
host FQDNs, rather than IP addresses.

- Application protocols that transfer addressing information as FQDNs
rather than IP addresses don't get messed up by NATs.

- FQDNs are (or can be) relatively stable over time, even if the IP address
to which it refers may change.

- FQDNs form an "address space" that can, for practical purposes, grow
indefinitely.

I don't claim this is a solution to all problems, just suggesting that
application protocol design has a part to play.

#g

------------
Graham Klyne
([email-masked])

---

From: "Matt Crawford" <[email-masked]>
Date: Tue, 30 Nov 1999 14:32:44 -0600

> host FQDNs, rather than IP addresses.

Forget about it.  Many of the same folks doing NAT also do a
two-faced DNS which hides most of their names from the outside.  So a
host inside such a site has no more idea of its global name than of
its global address.

---

From: "Matt Crawford" <[email-masked]>
Date: Tue, 30 Nov 1999 14:32:44 -0600

---

From: Keith Moore <[email-masked]>
Date: Tue, 30 Nov 1999 22:49:55 -0500

> host FQDNs, rather than IP addresses.

this works to some extent.  it specifically doesn't work for applications
that need to rendezvous with specific processes on specific hosts
(or which need to use specific interface addresses, say for performance
reasons), since a single FQDN often corresponds to multiple hosts.
(or, less frequently, to multiple addresses on a single host).

note also that DNS is often slow, and seems less reliable than IP.
by increasing the reliance on DNS you increase the probability of failure.

---

From: Keith Moore <[email-masked]>
Date: Tue, 30 Nov 1999 22:49:55 -0500