Re: RTP problem with some NAT

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

 



Hi Roman,

It seems unlikely that this is caused by a provider;
87.251.128.0/19 is Saltar Telecom, 195.128.48.0/21 is Hoster.RU.
Rather, I suspect that the company with the NAT has redundant connections
to two or more providers, and their firewall is set up to load balance
between them.

Perhaps they can configure the NAT so that workstations with phones
default to a single ISP connection.

Alternatively, the firewall might have some awareness of H.323 that
could be enabled to avoid this problem.

Of course, you could modify ProxyRTP so that it sends voice back to
whatever IP (and port) it sees packets coming from, but that is
a security hole and should be limited (by configuration) to only those
endpoints or networks that require it.

If your network includes Asterisk, an IAX softphone would avoid this
trouble.

Although SIP has the same problem as H.323 in this regard, you may
be able to configure Asterisk and/or SER to deal with this issue,
without having to write any new code.

If all else fails, you could use a VPN.

Good luck,

Stewart


----- Original Message ----- 
From: "Roman Rusakov" <roman@xxxxxx>
To: <openh323gk-users@xxxxxxxxxxxxxxxxxxxxx>
Sent: Thursday, February 09, 2006 4:46 AM
Subject:  RTP problem with some NAT


> When I use a SoftPhone behind NAT, I have following problem:
>
> RRQ packet was sent from 192.168.x.x:4751(external IP:195.128.52.250) ==>
194.242.x.x:1719
> OK, GnuGK understand, what endpoint is behind NAT, and ready to
> receive RTP packets from other port then specified in FastStart.
> As I understand, function, responsive for it is
> UDPProxySocket::ReceiveData():
> ===
> // Workaround: some bad endpoints don't send packets from the specified port
> ===
> But some bad providers have strange routes, and RTP packets sent from
> 192.168.x.x:5000 came from 87.251.133.254:5000 (alternate route) - not
> from 195.128.52.250!!!
> GnuGK forwards RTP packets from gateway 194.242.33.101 to 195.128.52.250:5000
> OK, we assume NAT preventing ports, but ready to change port
> And GnuGK forwards RTP from 87.251.133.254:5000 to 195.128.52.250:5000
> (i.e. to /dev/null)
>
> ===
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 194.242.33.101:27862 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 194.242.33.101:27862 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 194.242.33.101:27862 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 87.251.133.254:5000 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 194.242.33.101:27862 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 87.251.133.254:5000 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 194.242.33.101:27862 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ProxyRTP(0)     1 sockets selected from 2, total 2/0
> RTP     Forward 87.251.133.254:5000 to 195.128.52.250:5000
> 195.128.52.250:5000<=>194.242.x.x:53016<=>194.242.33.101:27862 84 bytes sent
> ===
>
> I think UDPProxySocket::ReceiveData() must be more robust for this
> type of provider's behavior. If endpoint is behind NAT, GnuGK must not
> believe on any address/port values, this values must be fully
> autodetected.
>
> -- 
> Best regards,
>  Roman                          mailto:roman@xxxxxx
>
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
> for problems?  Stop!  Download the new AJAX search engine that makes
> searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
> _______________________________________________________
>
> Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
> Archive: http://sourceforge.net/mailarchive/forum.php?forum_id=8549
> Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
> Homepage: http://www.gnugk.org/
>



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________________

Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_id=8549
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/

[Index of Archives]     [SIP]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [ISDN Cause Codes]     [Yosemite News]

  Powered by Linux