Hey Group,
Hoping someone out there has seen this one. I think we have the problem pretty well figured out, just don't know how/where to fix. These are 7940/60 phones. I know. I'm sorry. Shame.
Phones register no problem. Outbound calls no problem....except, if the external party hangs up first, the bye is sent and the Cisco responds with a 404. Incoming calls do the same - call comes in, hits phone, 404 Not found.
Did some comparisons against asterisk, and the difference appears to be in the request-URI. Coming from Kazoo it is using the external IP and port, asterisk is sending the internal IP and port. The Cisco is "trained" to look at the request-URI and if it doesn't match it gives a 404 Not Found and doesn't answer (or doesn't hang up). (more on that here:
https://supportforums.cisco.com/discussion/10198046/buggy-nat-behaviour-7960-pos3-08-8-00-sip-fimrware) **side note, I have tried versions 8-5, 8-6, 8-7, 8-8, 8-12 of the firmware.
We looked at the NDLB in freeswitch and Nat settings in Kamailio, but didn't find any smoking guns.
Our setup:
FSW: 1.4.15
Kml: 4.3.4
Kazoo: 3.22.50
Apparently
pastie.org (wth!!) is down, so here is a quick log deal (I suppose asterisk also sends proxy auth which is different?)
Kazoo Bye (which gets rejected)
Session Initiation Protocol (BYE)
Request-Line: BYE sip:867@EXTERNALIPOFPHONE:47894;user=phone;transport=udp SIP/2.0
Message Header
Via: SIP/2.0/UDP KAMAILIO:5060;branch=z9hG4bK1d8c.d024c8e7c11b4aa463be0af25e9015cc.0
Via: SIP/2.0/UDP FREESWITCH:11000;received=54.148.57.6;rport=11000;branch=z9hG4bKB197XjSKQB1BS
Max-Forwards: 50
From: <sip:1237@REALM>;tag=9Sa02DmUgvBFS
To: "867" <sip:867@REALM>;tag=00070e56ecee0009207708af-1d4c4d03
Call-ID: 00070e56-ecee0004-79a4257f-2b6ba599@INTERNALIPOFPHONE
CSeq: 96661284 BYE
User-Agent: US
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Supported: path, replaces
Reason: Q.850;cause=16;text="NORMAL_CLEARING"
Content-Length: 0
Asterisk Bye (which works fine)
Session Initiation Protocol (BYE)
Request-Line: BYE sip:867@INTERNALIPOFPHONE:5060;user=phone;transport=udp SIP/2.0
Message Header
Via: SIP/2.0/UDP ASTERISKIP:5060;branch=z9hG4bK2c0873b0;rport
Max-Forwards: 70
From: <sip:5555555555@ASTERISKREALM>;tag=as157e93c6
To: "867" <sip:867@ASTERISKREALM>;tag=00070e56ecee003266d008f2-55220dc7
Call-ID: 00070e56-ecee0009-5cc18a16-1ac28ea0@INTERNALIPOFPHONE
CSeq: 102 BYE
User-Agent: FPBX-2.11.0(11.16.0)
Proxy-Authorization: Digest username="867", realm="asterisk", algorithm=MD5, uri="sip:ASTERISKREALM", nonce="3d3wef1e3efwce", response="5abae01f3dfe50aaefwefddw93919cf791eeae5f"
X-Asterisk-HangupCause: Normal Clearing
X-Asterisk-HangupCauseCode: 16
Content-Length: 0
Here is the 404 from the Cisco:
Session Initiation Protocol (404)
Status-Line: SIP/2.0 404 Not Found
Message Header
Via: SIP/2.0/UDP KAMAILIO:5060;branch=z9hG4bK1d8c.d024c8e7c11b4aa463be0af25e9015cc.0,SIP/2.0/UDP FREESWITCH:11000;received=FREESWITCH;rport=11000;branch=z9hG4bKB197XjSKQB1BS
From: <sip:1237@REALM>;tag=9Sa02DmUgvBFS
To: "867" <sip:867@REALM>;tag=00070e56ecee0009207708af-1d4c4d03
Call-ID: 00070e56-ecee0004-79a4257f-2b6ba599@INTERNALIPOFPHONE
Date: Fri, 16 Sep 2016 02:58:16 GMT
CSeq: 96661284 BYE
Content-Length: 0