...
NAT traversal at the near-end or far-end represents a significant challenge for the SIP protocol as both signalling (SIP) and media (RTP) needs to be mapped to traverse NATs successfully. Up to and including sipXecs release 3.10 an external Session Border Controller (SBC) is required for NAT traversal. Typically we have used either an Ingate SIParator or an Intertex IX-67 SOHO SIP firewall/router. Other products might have but we have not done any extensive testing. In particular it is said that Patton Electronics SmartNodes might work.
sipXecs Release 4.0: As of release 4.0 sipXecs includes native support for both remote worker configurations as well as SIP trunking. There are two services utilized for this sipXrelay for NAT traversal and sipXbridge for trunking support. Use of these services is only encouraged for Lab purposes only. These services do not scale properly and do not support a HA configuration. The user should utilize a session border controller for this functionality.
External Session Border Controllers
For releases earlier than 4.0, an external SBC is needed for operation behind NATs. In newer releases a SBC is still recommended. This gets external SIP signalling and media off of the server allowing the server to scale better and provide a more reliable connection for Trunks and Remote workers.
Remote worker configurations require both near-end and far-end NAT traversal assistance. Some products, such as the Sangoma SBC or Ingate SIParator provide support for both. Therefore, at the far-end there is no special equipment required and phones connected behind a traditional firewall/router will work fine. Other products might require NAT traversal assistance at the far-end as well.
SIP Trunking requires both near-end NAT traversal as well as interoperability with the ITSP providing the SIP trunking service. An SBC is required and we have typically used Acme Packet (now Oracle), Sangoma or Ingate SIParators for this purpose.
...