Re: (#552) Re: Poll: Both ends behind NAT...

"Béla" <[email protected]> Tue, 25 Nov 2003 19:04:42 +0100
Newsgroups gmane.comp.audio.speak-freely.general
Message-ID <000d01c3b37e$a0e0bcc0$416828d4@kft6jrw0fa3nq9>
----- Original Message -----
From: "Soren H" <[email protected]>
To: <[email protected]>
Sent: Tuesday, November 25, 2003 6:57 AM
Subject: Re: (#552) Re: [speak-freely] Poll: Both ends behind NAT...


> On Mon, Nov 24, 2003 at 09:28:54PM -0800, Gregory Forrest wrote:
> >
> > > Here is a patch that supposedly gives NAT traversal ability. I don't
have
> > a
> > > windows machine to test it.
> > >
> > > http://www.2pi.info/software/sf_speex/speakf76_20031030.exe.zip
> >
> >
> > Does anyone know where I might find a technical description of how NAT
> > Socket Sharing/traveral operates?
> >
>
> Some of the principles are here:
>
> http://www.alumni.caltech.edu/~dank/peer-nat.html
>
>
> In the case of speakfreely, it is simply a matter of ensuring that the
> outgoing UDP packets are sent from the same port number as what it is
> using to listen for incoming packets.  It's really the NAT that does
> the magic, but the application needs to play it nice with the port
> numbers so the NAT knows what to do.  Once a packet is sent out from
> port P to remote host X, the NAT knows that traffic from remote host X
> back to port P needs to get routed back to that machine.
>
> As only one socket can be bound to any given port, it means that the
> same socket must be used for the listen and send calls.  That's what
> the patch does.  It's pretty simple in the windows version, and the
> only downside is that you can't connect() the socket (for
> performance), or else you can only ever receive packets from one
> remote source.
>
> The NAT patch just replaces the calls to create transmit sockets, and
> instead uses the value of the existing listening socket.
>
> Also, this is not strictly about "NAT".  In my use it also overcomes
> traversal through a simple firewall which is otherwise a problem.
>
> Soren
>
>                       * * *
>
> To unsubscribe from this mailing list, send E-mail containing
> the word "unsubscribe" in the message body (*not* as the
> Subject) to [email protected]
>
>
>



                      * * *

To unsubscribe from this mailing list, send E-mail containing
the word "unsubscribe" in the message body (*not* as the
Subject) to [email protected]