cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1010
Views
10
Helpful
7
Replies

Call Disconnect 404 on New AT&T SIP Trunk for Inbound Calls

Michael Mertens
Level 1
Level 1

Hello, I'm trying to provision a 2nd trunk with AT&T on a Cisco CUBE. Outbound calls work on trunk#2 but inbound calls on trunk#2 to the test number gets disconnect 404. The Test Number (TN) is 845-592-6506, which gets translated to 26506 and sent to CUCM, which has the DN on a phone. 

I do not have access to CUCM, but it almost appears that CUCM cannot route the call to the DN. Please see the below attached config, a screenshot of the FW sniffer trace (our outside IP is 32,253,59,194 and we translate that to 10.45.2.97 on the inside), debugs of "ccsip calls", voice dialpeer inout, ccapi inout, voice translation....

Any input would be appreciated!!!

Thanks!

7 Replies 7

Michael Mertens
Level 1
Level 1

!
voice service voip
ip address trusted list
ipv4 10.0.0.0 255.0.0.0
ipv4 12.194.41.30
ipv4 12.194.107.150
ipv4 12.253.1.102
ipv4 12.194.107.142
--More--   ipv4 10.46.52.1
ipv4 10.46.52.65
ipv4 12.253.102.70
ipv4 12.253.102.182
ipv4 12.253.102.73
ipv4 12.253.102.185
ipv4 12.253.102.86
ipv4 12.253.103.134
rtp-port range 16384 32766
address-hiding
mode border-element
media bulk-stats
media disable-detailed-stats
allow-connections h323 to h323
allow-connections h323 to sip
allow-connections sip to h323
allow-connections sip to sip
no supplementary-service sip handle-replaces
redirect ip2ip
fax protocol t38 version 0 ls-redundancy 0 hs-redundancy 0 fallback none
modem relay nse codec g711ulaw gw-controlled
h323
h225 timeout t302 15
--More--   no h225 timeout keepalive
h225 timeout ntf 200
h225 signal overlap
h225 display-ie ccm-compatible
no call service stop
sip
bind control source-interface GigabitEthernet0/0/0
bind media source-interface GigabitEthernet0/0/0
header-passing
error-passthru
asserted-id pai
no update-callerid
midcall-signaling passthru
privacy-policy passthru
!
voice class codec 1
codec preference 1 g711ulaw
codec preference 2 g729r8 bytes 30
!
voice class codec 2
codec preference 1 g729r8 bytes 30
codec preference 2 g711ulaw
!
--More--  voice class codec 3
codec preference 1 g711ulaw
!
voice class h323 1
h225 timeout tcp establish 2
h225 timeout setup 2
call preserve
!
!
voice class sip-profiles 1
response ANY sip-header Allow-Header modify "UPDATE," ""
request INVITE sip-header Diversion modify "<sip:2(....)@" "<sip:845892\1@"
request INVITE sip-header Diversion modify "<sip:4(....)@" "<sip:845894\1@"
request INVITE sdp-header Audio-Attribute modify "a=ptime:20" "a=ptime:30"
response ANY sdp-header Audio-Attribute modify "a=ptime:20" "a=ptime:30"
request INVITE sdp-header Audio-Attribute add "a=ptime:30"
!
!
voice class e164-pattern-map 6001
url flash:dp1.txt
!
voice class e164-pattern-map 6002
url flash:dp1.txt
--More--  !
!
voice iec syslog
!
!
voice translation-rule 1
rule 1 /^911/ /911/
rule 2 /^9911/ /911/
rule 3 /^9/ //
!
voice translation-rule 2
rule 1 /^[2]\(....\)/ /845892\1/
rule 2 /^[4]\(....\)/ /845894\1/
!
voice translation-rule 3
rule 1 /^84589/ //
rule 2 /^84559/ //
!
voice translation-rule 4
rule 1 /8455926506/ /26506/
!
voice translation-rule 9
rule 1 /^[2]\(....\)/ /845592\1/
--More--  !
!
voice translation-profile onsemi-pstn-in
translate called 4
!
voice translation-profile onsemi-pstn-out
translate calling 9
translate called 1
!
voice translation-profile pstn-in
translate called 3
!
voice translation-profile pstn-out
translate calling 2
translate called 1
!
!

dspfarm profile 1 transcode
codec g729abr8
codec g729ar8
codec g711alaw
codec g711ulaw
codec g729r8
codec g729br8
maximum sessions 8
associate application CUBE
!
dspfarm profile 2 mtp
codec g711ulaw
maximum sessions hardware 8
associate application CUBE
!
dial-peer voice 200 voip
description Outgoing to AT&T -VoIP and PBX Call Leg
translation-profile outgoing pstn-out
no modem passthrough
incoming called-number .
voice-class codec 1
voice-class sip asymmetric payload full
voice-class sip asserted-id pai
voice-class sip privacy-policy passthru
voice-class sip profiles 1
voice-class sip bind control source-interface GigabitEthernet0/0/1
voice-class sip bind media source-interface GigabitEthernet0/0/1
fax-relay ecm disable
fax-relay sg3-to-g3
fax rate disable
fax nsf 000000
fax protocol pass-through g711ulaw
ip qos dscp cs3 signaling
no vad

!
dial-peer voice 6000000 voip
translation-profile outgoing onsemi-pstn-in
destination-pattern 8455926506
session protocol sipv2
session target ipv4:10.46.52.65
voice-class codec 1
dtmf-relay rtp-nte
ip qos dscp cs3 signaling
no vad
!

 

 

 

 

 

DEBUG: 

 

NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
001458: .Jan 30 18:04:01.809: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Calling Number=8455926506, Called Number=8455926506, Peer Info Type=DIALPEER_INFO_SPEECH
001459: .Jan 30 18:04:01.809: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Match Rule=DP_MATCH_DEST; Called Number=8455926506
001460: .Jan 30 18:04:01.809: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Result=Success(0) after DP_MATCH_DEST
001461: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=8455926506, saf_enabled=1, saf_dndb_lookup=1, dp_result=0
001462: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersMoreArg:
Result=SUCCESS(0)
List of Matched Outgoing Dial-peer(s):
1: Dial-peer Tag=6000000
001463: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=5189254753, Called Number=, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOIP, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
001464: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=NO_MATCH(-1) After All Match Rules Attempt
001465: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=-1
001466: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=5189254753, Called Number=, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOIP, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
001467: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=NO_MATCH(-1) After All Match Rules Attempt
001468: .Jan 30 18:04:01.810: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=-1
001469: .Jan 30 18:04:01.810: //-1/4F872E0E861C/DPM/dpAssociateIncomingPeerCore:
Calling Number=5189254753, Called Number=8455926506, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOIP, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
001470: .Jan 30 18:04:01.810: //-1/4F872E0E861C/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_INCOMING_DNIS; Incoming Dial-peer=200
001471: .Jan 30 18:04:01.810: //-1/4F872E0E861C/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=0
001472: .Jan 30 18:04:01.811: //-1/xxxxxxxxxxxx/DPM/dpGetSIPUriProvisionBmp:
Tag=200
001473: .Jan 30 18:04:01.811: //-1/xxxxxxxxxxxx/DPM/dpGetSIPUriProvisionBmp:
Result=0 Bitmap=0x0
001474: .Jan 30 18:04:01.812: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=5189254753, Called Number=, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOIP, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
001475: .Jan 30 18:04:01.812: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=NO_MATCH(-1) After All Match Rules Attempt
001476: .Jan 30 18:04:01.812: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=-1
001477: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Calling Number=, Called Number=8455926506, Peer Info Type=DIALPEER_INFO_SPEECH
001478: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Match Rule=DP_MATCH_DEST; Called Number=8455926506
001479: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Result=Success(0) after DP_MATCH_DEST
001480: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchSafModulePlugin:
dialstring=8455926506, saf_enabled=0, saf_dndb_lookup=1, dp_result=0
001481: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersMoreArg:
Result=SUCCESS(0)
List of Matched Outgoing Dial-peer(s):
1: Dial-peer Tag=6000000
001482: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Calling Number=, Called Number=8455926506, Peer Info Type=DIALPEER_INFO_SPEECH
001483: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Match Rule=DP_MATCH_DEST; Called Number=8455926506
001484: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Result=Success(0) after DP_MATCH_DEST
001485: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchSafModulePlugin:
dialstring=8455926506, saf_enabled=0, saf_dndb_lookup=1, dp_result=0
001486: .Jan 30 18:04:01.812: //-1/4F872E0E861C/DPM/dpMatchPeersMoreArg:
Result=SUCCESS(0)
List of Matched Outgoing Dial-peer(s):
1: Dial-peer Tag=6000000
001487: .Jan 30 18:04:01.812: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Calling Number=8455926506, Called Number=8455926506, Peer Info Type=DIALPEER_INFO_SPEECH
001488: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Match Rule=DP_MATCH_DEST; Called Number=8455926506
001489: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Result=Success(0) after DP_MATCH_DEST
001490: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=8455926506, saf_enabled=0, saf_dndb_lookup=1, dp_result=0
001491: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersMoreArg:
Result=SUCCESS(0)
List of Matched Outgoing Dial-peer(s):
1: Dial-peer Tag=6000000
001492: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=8455926506, Called Number=, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOIP, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
001493: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_ORIGINATE; Incoming Dial-peer=6000000
001494: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=0
001495: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=8455926506, Called Number=, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOIP, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
001496: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_ORIGINATE; Incoming Dial-peer=6000000
001497: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=0
001498: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Calling Number=, Called Number=8455926506, Peer Info Type=DIALPEER_INFO_SPEECH
001499: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Match Rule=DP_MATCH_DEST; Called Number=8455926506
001500: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersCore:
Result=Success(0) after DP_MATCH_DEST
001501: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=8455926506, saf_enabled=0, saf_dndb_lookup=1, dp_result=0
001502: .Jan 30 18:04:01.813: //-1/xxxxxxxxxxxx/DPM/dpMatchPeersMoreArg:
Result=SUCCESS(0)
List of Matched Outgoing Dial-peer(s):
1: Dial-peer Tag=6000000
001503: .Jan 30 18:04:01.814: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Calling Number=, Called Number=8455926506, Peer Info Type=DIALPEER_INFO_SPEECH
001504: .Jan 30 18:04:01.814: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Match Rule=DP_MATCH_DEST; Called Number=8455926506
001505: .Jan 30 18:04:01.814: //-1/4F872E0E861C/DPM/dpMatchPeersCore:
Result=Success(0) after DP_MATCH_DEST
001506: .Jan 30 18:04:01.814: //-1/4F872E0E861C/DPM/dpMatchSafModulePlugin:
dialstring=8455926506, saf_enabled=1, saf_dndb_lookup=1, dp_result=0
001507: .Jan 30 18:04:01.814: //-1/4F872E0E861C/DPM/dpMatchPeersMoreArg:
Result=SUCCESS(0)
List of Matched Outgoing Dial-peer(s):
1: Dial-peer Tag=6000000
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#
NEFK300MDFVGWBC24#klllllllllllllllllllll

Hi,

I'd configure an incoming dial-peer to capture the incoming call from the provider. With SIP, it's recommended to match on the VIA header, which will contain the IP address of your providers signaling endpoint.

Something like this:

voice-class uri 1 sip
 host ipv4: <AT&T Signaling IP>

dial-peer voice 1 voip
 translation-profile incoming onsemi-pstn-in
 #description INCOMING FROM AT&T###
 session protocol sipv2
 incoming uri via 1
 voice-class codec 1
 dtmf-relay rtp-nte
 no vad

As the translation will occur here, you shouldn't need any further translation applied to your dial-peers facing CUCM.

I'd also consider reconfiguring dial-peer 6000000 to look something like this:

dial-peer voice 6000000 voip
destination-pattern 26506
session protocol sipv2
session target ipv4:10.46.52.65
voice-class codec 1
dtmf-relay rtp-nte
ip qos dscp cs3 signaling
no vad

There are other improvements which can be made to that config, but just focus on getting calls into that number first.

Also for the outbound calls coming from CUCM to CUBE, it is also recommended to have an incoming dial-peer to capture these calls coming from CUCM and then your standard outgoing dial-peer from CUBE to SIP carrier / ITSP, like the one you already have configured.
The incoming dial-peer from CUCM would be written similar to my example above, but with your CUCM IP addresses and applied to a different dial-peer.

 

 

 

TechLvr
Spotlight
Spotlight

To collect sip logs, you should use "debug ccsip messages" which capture all incoming/outgoing messages. 

Anyways, your logs show that the call correctly matches dial peer 6000000 and the CUBE sends the call to the your CUCM after translating the called number to 26506. The CUCM disconnects the call with the Cause Value=1 which means Unallocated (unassigned) number. 

Please verify the following.
In CUCM, make sure the Calling Search Space used by the SIP Trunk (under Inbound Calls) can access the partition of 26506.   
Make sure extension 26506 is properly assigned to a phone. 

As @TechLvr mentioned, your debug says cause code 1 for disconnect. Which mean its an unallocated/Unassigned Number. This must be due to the New trunk created on CUCM doesn't contain inbound CSS which can reach the extensions 26506.

If you don't have access, reach out to the team who maintains CUCM and ask them to assign proper CSS on inbound direction. And make sure extensions 26506 is an assigned DN.

NithinEluvathingal_0-1675137205630.png

 



Response Signature


Michael Mertens
Level 1
Level 1

Thank you both for your input and fortifying my thoughts- sometimes I think I've lost everything I've ever learned in this field....

The site also had an ISR with a fxs VIC card. My dial-peer 6000000, I sent it over to the ISR, and created an POTS dialpeer, destination 26506, to point to that fxs port, and it rings (no answer), without the SIP disconnect 404. So as you both say, that confirms it is a CSS or DN-PT issue on CUCM or something else. 

Not to press my luck with you two, but during my troubleshooting, I noticed at the end of the "debug CCSIP messages" a "Warning: "No matching outgoing dial-peer"" whenever I called the number. However, my debug voice dialpeer inout showed I was matching...I've attached both debugs. Any thoughts on that?

THANKS AGAIN!!

Mike

007567: .Jan 31 21:14:31.552: //307254/1697C7F98E71/SIP/Msg/ccsipDisplayMsg:
Sent:
SIP/2.0 404 Not Found
Via: SIP/2.0/UDP 12.253.103.134:5060;branch=z9hG4bKag838o00e895k81kn420.1
From: "WIRELESS CALLER" <sip:5189254753@12.253.103.134;user=phone>;tag=1089882016-1675199671342-
To: "User 8455926506"<sip:8455926506@10.45.4.89;user=phone>;tag=FCA36BF3-2449
Date: Tue, 31 Jan 2023 21:14:31 GMT
Call-ID: BW211431342310123-1176316938@AN1
CSeq: 81212952 INVITE
Warning: 399 10.45.4.89 "No matching outgoing dial-peer"
Reason: Q.850;cause=1
Allow-Events: presence
Session-ID: 00000000000000000000000000000000;remote=68f692614b3154a1a56cf10d319d4935
Server: Cisco-CUCM14.0
Content-Length: 0

About the warning: This is just how CUBE sends the "404 Not found" message back, even if the dial-peer was correctly matched in the first place. Probably default behavior, if the CUBE receives a 404 (e.g. from CUCM).

TechLvr
Spotlight
Spotlight

@Michael Mertens 
I still believe, on the CUCM side, the Inbound CSS of the SIP trunk cannot reach the partition of extension 26506.
Or it is also possible that extension 26506 has not been created/assigned to a phone. 

As you can see in the SIP ladder diagram below, the gateway sends the call to the CUCM successfully, but the CUCM responds back with a 404 Not Found message (Reason: Q.850;cause=1). From the perspective of the CUBE, cause=1 means "no matching outgoing dial-peer" (even if the CUBE received the 404 with cause=1 from the CUCM). The CUBE then includes its self-generated warning in the 404 message out to the ITSP. 

TechLvr_0-1675262722772.png