ietf
[Top] [All Lists]

Re: Guidance needed on well known ports

2006-03-23 22:40:21
Noel Chiappa <jnc(_at_)mercury(_dot_)lcs(_dot_)mit(_dot_)edu> wrote:

Yes. Architecturally speaking, it's somewhat dubious that information
which really only needs to be localized to the host (application<->port
binding) has to be sent to the DNS.

It would be easy to run a tiny little USP "binding" server that took in
an application name (yes, we'd have to register those, but string-space
is infinite), and returned the port.

You may be interested to know that this is the direction we took with 
Multicast DNS and DNS-based Service Discovery (what Apple calls 
"Bonjour").

Every machine runs a little process called 'mdnsd' that answers 
peer-to-peer SRV queries.

The registry of "application names" (i.e. protocol names) is currently 
maintained at:

<http://www.dns-sd.org/ServiceTypes.html>

Right now there are a couple of hundred application-layer protocols 
implemented that work this way. They bind to zero, get a random port 
assigned by the OS, and then register that port with the local 'mdnsd' 
service.

The 'mdnsd' service also offers a workaround for the limitations of NAT. 
If you have a NAT gateway that speaks NAT-PMP (or the UPnP equivalent), 
then when the application registers its port with the local 'mdnsd' 
service, mdnsd talks to the NAT gateway, gets a public-to-private inbound 
port mapping created, and then mdnsd writes an SRV record into your DNS 
server (requires permission to update a DNS subdomain where Secure DNS 
Update is enabled) giving the *PUBLIC* IP address and port for your 
service.

The result of this is that when you turn on Personal File Sharing on your 
Mac at home behind a NAT gateway, then if you want to, you can advertise 
that service globally. The port number won't be the usual well-known port 
for Apple Personal File Sharing, but as long as the client looks up the 
service via SRV record, it will find the correct port to connect to. 
Details are given at:

<http://www.dns-sd.org/ClientSetup.html>

Stuart Cheshire <cheshire(_at_)apple(_dot_)com>
 * Wizard Without Portfolio, Apple Computer, Inc.
 * www.stuartcheshire.org


_______________________________________________
Ietf mailing list
Ietf(_at_)ietf(_dot_)org
https://www1.ietf.org/mailman/listinfo/ietf