On Wed, Apr 14, 2010 at 12:21 PM, Klaus Darilion
<klaus.mailinglists@pernau.at> wrote:
The contact after fix_nated_contact() should also contain ;transport=tcp. Thus, Kamailio should relay the BYE with TCP.
Oh I see, do you mean that the INVITE sent by A should includes ;transport=tcp in its Contact header ?
Can you show an ngrep dump (ngrep -W byline -t -q -P "" port 5060) of the problematic scenario?
I'm not sure if I can share these traces :-/ I will see what I could do.
Regards,
Pascal
regards
klaus
PS: A more standard-conform way of rewriting the SDP is to use the add_contact_alias() and handle_ruri_alias() functions:
http://sip-router.org/docbook/sip-router/branch/master/modules_k/nathelper/nathelper.html#id2601711
regards
klaus
Am 14.04.2010 12:06, schrieb Pascal Maugeri:
Hi
I need some "guidelines" to troubleshoot the following issue:
a) A is behind NAT
b) B is not behind NAT
c) A calls B, SIP INVITE is sent over TCP
d) A's firewall does NAT and changes the source port to let's say p1
e) B releases the call and sends BYE over UDP
f) Kamailio sends the BYE to A, over UDP, to the NATed source port p1 ?!
2 comments:
- This scenario works perfectly when A is the one who disconnects the
call. and of course when no NAT is involved everything works ok
- if works when I comment the line "fix_nated_contact()" in the
route[NAT] block:
route[NAT]{
#!ifdef WITH_NAT
force_rport();
#if (nat_uac_test("19")) {
if (nat_uac_test("3")) {
if (method=="REGISTER") {
setbflag(10);
fix_nated_register();
} else {
#fix_nated_contact();
[...]
Any hint is very welcome.
Cheers
Pascal
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users