Citrix ADC

为具有 NAPTR 记录的 DNS 查询配置 GSLB

在典型的全局服务器负载平衡 (GSLB) 部署中,Citrix ADC 设备接收有关 A/AAAA 记录的 DNS 查询,根据配置的负载平衡方法选择最合适的 GSLB 服务,并返回服务的 IP 地址作为对 DNS 查询的回复。现在,您可以将设备配置为接收 NAPTR 记录的 DNS 查询,并使用为域配置的服务列表进行响应。设备还监视服务的运行状况,并在响应中提供仅启动服务的列表。

示例:

在 Telco 部署中,您可以将 Citrix ADC 设备配置为从客户端(如移动管理实体 (MMES))接收带有 NAPTR 记录的 DNS 查询,这些客户端扮演 DNS 解析器的角色,以发现域名提供的所有服务。设备使用所有正在运行的服务的 NAPTR 记录响应查询。MME 可以使用此 NAPTR 响应运行 S-NAPTR 过程,根据所提供的服务、托管、拓扑密切性等选择节点。

如果多个节点符合选择条件,MME 可以使用 Citrix ADC 设备的 NAPTR 记录中的首选项字段来确定节点。

NAPTR 记录格式

在响应具有 NAPTR 记录的 DNS 查询时,Citrix ADC 设备会为每个 GSLB 服务构建响应 NAPTR 记录。

下表列出了 NAPTR 记录中的文件:

字段  
GSLB 域名
TTL 可以缓存 NAPTR 记录的时间量。
记录的类。默认情况下,此值设置为“因”。
类型 DNS 记录类型。
命令 指定必须处理 NAPTR 记录的顺序。您可以在 GSLB 服务中指定订单。否则,它被设置为 1。
首选项 指定处理具有相等“顺序”值的 NAPTR 记录的顺序,在高数之前处理较低的数字。如果在 GSLB 服务中未指定订单,则将其设置为 1。
标志 控制重写和解释记录中字段的各个方面。Citrix ADC 设备将此值设置为 A。
服务 指定可用服务。
正则表达式 不支持正则表达式,因此此值设置为 NULL。
替换 承载服务的节点的域名。

配置过程

有关详细的 GSLB 配置说明,请参阅配置全局服务器负载平衡 (GSLB)。请确保您执行以下操作:

  • 在添加 GSLB 虚拟服务器时设置以下参数:
    • 服务类型:任何
    • dnsRecordType:NAPTR
    • lbMethod:CUSTOMLOAD

示例:

add gslb vserver gslb_vs ANY -dnsRecordType NAPTR -lbMethod CUSTOMLOAD
  • 添加 GSLB 站点时,请将 Naptr替换NAPTR 记录中嵌入的域名设置为 NAPTR 记录。

示例:

add gslb site site1 10.102.218.200  -naptrReplacementSuffix example.com
  • 在添加 GSLB 服务时设置以下参数:
    • 环保替换
    • Naptrl 订单
    • naptrServices
    • 纳米特尔
    • 优先选择

示例配置

add gslb vserver gslb_vs ANY -dnsRecordType NAPTR -lbMethod CUSTOMLOAD

Done

add gslb site site1 10.102.218.200  -naptrReplacementSuffix example.com

Done

add gslb service sgw1 3.3.3.13 ANY *  -siteName site1 -naptrreplacement sgw1.site1. -naptrOrder 2 -naptrServices x-3gpp-sgw:x-s5-gtp -naptrDomainTTL 20 -naptrPreference   200

Done

add gslb service sgw2 3.3.3.11 ANY *  -siteName site1 -naptrreplacement sgw2.site1. -naptrOrder 5 -naptrServices x-3gpp-sgw:x-s5-gtp  -naptrDomainTTL 20  naptrPreference  100

Done

add gslb service sgw3 3.3.3.12 ANY *  -siteName site2 -naptrreplacement sgw3.site1. -naptrOrder 10 -naptrServices x-3gpp-sgw:x-s5-gtp  -naptrDomainTTL 20 naptrPreference   300

bind gslb vserver gslb_vs -serviceName sgw1

Done

bind gslb vserver gslb_vs -serviceName sgw2

Done

bind gslb vserver gslb_vs -serviceName sgw3

Done

bind gslb service sgw1 -monitorName ping

Done

bind gslb service sgw2 -monitorName ping

Done

bind gslb service sgw3 -monitorName ping

Done

bind gslb vserver gslb_vs -domainName gslb.com -TTL 5

Done

注意

父子配置中不支持带有 NAPTR 记录的 DNS 查询。

为具有 NAPTR 记录的 DNS 查询配置 GSLB