Forums Read-only archive

Client behind far-end symmetric NAT

3 posts · Brekeke SIP Server Forum

Serge Original post
1. Brekeke Product Name and Version:
Brekeke SIP Server , Version 2.4.8.6/286.3

2. Java version:
1.6.0_43

3. OS type and the version:
Windows XP 5.1

4. UA (phone), gateway or other hardware/software involved:
UA with SipX

5. Your problem:
When an unregistered UA calls from behind far-end symmetric NAT, Brekeke does not detect NAT: RTP relay is OK, but it sends RTP to the far-end private IP+ports => failure.
I have tried following dial plan rule:

Matching:
$request=^INVITE
To=202


Deploy:
$nat=true


The rule fires well but the problem remains the same.

1. Why is not NAT detected ?
2. How can I make the dial rule work, i.e. force NAT traversal when it is desirable?
3. If unconditionally forcing NAT traversal might be a solution, how can this be done?

Thanks for your attention!
Serge
Harold
It will happen if a UA doesn't replace all of its local IP addresses from a SIP packet even though it detects the global IP address.


Brekeke SIP Server ver3 has the feature to handle it.

For version 2.4, put the following line in the [Configuration]->[Advanced] page, and restart the SIP Server.

----------------------------------------
net.rtp.follow.remoteaddr = true
----------------------------------------
Serge
This setting works fine.
Many thanks for your quick and accurate answer!