Firmware Files – IP phone firmware files come along with CM Express software or we can download them from  For the router to serve the firmware to phones, we use the following command syntax tftp-server flashfilename.  We must enter this command for every firmware file we need to load for corresponding IP phone it supports.  Some phones might require loading of more than one file such as 791 IG needs six files to be loaded into the memory.

The firmware files copied into flash and made available to IP phones using a TFTP server which is associated with the phones; this is done using the load model firmware-file command.  Filenames are case sensitive and file extension should not be included in the command.  For java based phones it is required to load only TERMnn.x-y-x-w.loads or SCCPnn.x-y-x-w.loads firmware filename without the .loads extension, although other files must be available via TFTP server.  The following command syntax is used:

Load 7960-7940 P00303020214

Load 7920 cmterm_7920.4.0.01-08

Load 7941 TERM41.7-0-3-0S

The CME software also uses SCCP to communication with the IP phones.  The command ip source-address ip-address [port port] defines the IP address of the router that will be used to be source of SCCP messages.  The default SCCP TCP port is 2000 and it doesn’t normally required to change but we can change this port value is need be.

Auto-deregistration is enabled by default, and allows phone to be discovered and registered to an available ephone.  The command no auto-reg-ephone prohibits the phone from registering unless its MAC address is configured explicitly.  CM keeps records of all MACs of all phones trying to register but blocked by auto-registration being disabled.  We can use show ephone attempted-registrations command syntax to find out a list of phones that attempted registration and the clear telephony-service ephone attempted-registrations command to set and clear the list.

XML files are used to create configurations for IP phones such as firmware load, source IP address, port and build an XML file for each phone.  This is a mandatory step and one that is to be repeated from time to time, such as if we upgrade firmware or make any changes in phone configuration.

DID configurations allow callers to reach extensions directly which are internal to an organization.  DID has four digit internal extensions as last four digits.  CM Express supports this configuration using the Dialplan-pattern command.  This function expands extension numbers to full E.164 numbers and command specifies with a gatekeeper and once configured the range is automatically registered if gatekeeper is configured.  We can disable it with no-reg keyword. The command syntax is Dialplan-pattern tag pattern extension-length length extension-pattern pattern {no-reg}. The pattern uses the wildcard as used in dial-peers.  A sample configuration to setup a dial plan pattern for extensions 5300-5399 and expand them to DID range of 867-5300-555-5399 would be like this one below:


Dialplan-pattern 1 8675553… extension-length 4 extension pattern 53

In certain instances it is good to automate deployment of your phones.  The telephony-service auto-assign command is used to create ephones dynamically as physical phones are connected to the system, assigning an available ephone-dn to ephone.  The ephone-dn must be of same type and we must have a range of ephone-dn configured and this is not required to create each ephone and do manual association.  The auto assign start-dn to stop-dn [type-phone-type] [cfw number timeout seconds] command is used to mention the range of ephone-dns to use for a given phone model.  We can enter multiple commands to speficy ranges for different phone types as desired.  The command syntax used will be as follows:


Auto assign 11 to 20 type 7920

Auto assign 21 to 30 type 7940

Auto assign 31 to 40 type 7960

Auto assign 41 to 50

Ephone-dn 1 dual-line

Number 5301

The preceding output assigns ephone-dns from 11 to 20 to 7920, 21 to 30 to 7940, 31 to 40 to 7960 and 41-50 to any other type of phone.

This concludes our Cisco CCNA Voice overview covering software components which support endpoints in a VOIP environment.