Hello guys,
I have strange behavior on my Kamailio-1.5.1-notls instance.
I have LCR and TM modules enabled.For a particular destination I have
4 routes to try. When I call to non-existing number, it tries
- route 1 (404 Not Found)
- route 2 (404 Not Found)
- route 3 (503 Service unavailable)
And the problem is with the last 503.
Kamailio ACKs it, immediately drops these 2 lines into syslog
Jul 13 04:14:47 /usr/local/sbin/kamailio[23572]:
ERROR:tm:t_forward_nonack: no branch for forwarding
Jul 13 04:14:47 /usr/local/sbin/kamailio[23572]: ERROR:tm:w_t_relay:
t_forward_nonack failed
And sends
SIP/2.0 500 Server error occurred (19/SL).
To the call originator.
30 microseconds later it sends
SIP/2.0 500 Service Unavailable.
to the originator again
Latter 500 looks like the relayed original "503 Service unavailable".
I think so because the Reason header is the same:
Reason: SIP;cause=503;text="Service
Unavailable";icodetext="NoCircuitAvailable";iintcode=10034;isubsystem=3.
Obviously call is terminated.
I noticed that that last peer rewrites my Via headers like this:
Original:
==
Via: SIP/2.0/UDP 187.45.214.132;branch=z9hG4bK3dac.fae9b793.2.
Via: SIP/2.0/UDP
192.168.2.33:5622;received=49.49.59.23;branch=z9hG4bK-d8754z-a6ba40014f97fb7c-1---d8754z-;rport=23832.
==
Rewritten
==
Via: SIP/2.0/UDP
187.45.214.132;received=187.45.214.132;branch=z9hG4bK3dac.fae9b793.2,SIP/2.0/UDP
192.168.2.33:5622;received=49.49.59.23;branch=z9hG4b
==
I tried to modify via1_matching parameter (1 -> 0) but no changes.
My questions are:
- What can be the reason of that 500 with 19/SL
- Can kamailio properly handle this 1 line Via header?
- What can be the reason of that "t_forward_nonack: no branch for forwarding"?
Regards,
Max