DNS透明代理

本帮助主要介绍以下内容:

特性简介

图-1所示,企业内网用户可以通过运营商ISP 1的链路Link 1和ISP 2的链路Link 2分别访问提供相同网络服务的外网服务器External server A和External server B。企业内网用户通过域名访问外网服务器时,内网用户的所有DNS请求报文会发往同一DNS服务器。DNS服务器收到DNS请求报文后,将其解析为同一运营商网络内外网服务器的IP地址,这将使内网用户的所有流量都通过一条链路转发,导致一条链路拥塞,而其他链路闲置。

DNS透明代理功能可以有效解决由于客户端DNS服务器的配置导致流量分配不均的问题。通过DNS透明代理功能可以使DNS请求报文发往不同运营商网络内的DNS服务器,从而使内网用户访问外网服务器的流量较为均匀地分配到多条链路上,提高流量转发效率,提升服务质量;可以避免出现一条链路拥塞而其他链路闲置的情况;也可以在某条链路出现故障时,使用其他链路来访问外网服务器,避免因链路故障导致访问失败。

图-1 DNS透明代理原理图

设备上的业务处理流程

设备通过改变DNS请求报文的目的地址控制访问流量在多条链路上的转发,为内网用户访问外网服务器选择最佳链路。

图-2 设备上的业务处理流程图

如图所示,当收到DNS请求的目的端口号匹配DNS透明代理的代理端口号时,负载均衡设备会对DNS请求报文进行DNS透明代理处理。首先在DNS透明代理中查找关联的DNS服务器池。再依据池中配置的调度算法选出应将DNS请求分发给哪台DNS服务器。设备将选定DNS服务器的IP地址作为目的地址发送DNS请求报文,DNS服务器接收并处理DNS请求报文,将其解析为同网络内外网服务器的IP地址,并返回DNS应答报文。内网用户收到应答报文后,就可以访问该外网服务器了。

使用限制和注意事项

DNS透明代理功能和DNS代理功能互斥,不允许同时配置。有关DNS代理的详细介绍,请参见“DNS”。

vSystem相关说明

非缺省vSystem对于本特性的支持情况,请以页面的实际显示为准。

配置指南

配置思路

DNS透明代理功能的配置思路如下图所示:

图-3 DNS透明代理配置指导图

配置准备

在配置本特性之前,需要完成以下任务:

  • 配置接口IP地址。接口在“网络 > 接口与VRF > 接口”页面配置。

  • 配置路由,保证路由可达。路由在“网络 > 路由”页面配置。

  • 创建安全域。安全域在“网络 > 安全域”页面配置。

  • 配置接口加入安全域。可在安全域页面添加接口,也可在接口页面选择接口所属的安全域。

  • 配置安全策略,放行业务流量。安全策略在“策略 > 安全策略”页面配置。

流量特征

流量特征的作用是将报文分类,即通过匹配规则将报文按照一定条件进行匹配,以便对不同类型的报文执行不同的转发动作。

  1. 单击“策略 > 负载均衡 > 链路负载均衡 > DNS透明代理 > 流量特征”。

  2. 在“流量特征”页面单击<新建>。

  3. 新建流量特征。

    图-4 流量特征功能示意图

    表-1 流量特征配置

    参数

    说明

    流量特征名称

    流量特征的名称,不区分大小写

    匹配方式

    流量特征的匹配方式,包括:

    • 匹配任意一条规则:匹配任一匹配规则就算匹配该流量特征

    • 匹配所有规则:匹配所有匹配规则才算匹配该流量特征

    匹配规则

    通过匹配规则将报文按照一定条件进行匹配,以便对不同类型的报文执行不同的转发动作。一个流量特征中最多允许创建65535条匹配规则

    1. 单击<新建>按钮,新建匹配规则

      • 规则ID:匹配规则的编号。报文按照规则ID从小到大的顺序依次进行匹配

      • 类型:匹配规则的类型,包括:源IPv4、源IPv6、目的IPv4、目的IPv6、流量特征、IPv4 ACL、IPv6 ACL、域名、用户和入接口

      • IPv4地址:匹配指定的IPv4地址。只有匹配规则的类型选择“源IPv4”或“目的IPv4”时,才会出现该参数

      • 掩码长度:IPv4地址的掩码长度。只有匹配规则的类型选择“源IPv4” 或“目的IPv4”时,才会出现该参数

      • IPv6地址:匹配指定的IPv6地址。只有匹配规则的类型选择“源IPv6” 或“目的IPv6”时,才会出现该参数

      • 前缀长度:IPv6地址的前缀长度。只有匹配规则的类型选择“源IPv6” 或“目的IPv6”时,才会出现该参数

      • 流量特征:匹配指定的流量特征。只有匹配规则的类型选择“流量特征”时,才会出现该参数

      • IPv4 ACL:匹配指定的IPv4 ACL。可选择已创建的IPv4 ACL,也可以新创建IPv4 ACL。只有匹配规则的类型选择“IPv4 ACL”时,才会出现该参数

      • IPv6 ACL:匹配指定的IPv6 ACL。可选择已创建的IPv6 ACL,也可以新创建IPv6 ACL。只有匹配规则的类型选择“IPv6 ACL”时,才会出现该参数

      • 域名:匹配指定的域名。不区分大小写。由“.”分隔的字符串组成,每个字符串的长度不超过63个字符,包括“.”在内的总长度不超过253个字符。字符串中可以包含字母、数字、“-”、“_”或“.”。域名支持通配符配置,允许使用的通配字符包括问号“?”和星号“*”, 通配符使用规则为:问号“? ”用于代替域名中的单个字符,域名中的点“.”除外,域名中允许使用多个问号“?”;星号“*”用于代替域名中的多个字符,域名中的点“.”除外,域名中允许使用多个星号“*”;域名中允许同时使用问号“?”和星号“*”。只有匹配规则的类型选择“域名”时,才会出现该参数

      • 用户:匹配指定的用户或用户组,可选择已创建的身份识别用户或身份识别用户组,也可以新创建用户或用户组。只有匹配规则的类型选择“用户”时,才会出现该参数

      • 入接口:匹配指定的入接口,只有匹配规则的类型选择“入接口”时,才会出现该参数

    2. 单击<确定>,新建的匹配规则会在“匹配规则”中显示

    描述

    流量特征的描述信息

  4. 单击<确定>,新建的流量特征会在“流量特征”页面显示。

DNS服务器

通过配置DNS服务器,指定设备上处理和响应DNS请求报文的实体。一个DNS服务器可以属于多个DNS服务器池,一个DNS服务器池也可以包含多个DNS服务器。

配置步骤

  1. 单击“策略 > 负载均衡 > 链路负载均衡 > DNS透明代理 > DNS服务器”。

  2. 在“DNS服务器”页面单击<新建>按钮。

  3. 新建DNS服务器。

    图-5 DNS服务器功能示意图

    表-2 DNS服务器配置

    参数

    说明

    DNS服务器名称

    DNS服务器的名称,不区分大小写

    IP地址配置方式

    DNS服务器的IP地址配置方式,包括:

    • 手工配置

    • 自动获取:若选择以自动获取方式配置IP地址,则必须在链路配置页面指定自动获取IP地址的出接口

    IPv4地址

    DNS服务器的IPv4地址

    IPv4地址不能为环回地址、组播地址、广播地址和0.X.X.X

    IPv6地址

    DNS服务器的IPv6地址

    IPv6地址不能为环回地址、组播地址、链路本地地址和全0地址

    端口

    DNS服务器的端口号。0表示继续使用原报文携带的端口号

    VRF

    DNS服务器所属的VRF

    权值

    DNS服务器池成员的权值。在加权轮转调度时,该数值越大,DNS服务器越被优先调用

    仅支持在“DNS服务器池”添加DNS服务器池成员的配置页面指定

    优先级

    DNS服务器在DNS服务器池中的调用优先级。数值越大,越被优先调用

    优先使用高优先级的DNS服务器处理流量。如果最高优先级DNS服务器的个数少于配置的“最小数量”,则在次高优先级中选择DNS服务器,直至调用的可用DNS服务器数量达到“最小数量,或者没有可用的DNS服务器可调用为止

    仅支持在“DNS服务器池”添加DNS服务器池成员的配置页面指定

    健康检测方法

    DNS服务器引用的健康检测模板。通过健康检测可以对DNS服务器进行检测,保证其能够提供有效的服务。用户既可在“DNS服务器池”配置页面对池内的所有DNS服务器进行配置,也可在“DNS服务器”配置页面只对当前DNS服务器进行配置,后者的配置优先级较高

    可选择已创建的健康检测方法,也可以新建健康检测方法

    成功条件

    DNS服务器的健康检测成功条件

    • 全部检测通过:只有全部健康检测方法都通过检测才认为健康检测成功

    • 至少n个检测通过:健康检测成功所需通过检测的最少方法数为n。当用户指定的最少方法数n大于设备上实际存在的方法数量时,只要实际存在的全部方法通过检测,系统也将认为健康检测成功

    链路

    配置与DNS服务器关联的链路

    可选择已创建的链路,也可以新创建链路

    描述

    DNS服务器的描述信息

  4. 单击<确定>按钮,新建的DNS服务器会在“DNS服务器”页面显示。

DNS服务器池

为了便于对DNS服务器进行统一管理,可将具有相同或相似功能的DNS服务器抽象成一个组,称为DNS服务器池。

配置步骤

  1. 单击“策略 > 负载均衡 > 链路负载均衡 > DNS透明代理 > DNS服务器池”。

  2. 在“DNS服务器池”页面单击<新建>按钮。

  3. 新建DNS服务器池。

    图-6 DNS服务器池功能示意图

    表-3 DNS服务器池配置

    参数

    说明

    DNS服务器池名称

    DNS服务器池的名称,不区分大小写

    调度算法

    选择DNS服务器池的调度算法,包括:

    • 带宽算法:根据DNS服务器的权值与剩余带宽的比例把DNS请求分发给每台DNS服务器。当剩余带宽相同时,该算法等价于加权轮转算法;当DNS服务器权值相同时,总是将用户请求分发给剩余带宽最大的链路所对应的DNS服务器;当DNS服务器权值和剩余带宽均不相同时,两者共同决定DNS服务器的调度

    • 随机:把新连接随机分发给每个DNS服务器

    • 加权轮转:即根据DNS服务器权值的大小把新连接依次分发给每台DNS服务器,权值越大,分配的新连接越多

    • 最大带宽算法:总是将DNS请求分发给处于空闲状态且带宽最大的链路所对应的DNS服务器

    • 源IP地址哈希:根据源IP地址进行的哈希算法

    • 源IP地址和端口哈希:根据源IP地址和端口号进行的哈希算法

    • 目的IP地址哈希:根据目的IP地址进行的哈希算法

    优先级调度

    缺省情况下,一个DNS服务器池中调用优先级最高的DNS服务器全部被调度算法调用。用户通过本配置可以限制DNS服务器池中可被调度算法调用的DNS服务器的数量:

    • 如果调用优先级最高的可用DNS服务器数量大于“最大数量”时,则只选用“最大数量”个DNS服务器

    • 如果调用优先级最高的可用DNS服务器数量小于“最小数量”时,除了调用全部优先级最高的可用DNS服务器外,还会调用优先级次高的可用DNS服务器,直至调用的可用DNS服务器数量达到“最小数量”,或者没有可用的DNS服务器可调用为止

    其中,DNS服务器的优先级在“DNS服务器”配置页面指定

    健康检测方法

    DNS服务器池引用的健康检测模板。通过健康检测可以对DNS服务器进行检测,保证其能够提供有效的服务。用户既可在“DNS服务器池”配置页面对组内的所有DNS服务器进行配置,也可在“DNS服务器”配置页面只对当前DNS服务器进行配置,后者的配置优先级较高

    可选择已创建的健康检测方法,也可以新建健康检测方法

    健康检测成功条件

    DNS服务器池的健康检测成功条件

    • 全部检测通过:只有全部健康检测方法都通过检测才认为健康检测成功

    • 至少n个检测通过:健康检测成功所需通过检测的最少方法数为n。当用户指定的最少方法数n大于设备上实际存在的方法数量时,只要实际存在的全部方法通过检测,系统也将认为健康检测成功

    成员列表

    设备支持以下两种添加DNS服务器池成员的方式:

    新建DNS服务器并将DNS服务器添加为DNS服务器池成员:

    1. 单击<添加>按钮,选择“新建DNS服务器”。

    2. 配置DNS服务器池成员信息,具体配置项说明请参见“DNS服务器

    3. 单击<确定>按钮,新建的DNS服务器会在“成员列表”中显示

    选择已存在的DNS服务器:

    1. 单击<添加>按钮,选择“添加已存在的DNS服务器”

    2. 在下拉列表中选择已创建的DNS服务器并配置DNS服务器池成员信息,具体配置项说明请参见“DNS服务器

    3. 单击<确定>按钮,添加的DNS服务器会在“成员列表”中显示

    描述

    DNS服务器池的描述信息

  4. 单击<确定>按钮,新建的DNS服务器池会在“DNS服务器池”页面显示。

代理策略

将流量特征和动作关联起来就构成了代理策略。代理策略是指导报文转发的一种方式,用户可以为匹配特定流量特征的报文指定执行的动作。

用户只能在一个代理策略中指定一个流量特征,转发报文时会按照代理策略的配置顺序来匹配流量特征,匹配成功则执行相应的转发动作,否则继续匹配下一条流量特征。如果所有流量特征均未匹配,则执行“Default”流量特征对应的动作。

全局配置步骤

  1. 单击“策略 > 负载均衡 > 链路负载均衡 > DNS透明代理 > IPv4/IPv6代理策略”。

  2. 在“IPv4/IPv6代理策略”页面进行全局配置。

    图-7 IPv4/IPv6代理策略全局配置示意图

    表-4 全局配置

    参数

    说明

    状态

    用来标识DNS透明代理功能的状态,包括:

    • 可用

    • 不可用,请检查配置

    代理端口

    DNS透明代理端口号。只有当用户发送的DNS请求报文的目的端口号匹配DNS透明代理的端口号时,设备才进行DNS透明代理处理

    DNS透明代理功能

    开启/关闭DNS透明代理功能

    带宽繁忙保护

    开启/关闭DNS服务器对应链路的带宽繁忙保护功能。带宽繁忙保护功能就是对DNS服务器对应链路的带宽繁忙比进行限制。当流量超过某条链路的带宽繁忙比后,新建流量(非匹配持续性的流量)将不再向该链路分发,而原有流量则仍由该链路继续分发

    会话扩展信息备份

    开启/关闭会话扩展信息备份功能

    持续性信息备份

    开启/关闭持续性表项备份功能

    若设备的配置发生以下变化,则设备会删除当前已有的持续性表项,后续流量将会重新触发生成新的持续性表项

    • 关闭持续性表项备份功能

    • 持续性表项备份由组间备份切换为全局备份

    • 持续性表项备份由全局备份切换为组间备份

    持续性表项备份类型

    持续性表项的备份类型,包括:

    • 组间备份:表示仅在备份组内备份持续性表项

    • 全局备份:在多台负载均衡设备之间备份持续性表项,而非只在备份组内的两台设备间备份

    只有持续性表项备份功能处于开启状态时,才支持配置本功能

IPv4/IPv6代理策略配置步骤

  1. 单击“策略 > 链路负载均衡 > DNS透明代理 > IPv4/IPv6代理策略”。

  2. 在“IPv4/IPv6代理策略”页面单击<新建>。

  3. 新建IPv4/IPv6代理策略。

    图-8 IPv4/IPv6代理策略配置示意图

    表-5 IPv4/IPv6代理策略配置

    参数

    说明

    流量特征

    可选择已创建的流量特征,也可以新创建流量特征

    转发动作

    转发动作,包括:

    • 负载均衡

    • 丢弃报文

    • 转发

    • 跳过DNS透明代理

    对于SIP类型的虚服务不支持配置报文的转发模式为转发

    ToS

    发往DNS服务器的IP报文中的ToS字段

    DNS服务器池

    可选择已创建的DNS服务器池,也可以新创建DNS服务器池

    持续性组

    DNS透明代理仅支持地址端口类型的持续性组

    可选择已创建的持续性组,也可以新创建持续性组

    选择DNS服务器失败的处理

    配置查找DNS服务器失败时继续匹配下一条策略

    在转发中,若根据当前代理策略查找可用DNS服务器失败时,可继续顺序匹配下一条策略

    选择DNS服务器全部繁忙的处理

    配置选择DNS服务器全部繁忙时继续匹配下一条规则

    在转发中,若根据当前代理策略选择的DNS服务器全部处于繁忙状态时,可继续顺序匹配下一条规则

    位于XX之前

    将新创建的策略移至指定的IPv4/IPv6代理策略之前,设备将按照先后顺序依次匹配流量特征,并执行相应的动作。其中,XX为指定IPv4/IPv6代理策略的流量特征名称

  4. 单击<确定>,新建的IPv4/IPv6代理策略会在“IPv4/IPv6代理策略”页面显示。