Brekeke SIP Server NAT Traversal Feature
Brekeke SIP Server supports both Near-end and Far-end NAT Traversal.
Brekeke SIP Server
Server A - Brekeke SIP Server with a global IP address.
Server B - Brekeke SIP Server running on a machine that has two NIC cards installed. One of the NIC cards has a global IP address, and the other has a local IP address.
Server C - Brekeke SIP Server that has one local IP address. Port forwarding to the SIP port (usually 5060) and the RTP ports (default: 10000-29999) to the Brekeke SIP server is configured at Router Y.
SIP User Agents (UAs)
UA 1 and UA 2 - SIP UA on the global IP network.
UA 3 and UA 4 - SIP UA on a local network. UA 3 and UA 4 access the Internet through Server B.
UA 5 and UA 6 - SIP UA on a local network. UA 5 and UA 6 access the Internet through Router Y.
UA 7 and UA 8 - SIP UA on a local network. UA 7 and UA 8 access the Internet through Router X.
Router X and Router Y - Routers for their respective local area networks.
Brekeke SIP Server supports both Near-End NAT traversal and Far-End NAT traversal. All of UAs in the above diagram can register themselves to any of the Brekeke SIP Servers, and the UAs registered on the same server can communicate with each other.
For example, when UA 1 and UA 5 are registered to Server B, UA 1 and UA 5 can communicate with each other. If UA 3 and UA 6 are registered to Server C, UA 3 and UA 6 can communicate with each other. Also, SIP UAs registered to different Brekeke SIP Servers can communicate with each other by using appropriate routing settings at each Brekeke SIP Server.
Brekeke SIP Server supports most network environments. Multiple Brekeke SIP Servers can work together by using flexible settings. Brekeke SIP Server also works with most third-party SIP servers available in the market.
Near-End NAT Traversal
When a SIP UA is in the same LAN as Brekeke SIP Server, Brekeke SIP Server does Near-End NAT Traversal so that the SIP UA can communicate with a SIP UA over the Internet.
Brekeke SIP Server does address mappings between SIP UAs' local IP addresses and the global IP address that Brekeke SIP Server has as a Network Interface. All SIP packets and RTP packets are relayed through Brekeke SIP Server. To recipient SIP UAs, the calling SIP UA will appear as if it were on the global IP network (Internet) rather than a protected local network.
This scenario corresponds to when UA 3 and UA 4 talk with some UAs over the Internet via Server B, and when UA 5 and UA 6 talk with UAs over the Internet via Server C.
Far-End NAT Traversal
When a SIP UA in a local network communicates with a SIP UA via an Brekeke SIP Server which is outside it's local network, Brekeke SIP Server does Far-End NAT traversal.
For Far-end NAT Traversal, Brekeke SIP Server does the same kind of process as Near-End NAT traversal. Brekeke SIP Server relays all SIP packets and RTP packets.
In the above diagram, Server A does Far-End NAT traversal for all UAs in local networks (UAs 3, 4, 5, 6, 7, and 8).
Server B and Server C do Far-End NAT traversal for the UAs that are located in different local networks from Brekeke SIP Server (UAs 5, 6, 7, and 8 for Server B; UAs 3, 4, 7 and 8 for Server C).
Brekeke SIP Server does not do Far-End NAT Traversal for SIP UAs on local networks that use STUN or UPnP.
Using STUN Server with Brekeke SIP Server
STUN is a widely accepted method for NAT Traversal, reportedly resolves over 70% of NAT types. Suppose UA 5 and UA 7 are registered to Server A. If Router X and Router Y have a type of NAT function that utilizes STUN, the SIP UAs can also use STUN. In this case, Server A doesn't need to Far-End NAT Traversal and RTP relay for these SIP UAs, so Server A's load can be reduced.
There is a type of NAT, Symmetric NAT, that cannot use STUN. If Symmetric NAT is used, Brekeke SIP Server must do Far-End NAT Traversal.
When NAT Traversal fails with the SIP UA you are using, disabling the STUN setting of the UA might be necessary. (Note that most SIP UA disables STUN function automatically.) Please disable STUN functions for the SIP UAs in the same LAN as Brekeke SIP Server. (The SIP UAs use the Near-End NAT Traversal feature of Brekeke SIP Server.)
Brekeke SIP Server itself does not have STUN Server function. Please use a STUN Server from a third party vendor or service provider.