语音和统一通信 : Cisco Unified Communications Manager (CallManager)

公司目录“主机没被找到的”问题

2016 年 10 月 27 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 8 月 22 日) | 反馈

简介

本文描述如何排除故障“在公司目录的主机没被找到的”问题。重要信息与本文有关是:

  • 公司目录是自动地安装与Cisco Unified Communications Manager的一项Cisco提供的默认IP电话服务(CUCM)。
  • “TelecasterService”表存储在系统设置的所有电话服务的参数。
  • 在电话上,当您选择选项“公司目录”时,电话发送HTTP或HTTPS请求到其中一个CUCM服务器和返回XML对象作为HTTP响应。

贡献用加加林Sathiyanarayanan, Cisco TAC工程师。

重要信息

  • 请澄清,如果问题出现,当您访问“目录”或“公司目录”。
  • 什么是“服务URL”字段设置为在公司目录目录服务下?
    • 如果URL设置为“应用程序:思科/CorporateDirectory”然后,根据电话的固件版本,电话做一HTTP或HTTPS请求。
    • 使用固件版本9.3.3及以后默认情况下的电话做一HTTPS请求。
  • 当服务URL设置为“应用程序:思科/CorporateDirectory”,电话发送HTTP请求到是第一在它是CallManager的服务器(CM)组。
  • 识别在HTTP请求发送的电话和服务器之间的网络拓扑。
  • 在能丢弃/篮HTTP数据流的路径注意防火墙,广域网优化程序,等等。

工作方案

在此方案中,电话服务URL设置为“应用程序:思科/CorporateDirectory”并且电话用途HTTPS。

此示例显示电话的配置文件有正确URL的。

<phoneService  type="1" category="0">
<name>Corporate Directory</name>
<url>Application:Cisco/CorporateDirectory</url>
<vendor></vendor>
<version></version>
</phoneService>

从电话控制台记录您能验证这些步骤。

  1. 电话使用HTTPS URL。
    7949 NOT 11:04:14.765155  CVM-appLaunchRequest: [thread=AWT-EventQueue-0]
    [class=cip.app.G4ApplicationManager] Creating application module -
    Corporate Directory
    7950 ERR 11:04:14.825312 CVM-XsiAppData&colon;:getCdUrl:
    [thread=appmgr MQThread]
    [class=cip.app.ar] Using HTTPS URL
  2. Tomcat Web证书被提交对从目录服务器的电话不会是可用的在电话。因此电话尝试通过托拉斯验证服务(TV)验证证书。
    7989 ERR 11:04:15.038637  SECD: -HTTPS cert not in CTL, <10.106.111.100:8443>
    7990 NOT 11:04:15.038714 SECD: -TVS service available, will attempt via TVS
  3. 在theTVS的电话查找首先缓存,并且,如果没找到它联系TV服务器。
    7995 NOT 11:04:15.039286  SECD: -TVS Certificate Authentication request
    7996 NOT 11:04:15.039394 SECD: -No matching entry found at cache
  4. 因为对theTVS的连接也安全,证书验证完成,并且此消息打印,如果是成功的。
    8096 NOT 11:04:15.173585  SECD: -Successfully obtained a TLS connection
    to the TVS server
  5. 电话当前发送请求验证证书。
    8159 NOT 11:04:15.219065  SECD: -Successfully sent the certificate Authentication
    request to TVS server, bytes written : 962
    8160 NOT 11:04:15.219141 SECD: -Done sending Certificate Validation request
    8161 NOT 11:04:15.219218 SECD: -Authenticate Certificate : request sent to
    TVS server - waiting for response
  6. 从TV的答复"0"含义验证是成功的。
    8172 NOT 11:04:15.220060  SECD: -Authentication Response received, status : 0
  7. 此消息显示您然后将看到答复。
    8185 NOT 11:04:15.221043  SECD: -Authenticated the HTTPS conn via TVS

    8198 NOT 11:04:15.296173 CVM-[truncated] Received
    HTTP/1.1 200 OK^M
    X-Frame-Options: SAMEORIGIN^M
    Set-Cookie: JSESSIONID=660646D3655BB00734D3895606BCE76F;
    Path=/ccmcip/; Secure; HttpOnly^M
    Content-Type: text/xml;charset=utf-8^M
    Content-Length: 966^M
    Date: Tue, 30 Sep 2014 11:04:15 GMT^M
    Server: ^M
    ^M
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?><CiscoIPPhoneInput>
    <Title>Directory Search</Title><Prompt>Enter search criteria</Prompt><SoftKeyItem>
    <Name>Search</Name><Position>1</Position><URL>SoftKey:Submit</URL></SoftKeyItem>
    <SoftKeyItem><Name>&lt;&lt;</Name><Position>2</Position><URL>SoftKey:&lt;&lt;</URL>
    </SoftKeyItem><SoftKeyItem><Name>Cancel</Name><Position>3</Position>
    <URL>SoftKey:Cancel</URL></SoftKeyItem>
    <URL>https://10.106.111.100:8443/ccmcip/xmldirectorylist.jsp</URL>
    <InputItem><DisplayName>First Name</DisplayName>
    <QueryStringParam>f</QueryStringParam><InputFlags>A</InputFlags>
    <DefaultValue></DefaultValue></InputItem><InputItem>
    <DisplayName>Last Name</DisplayName><QueryStringParam>l</QueryStringParam>
    <InputFlags>A</InputFlags><DefaultValue></DefaultValue></InputItem><InputItem>
    <DisplayName>

    证书验证进程类似于什么在电话联系方式托拉斯未知证书的验证服务中讨论。

    从数据包捕获(PCAPs)收集在电话末端,您应该能验证与使用的TV通信此过滤器- "tcp.port==2445"。

在同时TV日志:

  1. 关于传输层安全(TLS)手的复核跟踪震动。
  2. 其次,请查看流入HEX转储。
    04:04:15.270 |   debug ipAddrStr (Phone) 10.106.111.121
    04:04:15.270 |<--debug
    04:04:15.270 |-->debug
    04:04:15.270 | debug 2:UNKNOWN:Incoming Phone Msg:
    .
    .
    04:04:15.270 | debug
    HEX_DUMP: Len = 960:

    04:04:15.270 |<--debug
    04:04:15.270 |-->debug
    04:04:15.270 | debug 57 01 01 00 00 00 03 ea
    .
    << o/p omitted >>
    .
    04:04:15.271 | debug MsgType : TVS_MSG_CERT_VERIFICATION_REQ
  3. TV获取发布者详细信息。
    04:04:15.272 |-->CDefaultCertificateReader::GetIssuerName
    04:04:15.272 | CDefaultCertificateReader::GetIssuerName got issuer name
    04:04:15.272 |<--CDefaultCertificateReader::GetIssuerName
    04:04:15.272 |-->debug
    04:04:15.272 | debug tvsGetIssuerNameFromX509 - issuerName :
    CN=cucm10;OU=TAC;O=Cisco;L=Blore;ST=KN;C=IN and Length: 43
    04:04:15.272 |<--debug
  4. TV验证证书。
    04:04:15.272 |   debug tvsGetSerialNumberFromX509 - serialNumber :
    6F969D5B784D0448980F7557A90A6344 and Length: 16
    04:04:15.272 | debug CertificateDBCache::getCertificateInformation -
    Looking up the certificate cache using Unique MAP ID :
    6F969D5B784D0448980F7557A90A6344CN=cucm10;OU=TAC;O=Cisco;L=Blore;ST=KN;C=IN
    04:04:15.272 | debug CertificateDBCache::getCertificateInformation -
    Certificate compare return =0
    04:04:15.272 | debug CertificateDBCache::getCertificateInformation -
    Certificate found and equal
  5. TV发送对电话的答复。
    04:04:15.272 |   debug 2:UNKNOWN:Sending CERT_VERIF_RES msg
    04:04:15.272 | debug MsgType : TVS_MSG_CERT_VERIFICATION_RES

电话服务URL设置为“应用程序:思科/CorporateDirectory”并且电话用途HTTP

注意:而不是使用一个初期的电话固件版本,服务和获取URL硬编码对HTTP URL的服务。然而,同一个事件顺序在默认情况下利用HTTP的电话固件被看到。

电话的配置文件有正确URL。

<phoneService  type="1" category="0">
<name>Corporate Directory</name>
<url>Application:Cisco/CorporateDirectory</url>
<vendor></vendor>
<version></version>
</phoneService>

从电话控制台记录您能验证这些步骤。

7250 NOT 11:44:49.981390  CVM-appLaunchRequest: [thread=AWT-EventQueue-0]
[class=cip.app.G4ApplicationManager] Creating application module -
Corporate Directory/-838075552
7254 NOT 11:44:50.061552 CVM-_HTTPMakeRequest1: Processing Non-HTTPS URL
7256 NOT 11:44:50.061812 CVM-_HTTPMakeRequest1() theHostname: 10.106.111.100:8080


7265 NOT 11:44:50.233788 CVM-[truncated] Received
HTTP/1.1 200 OK^M
X-Frame-Options: SAMEORIGIN^M
Set-Cookie: JSESSIONID=85078CC96EE59CA822CD607DDAB28C91;
Path=/ccmcip/; HttpOnly^M
Content-Type: text/xml;charset=utf-8^M
Content-Length: 965^M
Date: Tue, 30 Sep 2014 11:44:50 GMT^M
Server: ^M
^M
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><CiscoIPPhoneInput>
<Title>Directory Search</Title><Prompt>Enter search criteria</Prompt><SoftKeyItem>
<Name>Search</Name><Position>1</Position><URL>SoftKey:Submit</URL></SoftKeyItem>
<SoftKeyItem><Name>&lt;&lt;</Name><Position>2</Position><URL>SoftKey:&lt;&lt;</URL>
</SoftKeyItem><SoftKeyItem><Name>Cancel</Name><Position>3</Position>
<URL>SoftKey:Cancel</URL></SoftKeyItem>
<URL>http://10.106.111.100:8080/ccmcip/xmldirectorylist.jsp</URL><InputItem>
<DisplayName>First Name</DisplayName><QueryStringParam>f</QueryStringParam>
<InputFlags>A</InputFlags><DefaultValue></DefaultValue></InputItem><InputItem>
<DisplayName>Last Name</DisplayName><QueryStringParam>l</QueryStringParam>
<InputFlags>A</InputFlags><DefaultValue></DefaultValue></InputItem><InputItem>
<DisplayName>Number</D

从数据包捕获您将看到HTTP GET请求和一成功的答复。这是从CUCM的PCAP :

故障排除

在您排除故障前,请采集及早列出的问题的详细信息:

收集的日志,如果必须

  • 同时数据包捕获从IP电话和从CUCM服务器(是第一在它的服务器是HTTP请求将发送对)的CM组。
  • IP电话控制台日志。
  • 思科TV日志(被选派)。

    当您设置TV日志对详细时,服务需要被重新启动为了跟踪级别更改能发生。请参阅Cisco Bug ID CSCuq22327关于增强通知服务重新启动要求,当日志级别更改时。

完成这些步骤为了查出问题:

步骤 1

创建与这些详细信息的一测验服务:

Service Name : <Any Name>
Service URL : http://<CUCM_IP_Address>:8080/ccmcip/xmldirectoryinput.jsp
Secure-Service URL : http://<CUCM_IP_Address>:8080/ccmcip/xmldirectoryinput.jsp
Service Category : XML Service
Service Type : Directories
Enable : CHECK
Enterprise Subscription : DO NOT CHECK

现在,请订阅此服务到其中一个受影响的电话:

  1. 去设备配置页。
  2. 选择订阅/在相关链接下的取消预订服务
  3. 订阅您创建的测验服务。
  4. 保存,运用配置,并且重置电话。
    1. 什么您执行是,不考虑是否确定使用HTTP或HTTPS URL,强制它使用HTTP URL的电话的FW版本。
    2. 访问在电话的“公司目录”服务。
    3. 如果它不工作,则收集日志以上提到并且他们与工作的方案比较被提及在“工作方案下”并且识别偏差的地方。
    4. 如果它工作,则您至少确认从CUCM IP电话服务方面没有问题。
    5. 在此阶段问题可能很可能是使用HTTPS URL的电话。
    6. 现在,请选择不工作并且继续对下一步的电话。

当它与此更改一起使用时,您需要决定可以是否留给与在HTTP工作而不是HTTPS的公司目录的配置请求/响应。HTTPS通信不工作由于其中一个原因其次讨论。

步骤 2

收集日志以前提及了并且他们与工作的方案比较被提及在“工作方案下”并且识别偏差的地方。

它可能是这些问题之一:

  1. 电话无法联系TV服务器。
    1. 在PCAPS中,请验证在端口2445的通信。
    2. 保证无在路径块的网络设备此端口。
  2. 电话联系TV服务器,但是TLS握手发生故障。

    这些线路在电话控制台日志将打印:

    5007: NOT 10:25:10.060663 SECD: clpSetupSsl: Trying to connect to IPV4,
    IP: 192.168.136.6, Port : 2445
    5008: NOT 10:25:10.062376 SECD: clpSetupSsl: TCP connect() waiting,
    <192.168.136.6> c:14 s:15 port: 2445
    5009: NOT 10:25:10.063483 SECD: clpSetupSsl: TCP connected,
    <192.168.136.6> c:14 s:15
    5010: NOT 10:25:10.064376 SECD: clpSetupSsl: start SSL/TLS handshake,
    <192.168.136.6> c:14 s:15
    5011: ERR 10:25:10.068387 SECD: EROR:clpState: SSL3 alert
    read:fatal:handshake failure:<192.168.136.6>
    5012: ERR 10:25:10.069449 SECD: EROR:clpState: SSL_connect:failed in SSLv3
    read server hello A:<192.168.136.6>
    5013: ERR 10:25:10.075656 SECD: EROR:clpSetupSsl: ** SSL handshake failed,
    <192.168.136.6> c:14 s:15
    5014: ERR 10:25:10.076664 SECD: EROR:clpSetupSsl: SSL/TLS handshake failed,
    <192.168.136.6> c:14 s:15
    5015: ERR 10:25:10.077808 SECD: EROR:clpSetupSsl: SSL/TLS setup failed,
    <192.168.136.6> c:14 s:15
    5016: ERR 10:25:10.078771 SECD: EROR:clpSndStatus: SSL CLNT ERR,
    srvr<192.168.136.6>

    欲知更多信息,请参阅Cisco Bug ID CSCua65618

  3. 电话联系TV服务器,并且TLS握手是成功的,但是TV无法验证该的证书的签署人电话请求的验证。

    列出得从TV日志的片断此处:

    电话与TV联系。

    05:54:47.779 |   debug 7:UNKNOWN:Got a new ph conn 10.106.111.121 on 10, Total Acc = 6..
    .
    .
    05:54:47.835 | debug MsgType : TVS_MSG_CERT_VERIFICATION_REQ

    TV得到发证者名字。

    05:54:47.836 |-->CDefaultCertificateReader::GetIssuerName
    05:54:47.836 | CDefaultCertificateReader::GetIssuerName got issuer name
    05:54:47.836 |<--CDefaultCertificateReader::GetIssuerName
    05:54:47.836 |-->debug
    05:54:47.836 | debug tvsGetIssuerNameFromX509 - issuerName :
    CN=cucmpub9;OU=TAC;O=Cisco;L=Bangalore;ST=KN;C=IN and Length: 49

    它查寻证书,但是找不到它。

    05:54:47.836 |   debug CertificateCTLCache::getCertificateInformation
    - Looking up the certificate cache using Unique MAP ID :
    62E09123B09A61D20E77BE5BF5A82CD4CN=cucmpub9;OU=TAC;O=Cisco;L=Bangalore;ST=KN;C=IN
    05:54:47.836 |<--debug
    05:54:47.836 |-->debug
    05:54:47.836 | debug ERROR:CertificateCTLCache::getCertificateInformation
    - Cannot find the certificate in the cache
    05:54:47.836 |<--debug
    05:54:47.836 |-->debug
    05:54:47.836 | debug getCertificateInformation(cert) : certificate not found
  4. HTTPS流量在网络阻塞/丢弃某处。

    从电话和CUCM服务器获得同时PCAPs为了验证通信。

其他方案,当“主机没被找到的”问题出现

  1. CUCM服务器由主机名定义与在名字解析的问题一起。
  2. 当下载xmldefault.cnf.xml文件时, TV服务器列表是空的在电话。(在版本8.6.2默认配置文件不会有在它的TV条目由于Cisco Bug ID CSCti64589。)
  3. 因为下载xmldefault.cnf.xml文件,电话无法使用TV条目在配置文件。请参阅Cisco Bug ID CSCuq33297 - Phoneto解析TV信息从默认配置文件。
  4. 公司目录不在CUCM升级以后工作,因为电话固件升级对默认情况下最终更改使用行为HTTPS的一个最新版本。


Document ID: 118699