ADC

使用 NAPTR 记录为 DNS 查询配置 GSLB

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

示例:

在电信部署中,您可以将 NetScaler 设备配置为从移动管理实体 (MME) 等客户端接收包含 NAPTR 记录的 DNS 查询,这些客户端扮演 DNS 解析器的角色,以发现域名提供的所有服务。设备使用所有已启动服务的 NAPTR 记录来响应查询。MME 可以使用此 NAPTR 响应运行 S-NAPTR 程序,根据提供的服务、托管、拓扑紧密度等来选择节点。

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

NAPTR 记录格式

在使用 NAPTR 记录响应 DNS 查询时,NetScaler 设备会为每个 GSLB 服务构建响应 NAPTR 记录。

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

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

配置过程

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

  • 添加 GSLB 虚拟服务器时设置以下参数:
    • serviceType: ANY
    • dnsRecordType: NAPTR
    • lbMethod: CUSTOMLOAD

示例:

add gslb vserver gslb_vs ANY -dnsRecordType NAPTR -lbMethod CUSTOMLOAD
<!--NeedCopy-->
  • 在添加 GSLB 网站时,将 n aptrreplacementSuffix 参数设置为要嵌入到 NAPTR 记录中的域名。

示例:

add gslb site site1 10.102.218.200  -naptrReplacementSuffix example.com
<!--NeedCopy-->
  • 添加 GSLB 服务时设置以下参数:
    • 替换尿布
    • naptrOrder
    • naptrServices
    • naptrDomainTTL
    • naptrPreference

示例配置

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
<!--NeedCopy-->

注意

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

使用 NAPTR 记录为 DNS 查询配置 GSLB