Bye, bye 2800s…

At the end of this month, the long beloved 2800 series voice gateways go end of support.  If you find yourself finally getting around to replacing these boxes with the 4000 series voice gateways, you’ll be happy to hear that transitioning PRIs from one to the other is relatively painless for voice work*.

I found it did take me a few minutes to hone in on the shiny new syntax for the clocking commands, so here’s a quick overview of what you’ll need to know.

We’re all pretty used to the standard “network clock participate, blah, blah, blah…” command paired with the “network clock select something-or-other…” command to keep those slip seconds on the T1 controller away.**

With the 4Ks, you need something similar, but of course, they couldn’t just leave the syntax the same. Instead you need to use something like this, of course using the slot numbers that your T1 card is installed in:

network-clock synchronization automatic
no network-clock synchronization participate 0/1

a previous version of this post had these commands:

network-clock input-source 1 controller t1 0/1/0
network-clock sync participate 0/1

but a very smart TAC engineer alerted me to bug ID CSCvb01800 which has to do with how the NIM is included, or rather, not included in the clocking. This changes the configuration in two important ways – one, forget the input-source command. Secondly, enter the no network-clock synchronization participate 0/1 command even though you don’t see network-clock synchronization participate 0/1 in the configuration.  This command is the default and not visible, even in the show run all.  If you followed my previous version of this post’s commands, you simply need to do a no network-clock input-source 1 controller t1 0/1/0 and a no network-clock sync participate 0/1.

And don’t forget to add “clock source line primary” on the controller port – you didn’t typically need to explicitly set this on the 2800s/2900s, but apparently the 4Ks need more hand holding and direct instructions.

controller T1 0/1/0
 framing esf
 clock source line primary
 linecode b8zs
 cablelength long 0db
 pri-group timeslots 1-24

When you get this right, you should see some good news similar to this scroll across the screen – feel free to do a little happy dance:

*Sep 9 21:11:01.139: %NETCLK-6-SRC_ADD: Synchronization source T1 0/1/0 is added to T0 selection process.

And you can check your T1 clocking information when you bring the circuit up with this handy little command:

#show network-clock sync
Symbols:     En – Enable, Dis – Disable, Adis – Admin Disable
             NA – Not Applicable
             *  – Synchronization source selected
             #  – Synchronization source force selected
             &  – Synchronization source manually switched

Automatic selection process : Enable
Equipment Clock : 2048 (EEC-Option1)
Clock Mode : QL-Disable
ESMC : Disabled
SSM Option : 1
T0 : T1 0/1/0
Hold-off (global) : 300 ms
Wait-to-restore (global) : 300 sec
Tsm Delay : 180 ms
Revertive : No

Nominated Interfaces

 Interface            SigType     Mode/QL      Prio  QL_IN  ESMC Tx  ESMC Rx
 Internal             NA          NA/Dis       251   QL-SEC    NA        NA       
*T1 0/1/0             NA          NA/Dis       1     QL-SEC    NA        NA

My apologies for a messy looking post, but due to the bug ID mentioned before, the verifications I mentioned in the previous version of this post change. For now, I am leaving the prior text in with strike-through, so anyone who read the previous post can see the changes.  

Using the commands adjusted for the bug ID, you see this instead:

#show network-clock sync
Symbols: En – Enable, Dis – Disable, Adis – Admin Disable
NA – Not Applicable
* – Synchronization source selected
# – Synchronization source force selected
& – Synchronization source manually switched

Automatic selection process : Enable
Equipment Clock : 2048 (EEC-Option1)
Clock Mode : QL-Disable
ESMC : Disabled
SSM Option : 1
T0 : Internal
Hold-off (global) : 300 ms
Wait-to-restore (global) : 300 sec
Tsm Delay : 180 ms
Revertive : No

Nominated Interfaces

Interface SigType Mode/QL Prio QL_IN ESMC Tx ESMC Rx
*Internal NA NA/Dis 251 QL-SEC NA NA

After cutting over to the new gateway, you can check for slip seconds on the line using the old standard “show controller T1 0/1/0” – but be sure you clear the counters after plugging in the circuit, since there are always a few slip seconds reported when first plugging in the circuit.

After resetting the counters, check that the slips stay at zero.

#show controller t1 0/1/0
T1 0/1/0 is up.
  Applique type is Channelized T1
  Cablelength is long gain36 0db
  No alarms detected.
  alarm-trigger is not set
  Soaking time: 3, Clearance time: 10
  AIS State:Clear  LOS State:Clear  LOF State:Clear
  Framing is ESF, Line Code is B8ZS, Clock Source is Line Primary.
  Data in current interval (566 seconds elapsed):
     0 Line Code Violations, 0 Path Code Violations
     0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
     0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs

[output truncated]

Bonus material – the other strange syntax issue I hit with the 4Ks was bug ID CSCup86596 and the command “isdn incoming-voice voice” command wouldn’t take under the signaling channel configuration – the workaround is epic in its vagueness, noting that “the functionality is there and will work” even though you cannot enter the command.  So, yeah, typical voice shenanigans…

More bonus material – I was made aware by the previously mentioned very smart TAC engineer, that if you are looking into RTP-NTE (RFC 2833) DTMF issues on a 4K, you are going to need packet captures, the debug voip rtp sess name doesn’t do the trick.  I haven’t had to face this one yet, but hopefully that little bit of information will save you some time if you do.

 

*voice is pain, any one who tells you otherwise is trying to sell you something   😉

**to set clocking for PRIs on 2800s/2900s, typically you use something like these two commands, depending on which slot the WIC card is plugged into. If you are seeing slip errors, you should check for these commands: 

network-clock-participate wic 1
network-clock-select 1 T1 0/1/0

Published 10/21/2016

 

 

 

Short and sweet – how to block an incoming call on your voice gateway

Welcome to a quick post on how to block an incoming call when you know the calling number you want to block. Specifically, this is how I would block an incoming call on a Cisco voice gateway with an ISDN PRI attached. Your mileage might vary a little with SIP trunks and will definitely vary quite a bit with MGCP.*

The first thing you need to do is create yourself a voice translation rule, something like this ought to do the trick:

voice translation-rule 9
rule 1 reject /5550005555/   <<keep in mind this is the calling number you want to block, but I like to test initially with an outside number such as my cell phone that I can test with.

Then set yourself up a lovely translation profile that references the rule you just created. Name it something obvious so that the next administrator doesn’t have to beat you to death for your obscurity:

voice translation-profile CALLBLOCK
translate calling 9

To complete the configuration, add these two commands to your incoming POTS dial-peer.  If you aren’t sure what your incoming dial-peer is, use the debug voip dialpeer all command and make a test call.  This is a good idea even if you think you know what the inbound dial-peer is because sometimes life is whimsical, and dial-peer configurations even more so.

dial-peer voice 4445 pots
call-block translation-profile incoming CALLBLOCK
call-block disconnect-cause incoming unassigned-number

There are a few ways to test this.  As I mentioned before, you can use your own cell phone number in the original configuration and confirm that the call blocking works. Then just substitute the to-be-blocked number into the voice translation rule.

You can also run the following command and see what the router *thinks* it will do when it sees the number you are trying to block:

test voice translation-rule 9 /5550005555/
/5550005555/ blocked on rule 1

As with all things voice, there are eleventy-billion ways to accomplish a task, this post just covers one.  If you have another method you prefer, please share in the comments, would love to hear it.

Published 03/10/2015

*The process with SIP trunks is practically the same, your inbound dial-peer won’t be POTS, though.  MGCP will require you to use CUCM 8.0 or later for this, check out this document