Hello,
indeed, Metaswitch breaks SIP routing and the best is fixing their side,
as pointed by Alex.
However, Kamailio is flexible enough to solve this issue, eventually
temporarily until the peer is fixing its side.
Do you get Route header in the ACK? That would be crucial in selecting
the ACK for 200ok vs negative responses.
Then, solution can be based on htable or parameters in Route or Contact
headers, where to store the IP/port of the afferent Asterisk and use it
for routing.
Cheers,
Daniel
On 08/07/15 02:47, Markus wrote:
Dear list,
I'm running kamailio-4.2.3-3.1.x86_64 in a very simple setup: one
Asterisk server behind kamailio. But I'm using dispatcher, the other
servers are just down currently. :)
Different vendors route DIDs to kamailio's IP and kamailio handles the
communication towards Asterisk.
Now I have a new vendor who uses MetaSwitch, and there is a problem.
All calls get dropped with a BYE from the Asterisk side after 32
seconds because Asterisk never receives the ACK, because kamailio
doesn't forward it, because MetaSwitch sends it as
ACK sip:number@KAMAILIO-IP
instead of
ACK sip:number@ASTERISK-IP
That means MetaSwitch ignores what we tell it in the Contact: header.
Is this MetaSwitch'es "fault" or kamailio's? All other vendors work
fine without problems. Therefore I have compared an "old" vendor and
the new one. Here is the result that shows the difference:
Old vendor - works:
OLDVENDOR-IP.5060 > KAMAILIO-IP.5060: INVITE sip:number@KAMAILIO-IP
KAMAILIO-IP.5060 > OLDVENDOR-IP.5060: SIP/2.0 100 trying
KAMAILIO-IP.5060 > ASTERISK-IP.5060: INVITE sip:number@KAMAILIO-IP
ASTERISK-IP.5060 > KAMAILIO-IP.5060: SIP/2.0 100 Trying
ASTERISK-IP.5060 > KAMAILIO-IP.5060: SIP/2.0 200 OK
KAMAILIO-IP.5060 > OLDVENDOR-IP.5060: SIP/2.0 200 OK
OLDVENDOR-IP.5060 > KAMAILIO-IP.5060: ACK sip:number@ASTERISK-IP:5060
KAMAILIO-IP.5060 > ASTERISK-IP.5060: ACK sip:number@ASTERISK-IP:5060
New vendor with MetaSwitch - doesn't work:
NEWVENDOR-IP.5060 > KAMAILIO-IP.5060: INVITE sip:number@KAMAILIO-IP:5060
KAMAILIO-IP.5060 > NEWVENDOR-IP.5060: SIP/2.0 100 trying
KAMAILIO-IP.5060 > ASTERISK-IP.5060: INVITE sip:number@KAMAILIO-IP:5060
ASTERISK-IP.5060 > KAMAILIO-IP.5060: SIP/2.0 100 Trying
ASTERISK-IP.5060 > KAMAILIO-IP.5060: SIP/2.0 200 OK
KAMAILIO-IP.5060 > NEWVENDOR-IP.5060: SIP/2.0 200 OK
NEWVENDOR-IP.5060 > KAMAILIO-IP.5060: ACK sip:number@KAMAILIO-IP:5060
ASTERISK-IP.5060 > KAMAILIO-IP.5060: SIP/2.0 200 OK
KAMAILIO-IP.5060 > NEWVENDOR-IP.5060: SIP/2.0 200 OK
NEWVENDOR-IP.5060 > KAMAILIO-IP.5060: ACK sip:number@KAMAILIO-IP:5060
ASTERISK-IP.5060 > KAMAILIO-IP.5060: SIP/2.0 200 OK
KAMAILIO-IP.5060 > NEWVENDOR-IP.5060: SIP/2.0 200 OK
NEWVENDOR-IP.5060 > KAMAILIO-IP.5060: ACK sip:number@KAMAILIO-IP:5060
... and so on ...
Can I do something about this or is a change on MetaSwitch'es side in
order?
Thank you!
Markus
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda -
http://www.linkedin.com/in/miconda
Book: SIP Routing With Kamailio -
http://www.asipto.com