Cisco ISR
URLs
Identify, Supersede, and Maintain Compatible DSP Firmware Version Levels on C5510 DSPs
http://www.cisco.com/en/US/tech/tk652/tk698/technologies_tech_note09186a0080a7af82.shtml
Voice Debug Filter
Gatekeeper Licensing
Note: to activate / accept EULA on a 2800 wihh the evaluation License, do a the following:
config t gatekeeper shutdown no shutdown
Cisco IOS License Activation
http://www.cisco.com/en/US/docs/ios/csa/command/reference/csa_02.html
Cisco Unified Border Element and Gatekeeper Ordering Guide
http://www.cisco.com/en/US/prod/collateral/voicesw/ps6790/gatecont/ps5640/order_guide_c07_462222.html
Software Activation Q&A - CUBE / Gatekeeper
http://www.cisco.com/en/US/prod/collateral/voicesw/ps6790/gatecont/ps5640/qa_c67_462484.html
Call Spike
http://www.cisco.com/c/en/us/td/docs/ios/voice/command/reference/vr_book/vr_c3.html#wp1212234
The following example shows how to configure the call spike command with a call-number and the of 1, a sliding window of 10 steps, and a step size of 200 milliseconds. The period of the sliding window is 2 seconds. If the gateway receives more than 1 call within 2 seconds the call is rejected.
This can be configured at the dial-peer or at the global level.
Router(config)# call spike 1 steps 10 size 200
Example 2 - 1.5 calls per second (or 3 calls per 2 seconds)
Router(config)# call spike 3 steps 10 size 200
Example 3 - Allow peak of 0.75 calls per second (or 1 calls per 1.333 seconds)
Router(config)# call spike 1 steps 10 size 133
To send an busy signal if call spike has been triggered use the following command:
voice-class sip error-code-override call spike failure 486
http://www.cisco.com/c/en/us/td/docs/ios/voice/command/reference/vr_book/vr_v2.html
Packet Capture on IOS Router
2900/3900 Packet Capture Example
ip access-list extended SIP-FILTER permit tcp any eq 5060 any permit udp any eq 5060 any permit tcp any any eq 5060 permit udp any any eq 5060 permit udp any range 16384 32767 any range 16384 32767
monitor capture buffer buffer-sip max-size 1600 circular monitor capture buffer buffer-sip size 5120 ! in Kb (5 MB) monitor capture buffer buffer-sip filter access-list SIP-FILTER monitor capture point ip process-switched capture-sip1 from-us monitor capture point associate capture-sip1 buffer-sip monitor capture point ip cef capture-sip2 all in monitor capture point associate capture-sip2 buffer-sip
monitor capture buffer buffer-sip clear monitor capture point start all
monitor capture point stop all monitor capture buffer buffer-sip export tftp://10.24.37.111/sip-call.cap
4300/4400 ISR Packet Capture Example
ip access-list extended SIP-FILTER permit tcp any eq 5060 any permit udp any eq 5060 any permit tcp any any eq 5060 permit udp any any eq 5060 permit udp any range 16384 32767 any range 16384 32767
monitor capture buffer1 buffer circular monitor capture buffer1 buffer size 5 ! in Mb (e.g. 5 MB) monitor capture buffer1 access-list SIP-FILTER monitor capture buffer1 interface GigabitEthernet0/0/0 both
monitor capture buffer1 clear monitor capture buffer1 start
monitor capture buffer1 stop monitor capture buffer1 export ftp://user:[email protected]/cdr/sip1.pcap
Dial-peer Reject With Busy
! voice translation-rule 3 rule 1 reject /^.*/ ! voice translation-profile RejectWithBusy translate called 3 ! dial-peer voice 939393 voip description Custom SIP Busy call-block translation-profile incoming RejectWithBusy call-block disconnect-cause incoming user-busy incoming called-number 9393T voice-class codec 1 dtmf-relay rtp-nte no vad !
ISDN Basic Rate - Emulating a Voice Providers BRI
! voice-port 0/2/0 cptone IE bearer-cap Speech compand-type a-law ! interface BRI 1/0 isdn switch-type basic-net3 isdn overlap-receiving isdn protocol-emulate network isdn layer1-emulate network isdn incoming-voice voice isdn skipsend-idverify line-power !
IP SLA example
(from JMC - thanks!)
! ip sla 21 icmp-echo 159.134.113.84 source-interface GigabitEthernet0/1 request-data-size 56 timeout 1000 threshold 1000 frequency 1 ip sla schedule 21 life forever start-time now ! ip sla 22 icmp-echo 159.134.113.212 source-interface GigabitEthernet0/1 request-data-size 56 timeout 1000 threshold 1000 frequency 1 ip sla schedule 22 life forever start-time now ! track 21 rtr 21 reachability delay down 30 up 30 ! track 22 rtr 22 reachability delay down 30 up 30 ! track 101 list boolean and object 21 object 22 ! interface GigabitEthernet0/1 ip address 192.168.1.252 255.255.255.0 standby 15 ip 192.168.1.250 standby 15 timers 1 3 standby 15 priority 250 standby 15 preempt standby 15 authentication blah2121 standby 15 track 101 decrement 50 !
SIP Server Groups
http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/voice/cube_sip/configuration/15-mt/cube-sip-15-mt-book/oodo-ping-group.pdf
https://supportforums.cisco.com/discussion/13201436/sip-options-ping-and-session-server-group-dial-peer
Checking for Packet Count for a specific call
- Find the specific call you want to review and note its CallId using the below command
Gateway#show voip rtp connections VoIP RTP Port Usage Information: Max Ports Available: 8091, Ports Reserved: 101, Ports in Use: 1 Min Max Ports Ports Ports Media-Address Range Port Port Available Reserved In-use ------------------------------------------------------------------------------ Global Media Pool 16384 32766 8091 101 1 ------------------------------------------------------------------------------ VoIP RTP active connections : No. CallId dstCallId LocalRTP RmtRTP LocalIP RemoteIP MPSS 1 8479 8478 16488 25266 10.24.41.166 10.24.36.23 NO Found 1 active RTP connections
- Then use the show call active command for that specific CallId and filter output just to view the Packet info (and repeat)
Gateway#show call active voice callid 8479 | in Packets TransmitPackets=6139 ReceivePackets=6138 LostPackets=0 EarlyPackets=0 LatePackets=0 RTCP TransmitPackets=23 RTCP ReceivePackets=0 Video RTCP TransmitPackets=0 Video RTCP ReceivePackets=0
Another way of confirming this (thanks to David Henderson!)
Gateway#sh dial-peer voice | inc VoiceOverIpPeer|connections VoiceOverIpPeer101 #DP to IPT cluster connections/maximum = 21/unlimited, VoiceOverIpPeer201 #DP to BT connections/maximum = 25/100, VoiceOverIpPeer102 connections/maximum = 0/unlimited, VoiceOverIpPeer27508 connections/maximum = 0/unlimited, VoiceOverIpPeer12001 connections/maximum = 0/unlimited, VoiceOverIpPeer12002 connections/maximum = 0/unlimited, VoiceOverIpPeer919191 connections/maximum = 0/unlimited, VoiceOverIpPeer929292 connections/maximum = 0/unlimited, VoiceOverIpPeer12000 connections/maximum = 4/30, #CVP DP following command shows dps, which DP initiated the call and packet counts: Gateway#show call active voice brief | inc pid|dur <ID>: <CallID> <start>ms.<index> (<start>) +<connect> pid:<peer_id> <dir> <addr> <state> dur hh:mm:ss tx:<packets>/<bytes> rx:<packets>/<bytes> dscp:<packets violation> media:<packets violation> audio tos:<audio tos value> video tos:<video tos value> long duration call detected:<y/n> long duration call duration :<sec> timestamp:<time> last <buf event time>s dur:<Min>/<Max>s 29 : 25375249 314989484ms.1 (09:24:46.640 GMT Thu Feb 22 2018) +190 pid:101 Answer 38041 active dur 01:57:59 tx:353918/70783600 rx:354022/70792700 dscp:0 media:0 audio tos:0xB8 video tos:0x0 long duration call detected:n long duration call duration:n/a timestamp:n/a 29 : 25375250 314989484ms.2 (09:24:46.640 GMT Thu Feb 22 2018) +190 pid:201 Originate 08009171956 active dur 01:57:59 tx:354022/70792700 rx:353918/70783600 dscp:0 media:0 audio tos:0xB8 video tos:0x0 long duration call detected:n long duration call duration:n/a timestamp:n/a 32 : 25376760 316010754ms.1 (09:41:47.910 GMT Thu Feb 22 2018) +450 pid:101 Answer 67227 active dur 01:40:57 tx:302841/60568200 rx:301732/60335480 dscp:0 media:0 audio tos:0xB8 video tos:0x0 long duration call detected:n long duration call duration:n/a timestamp:n/a 32 : 25376761 316010754ms.2 (09:41:47.910 GMT Thu Feb 22 2018) +450 pid:201 Originate 08009171956 active dur 01:40:57 tx:301732/60335480 rx:302841/60568200 dscp:0 media:0 audio tos:0xB8 video tos:0x0 long duration call detected:n long duration call duration:n/a timestamp:n/a
ISDN Reject Calls
Dial Peer Configuration Inbound Dial Peer
dial-peer voice <num> [pots|voip|vofr|voatm] translation-profile [incoming | outgoing] <name>
For Blocking Calls
dial-peer voice <num> [pots|voip] call-block translation-profile incoming <name> call-block disconnect-cause incoming <cause> carrier-id source <name>
SIP ISDN Features
Enable sending ISDN details in SIP SDP
Router(conf-voi-serv)# signaling forward unconditional
Example INVITE with SDP & GTD enabled
INVITE sip:[email protected]:5060 SIP/2.0 Via: SIP/2.0/UDP 123.123.123.123:5060;x-route-tag="tgrp:pstn";branch=z9hG4bK310811EDF Remote-Party-ID: "--CVP_11_5_1_0_1_0_349" <sip:[email protected]>;party=calling;screen=yes;privacy=off From: "--CVP_11_5_1_0_1_0_349" <sip:[email protected]>;tag=327F7E43-16A6 To: <sip:[email protected]> Date: Tue, 17 Jul 2018 13:46:01 GMT Call-ID: [email protected] Supported: 100rel,timer,resource-priority,replaces,sdp-anat Min-SE: 1800 Cisco-Guid: 0827057223-2297827816-2203069530-0264774816 User-Agent: Cisco-SIPGateway/IOS-15.5.3.S5 Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER CSeq: 101 INVITE Max-Forwards: 70 Timestamp: 1531831561 Contact: <sip:[email protected]:5060> Expires: 180 Allow-Events: telephone-event X-Cisco-CCBProbe: undefined Content-Type: multipart/mixed;boundary=uniqueBoundary Mime-Version: 1.0 Content-Length: 870 --uniqueBoundary Content-Type: application/sdp Content-Disposition: session;handling=required v=0 o=CiscoSystemsSIP-GW-UserAgent 148 9627 IN IP4 123.123.123.123 s=SIP Call c=IN IP4 123.123.123.123 t=0 0 m=audio 18530 RTP/AVP 0 8 18 101 c=IN IP4 123.123.123.123 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=no a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=ptime:20 --uniqueBoundary Content-Type: application/x-q931 Content-Disposition: signal;handling=optional Content-Length: 41 l A5551234p12891 --uniqueBoundary Content-Type: application/gtd Content-Disposition: signal;handling=optional IAM, PRN,isdn*,,NET5*, USI,rate,c,3,c,1 USI,lay1,alaw TMR,02 CPN,00,,1,12891 CGN,02,,1,y,4,5551234 CPC,09 FCI,,,,,,,y, GCI,314be44788f611e883502c5a0fc824a0 --uniqueBoundary--
Disable sending ISDN details in SIP SDP
Router(conf-voi-serv)# signaling forward none
Example INVITE with SDP
INVITE sip:[email protected]:5060 SIP/2.0 Via: SIP/2.0/UDP 123.123.123.123:5060;x-route-tag="tgrp:pstn";branch=z9hG4bK310DD851 Remote-Party-ID: "--CVP_11_5_1_0_1_0_349" <sip:[email protected]>;party=calling;screen=yes;privacy=off From: "--CVP_11_5_1_0_1_0_349" <sip:[email protected]>;tag=32A9D0D6-E32 To: <sip:[email protected]> Date: Tue, 17 Jul 2018 14:32:15 GMT Call-ID: [email protected] Supported: 100rel,timer,resource-priority,replaces,sdp-anat Min-SE: 1800 Cisco-Guid: 2793783625-2298221032-2204183642-0264774816 User-Agent: Cisco-SIPGateway/IOS-15.5.3.S5 Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER CSeq: 101 INVITE Max-Forwards: 70 Timestamp: 1531834335 Contact: <sip:[email protected]:5060> Expires: 180 Allow-Events: telephone-event X-Cisco-CCBProbe: undefined Content-Type: application/sdp Content-Disposition: session;handling=required Content-Length: 317 v=0 o=CiscoSystemsSIP-GW-UserAgent 8676 702 IN IP4 123.123.123.123 s=SIP Call c=IN IP4 123.123.123.123 t=0 0 m=audio 18564 RTP/AVP 0 8 18 101 c=IN IP4 123.123.123.123 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=no a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=ptime:20
Disable SIP Options response if Dial-peer is down
Courtesy of Rob Bannon - who put this config together!
!!!Configure ACL and leave in place. Replace 10.34.1.36 and 10.34.1.84 with BT SBC address. ip access-list extended BLOCK-IP-To-From-SP-SBC deny ip any host 10.34.1.36 deny ip host 10.34.1.36 any deny ip any host 10.34.1.84 deny ip host 10.34.1.84 any permit ip any any event manager applet CUCM-DP-Down-Stop-IP-to-from-SP event syslog pattern "%SIP-5-DIALPEER_STATUS: VoIP dial-Peer <112> is Busied out" !!!Update Dial-peer id, 112 in my case. This is the dial-peer pointing to CUCM action 1.0 cli command "enable" action 1.1 cli command "configure terminal" action 1.2 cli command "interface gi0/0" !!update interface if applicable action 1.3 cli command "ip access-group BLOCK-IP-To-From-SP-SIP in" action 1.4 cli command "ip access-group BLOCK-IP-To-From-SP-SIP out" action 1.5 cli command "end" ! action 1.6 cli command "wr" !!! uncomment if you want to save the config at this stage action 2.0 syslog msg "Access list applied, stop IP options to and from SP SIP" event manager applet CUCM-DP-Up-Allow-IP-to-from-SP event syslog pattern "%SIP-5-DIALPEER_STATUS: VoIP dial-Peer <112> is Up" !!!Update Dial-peer id, 112 in my case action 1.0 cli command "enable" action 1.1 cli command "configure terminal" action 1.2 cli command "interface gi0/0" !!update interface if applicable action 1.3 cli command "no ip access-group BLOCK-IP-To-From-SP-SIP in" action 1.4 cli command "no ip access-group BLOCK-IP-To-From-SP-SIP out" action 1.5 cli command "end" ! action 1.6 cli command "wr" !!! uncomment if you want to save the config at this stage action 2.0 syslog msg "Access list removed, allow IP to and from SP SIP" !!!Only required if using AAA event manager applet CUCM-DP-Down-Stop-IP-to-from-SP authorization bypass event manager applet CUCM-DP-Up-Allow-IP-to-from-SP authorization bypass
show call active voice
show call active voice | in PeerId|OriginalCallingNumber|OriginalCalledNumber|TranslatedCallingNumber|TranslatedCalledNumber=|CoderType|IPAddress|Port
Sample Output for above command
PeerId=204 CoderTypeRate=g711alaw OriginalCallingNumber=865551234 OriginalCalledNumber=16969600 TranslatedCallingNumber=+353865551234 TranslatedCalledNumber=16969600 PeerId=1050 RemoteIPAddress=10.0.0.17 RemoteSignallingIPAddress=10.0.0.17 RemoteMediaIPAddress=10.0.1.17 CoderTypeRate=g711alaw OriginalCallingNumber=865551234 OriginalCalledNumber=16969600 TranslatedCallingNumber=+353865551234 TranslatedCalledNumber=16661234
To save the above command as a custom command (or alias) - use the following
alias exec showcallactive show call active voice | in PeerId|OriginalCallingNumber|OriginalCalledNumber|TranslatedCallingNumber|TranslatedCalledNumber=|CoderType|IPAddress|Port