All very good points. I've largely been able to avoid NAT up until now, so
I'm afraid I'm a bit too green to offer any clarification.
- Jeff
On 9/8/09 1:08 AM, Thomas Gelf tho...@gelf.net wrote:
Thomas Gelf wrote:
Jeff Pyle wrote:
if (client_nat_test(3)) {
force_rport();
Right.
I didn't have the usrloc portion configured before, and I was running
fix_contact() on everything detected as NAT. I've modified the top of
route[0] to look like this:
if (client_nat_test(3)) {
force_rport();
$avp(s:received_uri) = $source_uri;
if (!is_method(REGISTER))
Thomas Gelf wrote:
Jeff Pyle wrote:
if (client_nat_test(3)) {
force_rport();
$avp(s:received_uri) = $source_uri;
if (!is_method(REGISTER)) fix_contact();
setbflag(7);
}# nat_keepalive() further down after some pref checks
One more thing: I'm doing
Jeff Pyle wrote:
It seems to me when I first started playing with the nat_traversal style
commands one difference was the way the contact field was stored in the
location table. The new commands stored the public IP (post-fix_contact)
while the old commands stored the private IP
Thomas Gelf wrote:
The following should help you:
modparam(registrar, received_avp, $avp(i:123))
modparam(usrloc,nat_bflag,6)
setbflag(6);
$avp(i:123) = $source_uri;
nat_keepalive();
save(location);
Forgot to mention that those lines shall obviously only be
called once
Hello,
I have a UAC registered from behind a NAT router. I'm using all the
nat_traversal commands to handle that, along with Mediaproxy. So far, so
good. Outbound calls from the UAC work just fine.
The UAC doesn't like the inbound calls, however, because the domain of the
RURI is the public