目录

简介

先决条件

要求

使用的组件

背景信息

配置

验证

故障排除

相关信息

简介

本文档介绍在Cisco Unified Presence Server(CUPS)和其他服务器之间配置可扩展消息传送和在线状态协议(XMPP)联合所用的步骤。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档中的信息基于Cisco Unified Presence(CUP)版本8.x。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

背景信息

CUPS仅支持以下服务器的联合：

- IBM Sametime Server版本8.2和8.5

- 思科WebEx Connect版本6

- GoogleTalk

- CUP版本8.x

- 符合XMPP标准的服务器

在注册了两个XMPP服务器的两个客户端之间的XMPP消息流是：

XMPP客户端（Google Talk或WebEx Connect）> TCP:5222 > XMPP Server（Google Server或WebEx Connect Server）> TCP:5269 > ASA（防火墙）> TCP:5269 > CUPS > TCP:5222 > CUPS XMPP客户端（Jabber或CUPS）

注意：并非所有Jabber客户端都支持联合联系。

本文档的假设如下：

- CUPS域为cupdomain.com。

- CUPS用户IM地址为cupuser1@cupdomain.com。

- XMPP服务器域为gmail.com。

- XMPP用户IM地址为jdoe1@gmail.com。

当联合发生时，会发生以下情况：

1. 当jdoe1@gmail.com添加到cupuser1联系人列表时，CUPS会意识到。

2. CUPS将_xmpp-server._tcp.gmail.com域名系统(DNS)查询发送到CUPS中指定的DNS服务器。这通过show network eth0 details命令找到，并且通常是本地DNS服务器。

3. 本地DNS服务器将DNS查询转发到公共DNS服务器，该服务器具有_xmpp-server._tcp.gmail.com条目，因为联系IM具有gmail.com域，并将Google服务器的完全限定域名(FQDN)/IP地址的值返回到本地DNS服务器。然后，这些值将发送到CUPS。

4. 现在，CUP知道将在线状态订用请求发送到何处，并向上一步中检索到的XMPP服务器IP地址请求当前状态(对于TCP端口5369上的用户jdoe1@gmail.com)。

5. 该请求必须通过思科自适应安全设备(ASA)防火墙传递到TCP端口5269上的公共XMPP服务器(Google)。

注意：当jdoe1@gmail.com将cupuser1@cupdomain.com添加到其联系人列表时，此过程将发生逆转。

配置

本节介绍联合配置的简单概述：

1. 在公共DNS服务器（托管CUPS公司网站或互联网服务提供商的公司）上配置DNS SRV记录。 如果为CUPS的FQDN创建DNS SRV，则必须创建DNS “A”记录，以便将DNS A记录解析为CUPS公有IP地址。

以下是CUPS的DNS SRV记录和DNS A记录的示例：

- DNS SRV记录：_xmpp-server._tcp.cupdomain.com指向cup1.cupdomain.com(这假定cup1是CUPS主机名)。 优先级权重可以为0。

- DNS A记录：cup1.cupdomain.com指向ASA for CUPS的公有IP。

2. 配置防火墙，使其具有将CUPS IP转换为公有IP的网络地址转换(NAT)，或在ASA上配置端口地址转换(PAT)，将CUPS IP和TCP端口5269转换为带TCP端口526的公有IP9.

3. 确保CUPS域不是XMPP服务器的注册域。例如，不应向Google Apps或WebEx服务注册cupdomain.com。

4. 在CUPS上启用XMPP联合。对于Google，它是TCP，对于WebEx，它是可选传输层安全(TLS)，不检查客户端证书。

5. 在CUPS上启动XMPP联合服务。

验证

完成以下步骤，以验证传入流量是否通过TCP端口5269的ASA。

1. 获取未作为Cisco Unified Presence Server连接到本地网络，但已连接到外部网络并进入ASA的PC。

2. 打开命令提示符并键入：
telnet

5269

如果此操作产生空白屏幕，则ASA上的配置正确。

3. 检查CUPS内部IP地址是否可telnet连接。在内部PC上，打开命令提示符并输入：
telnet

5269

如果此操作失败，则意味着未配置CUPS XMPP联合或未启用XMPP联合服务。

注意：如果上述任何步骤都失败，则必须对防火墙日志进行故障排除。

此外，您必须发现CUPS域是注册到WebEx还是Gmail。如果有Gmail或WebEx的注册域，则必须分析CUPS XMPP联合日志。它会通知您出现意外的回拨响应。在这种情况下，必须联系Google或WebEx支持团队，以便从其订用服务中删除CUPS域。

注意：默认情况下，Windows 7不附带telnet应用；必须通过“控制面板”>“程序和功能”>“打开或关闭Windows功能”>“Telnet客户端”来安装它。

故障排除

要排除配置故障，请完成以下步骤：

1. 要检查XMPP记录是否在公共DNS服务器上正确创建，请打开命令提示符并输入：
nslookup

set type=SRV

_xmpp-server._tcp.cupdomain.com

注意：此步骤为在ASA上为CUPS配置的CUPS公有IP地址提供结果。如果此步骤遇到问题，请与创建DNS SRV记录的网站提供商或Internet服务提供商联系。

2. 要检查ASA是否运行正常且不阻止流量，请从与CUPS属于同一网络的PC打开命令提示符，然后完成以下步骤：

1. 检查TCP端口5269通过ASA的传出流量。为此，您必须使用以下命令验证XMPP服务器IP地址：
nslookup

set type=SRV

_xmpp-server._tcp.gmail.com

注意：这些命令的输出提供了多个IP地址，这些地址为XMPP联合提供gmail.com域服务。

2. 打开新的命令提示符并输入：
telnet

5269

如果这会生成空白屏幕，则ASA会传递传出流量。

相关信息

- 为XMPP联合配置Cisco Unified Presence

- 技术支持和文档 - Cisco Systems