I'm sure this is an incredibly dumb question: but why does a peer need to think of being a TURN server (by presumably "testing" if it is behind a NAT)?
Wouldn't it work if all peer always try to be TURN/STUN servers? A peer would advertize a TURN server for the any public IP addresses it has. That includes both local public IP addresses as well as self-discovered IP addresses (gathered through STUN using other peers). If it happens that the peer is behind a NAT that does not have an endpoint independent mapping, then it just won't receive any TURN/STUN packets. The algorithm could work something like this, upon connecting to the network: - If local IP address is public then advertize it (both STUN and TURN) - Then, when another peer STUN server is discovered, discover if you have another public IP address binding (that would occur for example if you have NATing of public IP addresses) - Then advertize new IP address (both for STUN and TURN server) on discovered IP address and port - And so on You just won't get any incoming STUN/TURN destined to your local IP:port if you are NATed (public to public). Similarly, you won't get any incoming STUN/TURN destined to your discovered IP:port if the NAT is not endpoint-independent. > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Cullen Jennings > Sent: Thursday, January 31, 2008 20:44 > To: Bruce Lowekamp > Cc: P2PSIP Mailing List > Subject: Re: [P2PSIP] Choice of STUN peer or TURN peer > > > On Jan 28, 2008, at 8:01 AM, Bruce Lowekamp wrote: > > > But otherwise, the TURN > > protocol seems to work as is. For the purposes of a TURN server, a > > NAT having endpoint independent mapping seems to be the only real > > requirement on the NAT > > Agree on that but ... > I think the hard part we have not fully solved yet is how a > peer that is thinking of being a TURN server is going to > detect if this is the case or not. > _______________________________________________ > P2PSIP mailing list > [email protected] > http://www.ietf.org/mailman/listinfo/p2psip > _______________________________________________ P2PSIP mailing list [email protected] http://www.ietf.org/mailman/listinfo/p2psip
