Hello list,

I have a NAT issue, this is the case:

Client A has an ip-address 192.168.0.2. User of this clients wants to call
B, B has an uri sip:[EMAIL PROTECTED] which is the only uri that A knows of. B has
recently registered into his registrar that he is located at
sip:123.123.123.123:123 (the external address of A and Bs NAT). B has an
ip-address 192.168.0.3, which is at the same network as A.

When A contacts b.com, b.com reacts as a proxy and contacts
123.123.123.123:123 (which is all fine). The SIP session advances to the
stage where A is to send an ACK (directly to 123.123.123.123:123).
123.123.123.123 is the external address of A and Bs NAT. This is the point
where things can collapse.

At least some NATs doesn't have proper (from my point of view)
loopback-functions (a connection from an internal ip-address to the
external address of the NAT is in my eyes the same as a connection coming
from the external interface of the NAT or at least the internal
interface). The network administrator has probably only thought of
connections to services coming from the outside (otherwise one would use
the internal address), actually some NATs doesn't even support this kind
of loopback-functionality.


It is fully possible for A to "call" B with sip:192.168.0.3, but then one
would miss the beauty of registrars and personal mobility.

Another solution would be to have a proxy on the internal network, the
clients will have it as an outbound proxy (so that all connections goes
through it) depending on the address of the caller the proxy will use
different addresses (i.e. sip:[EMAIL PROTECTED] will resolve to sip:192.168.0.3 for
callers with internal addresses and sip:123.123.123.123 for callers with
external addresses). The proxy might also need to modify SDP, and set the
contact information to be the localnet addresses.

Is there any "standard way" to do this?
_______________________________________________
Sip-implementors mailing list
[EMAIL PROTECTED]
http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to