DHCP is used for dynamic allocation of IP address to an IP phone.  From the DHCP server the IP phone gets information related to – default gateway, DNS server configuration, domain name information and so on.  In the case of IP phones, a unique DHCP option is also included which is option 150.  This option is used to direct the IP phone to a TFTP server.

Using a router for DHCP functionality is a common practice in small networks.  As organizations grow in size and complexity this service is typically centralized on a server.  DHCP is capable of sending TFTP information to the IP phones.  In a conventional DHCP server scenario, we define a pool of IP addresses that can be used as DHCP range which is assigned to clients.  Excluding addresses is important before configuring DHCP pools, so that DHCP server doesn’t handover IP addresses to clients before excluding them. The DHCP service on the router will start allocating ip addresses from the first non-excluded IP address in the network range.

One common question which normally arises to ascertain how DHCP server knows from which IP address range it will pull for a given set of devices?   This depends on how DHCP server receives the request. When the DHCP server receives request directly on its FastEthernet 0/0 interface,  the device must be on the same VLAN the router will hand over IP addresses from the subnet to which its FastEthernet 0/0 interface belongs to.

In case of VOIP devices, the FastEthernet 0/0.10 sub interface of CME router receives the DHCP request. With the ip-helper-address command, the CME router forwards the DHCP request to the DHCP server. So the CME router is referred to as a DHCP relay agent. When a DHCP request is relayed, the DHCP relay agent adds to the packet the IP address of the interface which received the DHCP request. Which tells DHCP server “This packet has been relayed from xx.xx.xx.xx/xx subnet” when DHCP server receives the DHCP request, it looks for relay information and knows to give address from the correct subnet.

Incase we want to deliver specific IP address to an IP Phone, we can configure a unique DHCP scope on the router for the phone and use the hardware address syntax to reserve the specific IP address scope for a particular device.

TFTP server – acts as a file server in a voice network.  The IP phones download their configuration and firmware files from this server.  The CME router generates these configuration files.  We must specify correct firmware loads for the CME router to be used with IP phones.  When that is done a new file is created or existing file is modified to reflect the changes.  The default configuration file sent to cisco IP phones is the XMLDefault.cnf.xml file.  This file has two components the IP address and port number used by call processing server.

DHCP – Option 150, as web enabled, tells the IP Phone where to find the TFTP Server that holds the phone’s configuration file and is a vital part of IP Phone operation.  Cisco IP phones use the TFTP server to download firmware files from the router’s flash memory.  This happens during the registration process.

We can turn Cisco routers into TFTP servers to serve files from the routers flash memory.  But as a security concern, we don’t serve the entire flash memory of router to TFTP service as that could result in unauthorized users being able to download copies of the router’s IOS or other sensitive files stored in flash.  So we need to specify exactly which files will be served from the flash memory.  In new versions of CME, software and phone firmware files are organized in subdirectories that have a more structured format that before.   Thus we know which file belongs to which directory/ application.  We can use alias syntax command to allow the firmware file to be requested by asking aliased name.  So the Cisco IP phones don’t ask for full path of the firmware filename, instead they only refer to alias.  There could be many models of Cisco IP phones which are supported by the Cisco Unified CME where firmware files are not contained in the CME full TAR package.  The firmware files for these IP phone models can be downloaded from the Cisco website and put in router’s flash memory.

NTP – NTP is used to set time on VOIP network.  Accurate time is of uttermost importance for many reasons such as:

  • To allow Cisco IP phones to display correct date/ time to users.
  • Assign correct date /time to voice mail tags.
  • Accurate time on call detail records (CDRs) which is used to track calls on network.
  • Plays important role in security features for all Cisco devices.
  • Tags logged messages on routers / switches with accurate time information.

Whenever a Cisco device boots, the default date / time in their firmware is noon on March 1, 1993.  We have two options to set the clock.  Manually with the use of clock set command syntax from the privileged EXEC mode or using an auto method using network time protocol.

Clock settings using NTP gives more accurate time than manually setting the clock. The accuracy of clock on the device depends on the stratum number of the NTP server.  A Stratum 1 time server is one having radio or atomic clock attached directly.  The device which receives its time from server via NTP is considered Stratum 2 device.  The device which receives time from this stratum is stratum device 3.  We can also get list of publicly accessible NTP servers from http://ntp.org.

This concludes lesson on understanding the requirements and correct settings for DHCP, NTP and TFTP server. In the next CCNA voice exam lesson we will learn about how to configure DHCP, NTP and TFTP in a voice networks.