目录

简介

先决条件

要求

使用的组件

Pinpoint DNS概述

配置

创建DNS SRV记录

配置Windows DNS服务器

配置BIND DNS服务器

验证

故障排除

相关信息

简介

本文档介绍如何在内部域名服务器(NS)上为服务记录(SRV)创建精确条目，以解决缺少拆分域名系统(DNS)设置的问题。

作者：Zoltan Kelemen，编辑者：Joshua Alero和Lidiya Bogdanova，Cisco TAC工程师。

先决条件

要求

Cisco 建议您了解以下主题：

- 基本了解DNS

- 在公共权威NS上正确配置的域

使用的组件

本文档中的信息基于以下软件和硬件版本：

- Microsoft Windows Server 2012

- 视频通信系统(VCS)/Expressway

注意：本文档中的信息可与Microsoft DNS服务器或BIND一起使用。您只需使用适合您特定DNS服务器的步骤。未提供其他类型DNS服务器的说明，但如果服务器支持此配置，则该概念可用于任何其他DNS服务器。

注意：内部NS供内部用户以及视频通信系统(VCS)/ Cisco Expressway-C使用。

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

Pinpoint DNS概述

精确DNS条目是仅为单个主机创建的区域。此条目可以定义为名称服务器上的授权项，该名称服务器不对父域授权。这允许将此域的其他DNS查询转发到授权服务器。

除所需的授权开始(SOA)和名称服务器记录外，精确定位区域通常包含单个记录。此记录是自引用，与区域名称相同，显示为与Microsoft DNS中的父文件夹相同，或者由BIND zone文件中的@符号引用。记录可以是DNS支持的任何类型。@符号也用于Windows命令行界面(CLI)工具，其工作方式与BIND相同。

以下图像提供了这些记录的示例：

这是DNS系统的功能，不依赖于Cisco Jabber或Cisco Expressway应用中的任何机制。如果拆分DNS不可用，它也是Cisco Jabber部署的受支持解决方案。

如果域名服务器配置为域的授权或主服务器，则查询不会转发到该域内的名称，即使它无法解析特定名称。因此，为了在同一域内向域的内部和外部用户提供不同的名称解析，将使用拆分DNS。在拆分DNS配置中，内部DNS服务器维护带有内部特定条目的区域副本，而外部DNS服务器维护带有外部特定条目的区域副本。外部区域中存在但内部区域中不存在的条目必须无法解析内部查询。

由于这会导致管理开销，一些网络管理员宁可避免拆分DNS配置。在这些情况下，Pinpoint DNS条目提供了一种替代方案。

配置

创建DNS SRV记录

对于Cisco Jabber自动调配以及移动和远程访问(MRA)服务，每个域(以domain.com为例)涉及两个SRV记录：

- _collab-edge._tls.domain.com

- _cisco-uds._tcp.domain.com

如果Expressway和/或思科统一通信管理器(CUCM)是集群的，则可以为这些记录提供多个条目。

当domain.com的授权区域文件仅存在于外部NS上时，内部NS上需要_cisco-uds._tcp的精确DNS条目。首先需要创建精确DNS区域，然后创建区域内的SRV。

_cisco-uds._tcp SRV记录必须仅可在内部网络上解析，而不能从外部解析，并且必须解析为具有用户数据服务(UDS)的CUCM节点的完全限定域名(FQDN)。

_collab-edge._tls SRV记录必须可从外部网络解析，并解析为Expressway-E服务器的完全限定域名(FQDN)。

配置Windows DNS服务器

精确DNS条目创建为任何其他区域，其名称必须包含整个SRV名称(例如_cisco-uds._tcp.domain.com)。 此步骤也可通过图形用户界面(GUI)执行，但以下示例假设尚未创建精确DNS条目。

要添加SRV记录本身，必须使用CLI工具。您不能通过GUI将SRV记录添加到精确DNS条目，因为这不起作用。通过CLI添加后，这些SRV记录可以像任何其他条目一样使用常规工具进行管理。Windows CLI提供两种方法 — dnscmd或PowerShell命令。后面的两个示例创建两个精确DNS条目，并为_cisco-uds._tcp添加一个SRV记录

一次只能使用以下两种方法之一：

- 示例1 — 使用dnscmd

dnscmd . /zoneadd _cisco-uds._tcp.domain.com. /dsprimary

dnscmd . /recordadd _cisco-uds._tcp.domain.com. "@" SRV 10 10 8443 cucm.domain.local

- 示例2 — 使用PowerShell命令(dnscmd将在Microsoft Windows Server的未来版本中弃用，PowerShell可用于相同用途)。复制范围选项为域、林，或者，如果区域不处于活动状态，则可以使用-ZoneFile参数设置文件目录(AD)集成

Import-Module DnsServer

Add-DnsServerPrimaryZone -Name "_cisco-uds._tcp.domain.com" -ReplicationScope "Domain"

Add-DnsServerResourceRecord -Srv -ZoneName "_cisco-uds._tcp.domain.com" -Name "@" –Priority 10 -Weight 10 -Port 8443 -DomainName "cucm.domain.local"

以下图像提供了GUI中使用SRV记录的精确DNS条目的样例：

配置BIND DNS服务器

使用BIND DNS服务器时，定位DNS条目的创建方式与常规区域文件相同。

$ORIGIN条目必须指向SRV记录的FQDN(例如_cisco-uds._tcp.domain.com)，并且SOA和NS记录会照常添加。SRV是可选的（无论是定义还是覆盖SRV记录的精确DNS条目），而使用的名称@与区域的名称/源等同。

以下是_cisco-uds._tcp.domain.com.zone文件内容的示例：

$TTL 1h

$ORIGIN _cisco-uds._tcp.domain.com.

@       IN      SOA     internalns.domain.local. hostmaster.domain.local. (

2016033000;

12h;

15m;

3w;

3h;

)

IN      NS      internalns.domain.local.

@       IN      SRV     10  10  8443  cucm.domain.local.

以下是如何将区域定义添加到named.conf的示例:

zone "_cisco-uds._tcp.domain.com" IN {

type master;

file "_cisco-uds._tcp.domain.com.zone";

};

验证

使用本部分可确认配置能否正常运行。

- 使用命令nslookup 将服务器设置为内部NS，以验证精确DNS条目。

以下是如何从父域查找一个主机名以及如何查找在内部NS上创建的SRV记录的示例：

C:\>nslookup exp-e.domain.com internalNS.domain.local

Non-authorative answer:

Name:    exp-e.domain.com

Address:  198.51.100.50

C:\>nslookup -type=srv _cisco-uds._tcp.domain.com internalNS.domain.local

_cisco-uds._tcp.domain.com      SRV service location:

priority       = 10

weight         = 10

port           = 8443

svr hostname   = cucm.domain.local

cucm.domain.local       internet address = 192.168.100.11

下面是一个示例，介绍如何查找未在内部NS上配置的主机名，以验证请求是否按预期转发。

C:\>nslookup www.example.com internalNS.domain.local

Non-authoritative answer:

Name:    www.example.com

Addresses:  203.0.113.42

- 将服务器设置为公共NS或外部NS，然后重复相同的步骤。_cisco-uds._tcp SRV记录的SRV查找失败。

故障排除

本部分提供了可用于对配置进行故障排除的信息。

如果nslookup验证返回包含重复部分(例如cucm.domain.local.domain.local)的主机名，则必须通过完全停止符号来验证DNS条目，否则区域的源将添加到解析的主机名。

如果对创建的条目有顾虑，可以从DNS服务器中删除。虽然将条目添加到Microsoft DNS需要CLI，但可以在GUI中安全且简单地删除条目。

相关信息

对于MRA的多域部署（不同的内部和外部域名），请参阅本文档：

配置示例：在多域部署中通过Expressway/VCS进行移动和远程访问