Cisco Unified Intelligent Contact Management Enterprise

What Role Does the LMHOSTS File Perform in Cisco ICM?

Document ID: 45461

Updated: Nov 17, 2005



The LMHOSTS is a static file that assists with remote NetBIOS name resolution on computers. It contains NetBIOS name-to-IP address mappings. This document describes the role of the LMHOSTS file in a Cisco Intelligent Contact Management (ICM) environment.

Q. What role does the LMHOSTS file perform in ICM?

A. The LMHOSTS file maps NetBIOS names to IP addresses. Cisco ICM servers require Microsoft NetBIOS over TCP/IP protocol to communicate with each other. A NetBIOS session is established between two NetBIOS names. A session setup involves the following phases:

  1. NetBIOS name resolution using Windows Internet Name Service (WINS) server, or the static LMHOSTS file.

    NetBIOS name query request -->
                                  <--  NetBIOS name query response
  2. TCP connection is established:

    SYN  -->
            <--  SYN-ACK
       ACK  -->
  3. A NetBIOS session is set up over that connection:

    NetBIOS session setup request -->
                                     <--  NetBIOS session setup response

In most instances, it is a Named Pipes connection such as mapping a remote drive, establishing a SQL Server connection.

The LMHOSTS file is different from the HOSTS file, as a HOSTS file contains IP name-to IP address mappings. The HOSTS file includes addresses for IP routers, automatic call distributors (ACD), voice response units (VRU), application gateway servers, public, public high-priority, private, and private high-priority addresses. Cisco ICM servers resolve IP hostnames through a Domain Name Service (DNS) server or the static HOSTS file by gethostbyname Application Program Interface (API) so they can bind the right TCP/IP socket port to the right address (interface), and allow a server to connect to other hosts through the correct addresses on the appropriate interface.

HOSTS name resolution is equivalent to what the DNS server does. It includes all IP addresses used by Cisco ICM servers, and everything else they connect to. LMHOSTS name resolution is equivalent to what the WINS server does. It includes only those addresses associated with the public address of each ICM server. For example, Network Neighborhood -- only servers and addresses that appear in Network Neighborhood are in the LMHOSTS file.

For example: CallRouterA communicates with CallRouterB over private and private high-priority addresses. When the MDS processes start, they run a gethostbyname lookup to request addresses to use for its own sockets, and the IP address of the peer server on the private network. The CCAgent processes on the CallRouters bind the sockets to the visible, and visible high-priority address, so the Peripheral Gateway PGAgent process can connect to these routers. CCAgent performs a gethostbyname lookup to know which addresses to bind its ports to. PGAgent also performs a HOSTS file lookup to know how to connect to the visible and visible high-priority addresses of the CallRouter.

When running a net use command from the PG to the CallRouter, it performs a LMHOSTS lookup, and only includes the one address associated with the CallRouter hostname.

ICM uses a HOSTS and LMHOSTS file as an alternative to a DNS and WINS server. Since ICM servers use a static set of addresses instead of the Dynamic Host Configuration Protocol (DHCP) , the maintenance of the HOSTS and LMHOSTS file is fairly easy to manage. Use of the HOSTS and LMHOSTS eliminates the requirement of a functional DNS or WINS server. ICM servers do not rely on the fact that WINS or DNS server is available and functional. Many times ICM servers are in a separate domain, and are physically (or logically) on separate data networks from other customer servers.

The HOSTS and LMHOSTS file are both located in the \winnt\system32\drivers\etc directory on every ICM server.

It is recommended that you only modify the HOSTS and LMHOSTS files on the Logger server. As the Logger server is the Primary Domain Controller (PDC) and all the systems connect to it, it should always be available. Keep the master HOSTS and LMHOSTS files in this centrally managed and controlled location, and use sendall.bat to propagate the changed HOSTS and LMHOSTS file to all ICM servers.

Related Information

Updated: Nov 17, 2005
Document ID: 45461