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