In this post, we explore the configuration of an MGCP gateway in CUCM. Given a router equipped with a E1/T1 VWIC card, we will configure it as an MGCP gateway that performs PRI Backhauling with CUCM.
Configuration Steps On CUCM
And we need to set the gateway name. This depends actually on whether we activated DNS lookup on the router or not. When a network engineer in IOS gateway has already configured the following command:
then he must use the Fully Qualified Domain Name (FQDN) when he adds the MGCP gateway on CUCM. Otherwise, he must simply use the hostname of the router.
In our example, we have no domain name configured on the router. So we can use the router hostname:
On this router, we have already inserted a T1/E1 card that has one RJ-48 Multiflex trunk. To determine on which subunit this card is, on the IOS, issue the following command:
The card is on Slot 0 subunit 0. So on CUCM, we choose Subunit 0 and select our card.
But which one? T1 or E1? Since we are going to configure a T1 controller, we choose the first option.
We add the gateway to UCM cluster. At this point, the gateway is still not registered to any UCM server. We configure the endpoint. And we take a look at show ccm-manager command:
10.1.5.16 is the primary call agent. 10.1.5.15 is the backup call agent.
Here is the relevant configuration :
Note though: If we don’t configure any endpoints on CUCM, the MGCP gateway will never register.
There are many debug options with MGCP:
We start monitoring for configuration download events, from UCM to the MGCP gateway, using debug ccm-manager config-download event command.
And we tell the gateway to download its MGCP configuration from the UCM cluster.
The gateway immediately starts downloading the XML configuration file, which takes a “little bit” of time:
The registration is now complete. You can tell by issuing this command:
The interface controller T1 is fully configured and all time slots are activated by default.
There is only one voice port, but as many endpoints as timeslots. This is a T1 controller. It has 23 data/voice time slots and one signaling timeslot. The signaling timeslot is not displayed in show mgcp endpoint:
The signaling interface is fully configured:
The voice port is ready:
Troubleshooting Domain Name Unreachable error
I tried to register my MGCP gateway to my CUCM, but every time I did a “show ccm-manager”, it displays the following:
I first thought about an issue about DNS on CUCM. I remembered that, during the CUCM installation, I put CUCM somewhere.
So I went to every corner of CUCM admin pages, where I could find the “CUCM” keyword.
I changed some settings in Enterprise Parameters. I even tried to change the hostname under the CUCM CLI mode:
Then, I examined what’s happening at the router level, with “debug mgcp events”. I noticed this line:
I figured that the gateway could not solve the hostname “CUCM”. I found out that one quick solution was to set up a DNS server on the router, that resolves “CUCM” into “188.8.131.52”.
Here’s a good document that explains the concept.
I did a “no ccm-manager config”, then “ccm-manager config”.
I still don’t know why the gateway IP address shows “unknown” on CUCM :p
Configure a fractional T1 PRI on MGCP gateway
By default, when we configure a MGCP gateway on CUCM, all PRI timeslots are activated.
CUCM does not support fractional T1 PRI on MGCP gateways. But with a combination of the configuration server feature and manual tweaking, we can reduce the number of timeslots used.
In this example we will reduce the number of used data/voice timeslots from 23 to 6.
First we shut down the T1 controller
Then we shut down the signaling interface:
We shut down the voice port
We disable PRI backhauling under the signaling interface
We change the number of PRI timeslots under the T1 controller:
We disable the TFTP server configuration
We remove the configuration server feature
We enable PRI backhauling under the signaling interface
We reset MGCP process
And we verify that the number of data/voice timeslots has been reduced to 6:
Note: After “breaking” the default MGCP configuration, the MGCP process on IOS is independent from UCM. Therefore, after any changes in the MGCP gateway configuration, we need to manually reset the MGCP process with “no mgcp/mgcp”.
Implement route patterns, route lists, route groups and digit manipulation with MGCP gateways
The concept of route patterns, route lists and route groups in the context of MGCP gateways does not differ from other types of gateways. However, in regards to digit manipulation, it is done at the CUCM level and not the IOS level. That’s because a MGCP gateway is a “dumb” slave that executes the order of the MGCP call agent.