[GnomeMeeting-list] Outgoing calls from behind the NAT



	Hi all,

I have a problem with Ekiga: the host A has a public IP address, the host B
is a Linux 1:N NAT (masquerade), the host C is hidden behind the host B with
a private IP address. Users at hosts A and C run ekiga, and both have
accounts on ekiga.net. The ekiga at the host C is set up with
"NAT traversal method: STUN" and "STUN server: stun.ekiga.net".

Case 0: when user at host A calls user at host C, everything works
	correctly, both users can hear each other in a reasonable quality.

Case 1: When user at host C dials 500 ekiga net, it also works as expected
	- I can hear the remote voice, and a delayed echo of my own voice.

Case 2: When the call is established in the opposite direction - host C dials
	user at host A, the user at host C does not hear anything, and the
	user at host A receives very low quality audio signal only.

	I have tried to look at this problem with ethereal running at
the public interface of host B, and it seems that the problem is that
in Case 2 the ekiga at host A is sending the RTP traffic to the incorrect
port number.

Case 1:            src IP        src port     dst IP        dst port
from host C        B's public IP 5022         ekiga.net     14280
to host C          ekiga.net     14280        B's public IP 5022

Case 2:            src IP        src port     dst IP        dst port
from host C        B's public IP 1024         A's IP        5010
to host C          A's IP        5010         B's public IP 5014

Note the "1024" versus "5014" in the Case 2. It is clear that the NAT host B
cannot relay the RTP traffic to host C, because it has different ports
than the outgoing traffic. The dump of Case 2 has been verified also on host A,
so I think it is correct.

	Is it a bug in ekiga? It works against the 500 ekiga net bot,
and does not work agaist another ekiga client.

	I can of course forward the UDP ports 5000-5100 from the host B
to the host C, but this is not feasible for me because I want to have
multiple SIP clients behind host B. Can siproxd or a local stund running
on host B be used to make this setup working?

	Thanks,

-Yenya

-- 
| Jan "Yenya" Kasprzak  <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839      Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/    Journal: http://www.fi.muni.cz/~kas/blog/ |
> Specs are a basis for _talking_about_ things. But they are _not_ a basis <
> for implementing software.                              --Linus Torvalds <



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]