Hi Experts,
I have one SIP UA on private IP behind NAT and another 1 on public IP.
They both registered to OpenSER and they could call each other. The
problem is on call release. The BYE message sent from the UA on public
IP could never get to the other UA on private IP. OpenSER kept on
sending BYE to the private IP instead of sending it to the external
NAT IP. I tried to use fix_nat_register() and fix_nat_contact() when
REGISTER was received from the UA behind NAT but it didn't work. I
also tried putting fix_nat_contact() on BYE and still no help. Am I
missing anything?
modparam("nathelper", "received_avp", "$avp(s:rcv)")
. . . . .
if (method == REGISTER) {
if (nat_uac_test("2") || nat_uac_test("16")) {
fix_nated_register(); # or fix_nated_contact();
}
}
. . . . .
if (method == BYE) {
fix_nated_contact();
}
Thanks,
whglee