05-入方向链路负载均衡配置
本章节下载: 05-入方向链路负载均衡配置 (380.46 KB)
目 录
入方向链路负载均衡功能可在多条链路上分担外网用户访问内网服务器的流量。
如图1-1所示,企业分别租用不同运营商ISP 1、ISP 2和ISP 3的三条链路Link 1、Link 2和Link 3为外网用户提供服务。通过配置入方向链路负载均衡,可以使外部互联网用户访问内网服务器的流量均匀地分配到多条链路上,从而提高流量转发效率,提升服务质量;可以避免出现一条链路拥塞而其他链路闲置的情况;可以在某条链路出现故障时,使互联网用户使用其它链路来访问内网服务器,避免因链路故障导致流量转发失败。
入方向链路负载均衡是基于DNS解析实现的。负载均衡设备作为权威DNS服务器负责解析外网用户访问内网服务器的DNS请求报文,并为外网用户访问内网服务器选择最佳链路。具体流程如图1-2所示。
入方向链路负载均衡工作流程简述如表1-1所示。
步骤 |
描述 |
(1) |
Client向Local DNS服务器发起DNS请求 |
(2) |
本地DNS服务器向Device发起DNS请求 |
(3) |
设备根据调度算法、带宽限制、健康性检测等负载均衡调度方式来选择最佳链路对应的虚IP/虚服务器 |
(4) |
设备将选定的虚IP/虚服务器地址通过DNS响应报文发送给发起请求的Local DNS服务器 |
(5) |
Local DNS服务器把获取的虚IP/虚服务器地址发送给Client |
(6) |
Client向虚IP/虚服务器地址发起连接请求(请求进入Device) |
(7) |
Device向内网服务器发起连接请求 |
(8) |
内网服务器应答Device |
(9) |
Device应答Client |
入方向链路负载均衡是设备通过智能解析DNS请求报文实现的。
DNS listener |
DNS监听器 |
DNS mapping |
DNS映射 |
VS pool |
Virtual server pool,虚服务器池 |
Link |
链路 |
VIP |
· Virtual server IP,虚服务器的IP · Virtual IP,虚IP |
如图1-3所示,设备上包括以下要素:
· DNS监听器:用于监听DNS请求。只有当DNS请求的目的地址匹配DNS监听器的IP地址时,该DNS请求报文才会进入入方向链路负载均衡处理流程。
· DNS映射:用于关联域名与虚服务器池。负载均衡设备根据DNS映射查找DNS域名关联的虚服务器池。
· 链路:运营商提供的实体链路。
· 虚服务器池:用于在虚服务器池下关联虚服务器与链路。链路和虚服务器的可用性共同决定虚服务器是否可参与调度。
· 虚IP/虚服务器:面向用户业务的虚拟载体,当用户流量需要在多台内网服务器之间进行负载均衡时,可选择虚服务器作为面向用户业务的虚拟载体,此时虚服务器IP地址既是入链路负载均衡中的DNS解析结果,也是服务器负载均衡的入口。
当设备收到了目的地址匹配DNS监听地址的DNS请求时,首先在DNS映射中查找域名所关联的虚服务器池。设备依据虚服务器池中配置的调度算法选出最佳链路所对应的虚IP/虚服务器IP地址,将选定的虚IP/虚服务器IP地址通过DNS应答报文发送给用户,用户得到虚IP/虚服务器IP地址后将其作为目的地址,通过该虚IP/虚服务器关联的链路访问内网服务器。
在配置入方向链路负载均衡时,管理员需要指定设备为处理指定域名DNS请求的权威DNS服务器,一般可在域名注册商网站上配置。
入方向链路负载均衡配置任务如下:
(1) 配置DNS监听器
(2) 配置DNS映射
(3) 配置虚服务器
(4) 配置链路
(5) 配置虚服务器池
(6) (可选)配置DNS区域
(7) (可选)配置ISP信息
(8) (可选)配置Region
(9) (可选)配置Topology
(10) (可选)配置负载均衡链路带宽繁忙日志功能
(11) (可选)测试入方向链路负载均衡效果
(12) (可选)配置可记录的解析失败的DNS请求报文
通过配置DNS监听器,指定设备对外提供DNS解析服务的IP地址和端口号等信息。
若DNS监听器查找DNS请求资源记录失败,可以采用如下处理方式:
· 通过DNS代理回应请求报文
· 不回应DNS请求
· 回应DNS拒绝报文
(1) 进入系统视图。
system-view
(2) 创建DNS监听器,并进入DNS监听器视图。
loadbalance dns-listener dns-listener-name
(3) 指定DNS监听器的IPv4地址和端口。
(IPv4网络)
ip address ipv4-address [ port port-number ]
(IPv6网络)
ipv6 address ipv6-address [ port port-number ]
缺省情况下,未指定DNS监听器的IP地址和端口。
(4) (可选)指定DNS监听器所属的VPN实例。
vpn-instance vpn-instance-name
缺省情况下,DNS监听器属于公网。
(5) 开启DNS监听功能。
service enable
缺省情况下,DNS监听功能处于关闭状态。
(6) (可选)指定DNS监听器查找DNS请求资源记录失败时的处理方式。
fallback { dns-proxy | no-response | reject }
缺省情况下,DNS监听器查找DNS请求资源记录失败时的处理方式为回应DNS拒绝报文。
通过配置DNS映射,可以将DNS域名和虚服务器池关联起来。
同一个DNS映射视图下,可以添加多个域名。
(1) 进入系统视图。
system-view
(2) 创建DNS映射,并进入DNS映射视图。
loadbalance dns-map dns-map-name
(3) 添加域名。
domain-name domain-name
缺省情况下,未添加任何域名。
(4) 指定DNS映射使用的虚服务器池。
virtual-server-pool pool-name
缺省情况下,DNS映射未使用任何虚服务器池。
(5) (可选)配置缓存DNS域名解析记录的缓存时间。
ttl ttl-value
缺省情况下,域名解析记录的缓存时间缺省值为3600秒。
(6) 开启DNS映射。
service enable
缺省情况下,DNS映射处于关闭状态。
当用户流量既需要进行入方向链路负载均衡,又需要在多台内网服务器之间进行服务器负载均衡时,可以通过配置虚服务器,指定内网服务器对外提供服务的IP地址和端口等信息。有关虚服务器的相关配置,请参见“负载均衡配置指导”中的“服务器负载均衡”。
· 在同时配置入方向链路负载均衡功能和服务器负载均衡功能时,请配置虚服务器的IP地址与DNS监听器地址为不同的公网地址,以免影响入方向链路负载均衡功能的正常使用。
· 配置虚服务器IPv4地址时,要求配置非全0的单播地址且掩码长度为32。
· 配置虚服务器IPv6地址时,要求配置非全0的单播地址且前缀长度为128。
由于虚服务器池中进行虚IP/虚服务器调度时,链路可用性是决定虚IP/虚服务器是否可参与调度的因素之一。可以根据实际需求,通过配置链路的健康检测,所允许的最大期望带宽及带宽繁忙比例等功能来影响链路的可用性。
在入方向负载均衡中,链路通往外网方向的下一跳指的是链路对端设备的IP地址,管理员通过配置该地址来指定对哪一条链路进行健康检测和带宽限制。
通过为链路配置健康检测方法,可以对链路的质量、链路的状态等进行检测,保证其可用。链路的健康检测方法通过引用NQA模板来配置。NQA模板的相关配置,请参见“网络管理和监控配置指导”中的“NQA”。
通过配置可以调整链路的带宽繁忙比,即当前带宽与最大带宽的百分比值,以及最大期望带宽。当某条链路流量超过该链路的带宽繁忙比与最大期望带宽的乘积后,链路进入繁忙状态新建流量将不再向该链路分发,而原有流量则仍由该链路继续分发;当该链路流量低于该链路的带宽繁忙恢复比与最大期望带宽的乘积后,链路解除繁忙状态,重新参与调度。
链路的最大期望带宽不仅用于繁忙保护功能,还用于带宽算法和最大带宽算法中剩余带宽的计算。
(1) 进入系统视图。
system-view
(2) 创建链路,并进入链路视图。
loadbalance link link-name
(3) 指定链路通往外网方向的下一跳。
router ip ipv4-address
缺省情况下,未配置链路通往外网方向的下一跳IP地址。
(4) (可选)配置链路的健康检测功能,请依次进行如下配置。
a. 指定链路的健康检测方法。
probe template-name
缺省情况下,未指定任何链路检测方法。
b. 配置链路检测的成功条件。
success-criteria { all | at-least min-number }
缺省情况下,只有全部方法通过检测才认为健康检测成功。
(5) (可选)配置链路的带宽繁忙比例。
bandwidth [ inbound | outbound ] busy-rate busy-rate-number [ recovery recovery-rate-number ]
缺省情况下,链路的总带宽繁忙比例为70。
(6) (可选)配置链路的最大期望带宽。
max-bandwidth [ inbound | outbound ] bandwidth-value kbps
缺省情况下,链路所允许的最大总期望带宽、最大上行期望带宽和最大下行期望带宽均为0,即不限制。
通过配置虚服务器池,可将具有相同或相似功能的虚IP或虚服务器进行统一管理。
配置虚服务器池的调度算法时,可以分别指定首选调度算法、次选调度算法和备选调度算法。其中,首选调度算法优先级最高,当采用首选算法不能选出可用的虚服务器时,采用次选调度算法,备选调度算法优先级最低。
开启繁忙保护功能后,虚服务器池根据用户配置的调度方式选择虚IP/虚服务器时,会查看所选取的虚IP/虚服务器对应的链路是否超过配置的繁忙比例,如果超出则不选择该虚IP/虚服务器。关于配置链路的带宽繁忙比例,具体请参见“配置链路”。
(1) 进入系统视图。
system-view
(2) 创建虚服务器池,并进入虚服务器池视图。
loadbalance virtual-server-pool name
(3) 添加虚IP或虚服务器,请至少选择其中一项进行配置。
¡ 添加虚IP
(IPv4网络)
virtual-ip ipv4-address link link-name [ weight weight-value ]
(IPv6网络)
virtual-ipv6 ipv6-address link link-name [ weight weight-value ]
缺省情况下,虚服务器池中未添加任何虚IP地址。
¡ 添加虚服务器
virtual-server virtual-server-name link link-name [ weight weigth-name ]
缺省情况下,虚服务器池未添加任何虚服务器。
(4) 配置虚服务器池的调度算法。
predictor { alternate | fallback | preferred } { least-connection | proximity | random | round-robin | topology | { bandwidth | max-bandwidth } [ inbound | outbound ] | hash address { source | source-ip-port | destination } [ mask mask-length | prefix prefix-length ] }
缺省情况下,虚服务器池的首选调度算法为加权轮转算法,不存在次选和备选调度算法。
(5) (可选)开启虚服务器池的繁忙保护功能。
bandwidth busy-protection enable
缺省情况下,虚服务器池繁忙保护功能处于关闭状态。
在DNS正向解析过程中,负载均衡设备使用DNS正向区域中配置的资源记录来查找DNS域名对应的主机名。DNS资源记录是负载均衡设备用于解析DNS请求的数据记录表项,DNS正向区域中可以配置以下几种类型的资源记录:
· SOA(Start of Authority,起始授权)资源记录包含DNS区域的基本信息。该记录定义了该区域的起始点,是对该区域数据的权威声明。
· CNAME(Canonical Name,规范名称)资源记录允许将多个别名映射到同一正规主机名,即同一服务器。例如,企业内网有一台服务器主机名为host.example.com,它同时对外提供Web服务和邮件服务,为了便于用户的访问,可以为该服务器配置CNAME资源记录,分别配置别名为www.example.com和mail.example.com。当用户请求Web服务时,访问www.example.com,当用户请求邮件服务时,访问mail.example.com,而实际访问的均为host.example.com。
· MX(Mail Exchanger,邮件交换)资源记录用于指定该DNS正向区域的邮件服务器。
· NS(Name Server,权威名称服务器)资源记录用于指定为该DNS正向区域服务的权威名称服务器。
· SRV(Service,服务)资源记录用来配置DNS正向区域所提供的服务,以及提供该服务的服务器。
· TXT(Text,文本)资源记录用于为DNS正向区域设置说明。
如图1-4所示,配置DNS正向区域的设备收到DNS请求后,首先查询在DNS正向区域中配置的资源记录得到主机域名,再依据该主机域名在DNS映射中查找域名所对应的虚IP/虚服务器IP地址。
(1) 创建DNS正向区域,并进入DNS正向区域视图。
loadbalance zone domain-name
(2) 配置SOA资源记录
a. 创建SOA类型的资源记录,并进入SOA视图。
soa
b. 配置主域名服务器的主机名。
primary-nameserver host-name
缺省情况下,未配置主域名服务器的主机名。
c. 配置管理员的邮件地址。
responsible-mail mail-address
缺省情况下,未配置管理员的邮件地址。
d. 配置DNS正向区域的序列号。
serial number
缺省情况下,DNS正向区域的序列号为1。
e. 配置刷新间隔。
refresh refresh-interval
缺省情况下,刷新间隔为3600秒。
f. 配置重试时间。
retry retry-interval
缺省情况下,重试时间为600秒。
g. 配置过期时间。
expire expire-time
缺省情况下,过期时间为86400秒。
h. 配置最小生命周期。
min-ttl ttl-value
缺省情况下,最小生命周期为3600秒。
(3) 配置其他类型的资源记录。
record { cname alias alias-name canonical canonical-name | mx [ host hostname ] exchanger exchanger-name preference preference | ns [ sub subname ] authority ns-name | srv [ service service-name ] host-offering-service hostname priority priority weight weight port port-number | txt [ sub subname ] describe-txt description } [ ttl ttl-value ]
支持配置CNAME、MX、NS、SRV和TXT资源记录。
(4) 配置资源记录的全局缓存时间。
ttl ttl-value
缺省情况下,资源记录的全局缓存时间为3600秒。
负载均衡设备根据DNS反向区域对收到的报文进行反向DNS解析,即根据IP地址查找对应的域名。DNS反向区域中设置的PTR(Pointer Record,指针记录)用来记录域名和IP地址的映射关系。
DNS反向地址解析通常用于解决网络中的垃圾邮件攻击,即对邮件发送方的合法性进行检查,来拒绝转发或接收非法邮件。例如,当邮件服务器收到来自外网用户的邮件时,向负载均衡设备发送反向解析请求,负载均衡设备收到来自邮件服务器的反向解析请求后,查找在DNS反向区域中配置的PTR资源记录,将邮件发送方的源IP地址解析为域名并将解析结果返回给邮件服务器。邮件服务器将收到的域名与邮件报文中的发送方域名进行比较,结果一致则接收该邮件,否则认为该邮件为垃圾邮件并将其丢弃。
(1) 进入系统视图。
system-view
(2) 创建DNS反向区域,并进入DNS反向区域视图。
loadbalance reverse-zone { ip ipv4-address mask-length | ipv6 ipv6-address prefix-length }
(3) 配置PTR资源记录。
record ptr { ip ipv4-address | ipv6 ipv6-address } domain-name [ ttl ttl-value ]
缺省情况下,未配置PTR资源记录。
本功能主要配置ISP(Internet Service Provider,互联网服务提供商)的IP地址信息,该地址信息可以在ISP类型的匹配规则中进行引用。当目的地址匹配了指定的ISP地址信息后,可根据配置执行相应的负载均衡动作。设备支持通过以下三种方式配置ISP信息:
· 手工配置ISP信息:由用户手工指定ISP地址信息。
· 自动更新ISP信息:开启ISP自动更新功能后,设备会依据运营商的WHOIS服务器管理标识定期向指定的WHOIS服务器查询ISP地址信息。
· 导入ISP文件:由用户手工导入ISP文件。设备仅允许导入.tp格式的文件。ISP文件可在官方网站获取。
配置ISP信息分为手工配置ISP信息、自动更新ISP信息和导入ISP文件,三者既可单独配置,也可同时配置。
(1) 进入系统视图。
system-view
(2) 创建ISP,并进入ISP视图。
loadbalance isp name isp-name
(3) 配置ISP的IP地址信息。
(IPv4网络)
ip address ipv4-address { mask-length | mask }
(IPv6网络)
ipv6 address ipv6-address prefix-length
缺省情况下,未配置ISP的IP地址信息。
同一ISP中不允许配置完全相同的网段。
(4) (可选)配置ISP的描述信息。
description text
缺省情况下,未配置ISP的描述信息。
在配置本功能前,请先完成WHOIS服务器的相关配置。
(1) 进入系统视图。
system-view
(2) 创建ISP,并进入ISP视图。
loadbalance isp name isp-name
(3) 配置当前ISP的WHOIS服务器管理标识。
whois-mntner mntner-name
缺省情况下,未配置当前ISP的WHOIS服务器管理标识。
同一ISP下,最多允许手动配置10个WHOIS服务器管理标识。
(4) 退回系统视图。
quit
(5) 开启ISP自动更新功能。
loadbalance isp auto-update enable
缺省情况下,ISP自动更新功能处于关闭状态。
(6) 配置ISP自动更新的频率。
loadbalance isp auto-update frequency { per-day | per-week | per-month }
缺省情况下,ISP自动更新的频率为每周一次。
(7) 配置ISP自动更新所查询的WHOIS服务器。
loadbalance isp auto-update whois-server { domain domain-name | ip ip-address }
缺省情况下,未配置ISP自动更新所查询的WHOIS服务器。
在配置本功能前,请先准备好ISP文件。
当导入的文件不存在、文件名不合法或文件解密失败时,系统将维持已有的导入内容不变。
当导入文件解析IP地址失败而退出导入操作时,系统将清空上次导入的内容,只保存本次已导入成功的内容。
(1) 进入系统视图。
system-view
(2) 导入ISP文件。
loadbalance isp file isp-file-name
区域对象中包含根据不同ISP信息(运营商类别)划分的地址段。
(1) 进入系统视图。
system-view
(2) 创建区域对象,并进入区域对象视图。
loadbalance region region-name
(3) 添加ISP信息。
isp isp-name
当虚服务器池中指定调度算法为静态就近性调度算法(topology)时,则需要配置Topology。关于虚服务器池的调度算法的具体配置,请参见“配置虚服务器池”。
若DNS请求匹配多个Topology记录时,优先选择优先级值高的记录。
(1) 进入系统视图。
system-view
(2) 配置Topology。
topology region region-name { ip ipv4-address { mask-length | mask } | ipv6 ipv6-address prefix-length } [ priority priority ]
通过开启负载均衡链路带宽繁忙日志功能,可以实现对所有链路的繁忙状态进行记录。
(1) 进入系统视图。
system-view
(2) 开启负载均衡链路带宽繁忙日志功能。
loadbalance log enable bandwidth-busy
缺省情况下,负载均衡链路带宽繁忙日志功能处于关闭状态。
可以通过指定DNS请求报文的类型、源IPv4/IPv6地址、源端口、目的IPv4/IPv6地址和目的端口,测试入方向链路负载均衡的解析结果。
可在任意视图下执行本命令,测试IPv4入方向链路负载均衡的解析结果。
loadbalance local-dns-server schedule-test ip [ vpn-instance vpn-instance-name ] destination destination-address [ destination-port destination-port ] source source-address source-port source-port type { { a | aaaa | cname | mx | ns | soa | srv | txt } domain domain-name | ptr ip address { ipv4-address | ipv6-address } } [ slot slot-number ]
可在任意视图下执行本命令,测试IPv6入方向链路负载均衡的解析结果。
loadbalance local-dns-server schedule-test ipv6 [ vpn-instance vpn-instance-name ] destination destination-address [ destination-port destination-port ] source source-address source-port source-port type { { a | aaaa | cname | mx | ns | soa | srv | txt } domain domain-name | ptr ip address ipv4-address } [ slot slot-number ]
(1) 进入系统视图。
system-view
(2) 配置可记录的解析失败的DNS请求报文的类型。
loadbalance local-dns-server parse-fail-record type { a | aaaa | all-disable | all-enable | cname | mx | ns | ptr | soa | srv | txt }
缺省情况下,可记录的解析失败的DNS请求报文的类型为全部类型。
(3) 配置可记录的解析失败的DNS请求报文的最大数目。
loadbalance local-dns-server parse-fail-record max-number max-number
缺省情况下,可记录的解析失败的DNS请求报文的最大数目为10000条。
在完成上述配置后,在任意视图下执行display命令可以显示配置后入方向链路负载均衡的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除链路负载均衡的统计信息。
配置 |
命令 |
显示负载均衡DNS监听器的信息 |
display loadbalance dns-listener [ name listener-name ] |
显示负载均衡DNS监听器的统计信息 |
display loadbalance dns-listener statistics [ name dns-listener-name ] [ slot slot-number ] |
显示负载均衡DNS映射的信息 |
display loadbalance dns-map [ name dns-map-name ] |
显示负载均衡DNS映射的统计信息 |
display loadbalance dns-map statistics [ name dns-map-name ] [ slot slot-number ] |
显示虚服务器池的信息 |
display loadbalance virtual-server-pool [ brief | name pool-name ] |
显示链路的信息 |
display loadbalance link [ brief | name link-name ] |
显示负载均衡DNS正向区域的信息 |
display loadbalance zone [ name domain-name ] |
显示负载均衡DNS反向区域的信息 |
display loadbalance reverse-zone { ip [ ipv4-address mask-length ] | ipv6 [ ipv6-address prefix-length ] } |
显示ISP的信息 |
display loadbalance isp [ ip ipv4-address | ipv6 ipv6-address | name isp-name ] |
显示解析失败的DNS请求报文的信息 |
display loadbalance local-dns-server parse-fail-record [ type { a | aaaa | cname | mx | ns | soa | srv | txt } ] [ domain domain-name ] | ptr [ ip address { ipv4-address | ipv6-address } ] ] [ vpn-instance vpn-instance-name ] [ slot slot-number ] |
清除DNS监听器的统计信息 |
reset loadbalance dns-listener statistics [ dns-listener-name ] |
清除DNS映射的统计信息 |
reset loadbalance dns-map statistics [ dns-map-name ] |
清除当前记录的解析失败的DNS请求报文的信息 |
reset loadbalance local-dns-server parse-fail-record |
如图1-5所示,管理员从两个运营商ISP 1和ISP 2处分别租用了链路Link 1和Link 2,这两条链路的路由器跳数、带宽和成本均相同。通过配置入方向链路负载均衡,使Client host访问Internal server时,如果遇到其中一条链路故障的情况,可以优先选择这两条链路中的可用链路。其中,Internal server对外提供服务的域名为l.example.com,实际主机名为www.example.com。
(1) 配置接口IP地址
# 根据组网图中规划的信息,配置各接口的IP地址,具体配置步骤如下。
<Device> system-view
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip address 10.1.1.1 255.255.255.0
[Device-GigabitEthernet1/0/1] quit
请参考以上步骤配置其他接口的IP地址,具体配置步骤略。
(2) 配置接口加入安全域。
# 请根据组网图中规划的信息,将接口加入对应的安全域,具体配置步骤如下。
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/1
[Device-security-zone-Untrust] import interface gigabitethernet 1/0/2
[Device-security-zone-Untrust] quit
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 1/0/3
[Device-security-zone-Trust] quit
(3) 配置安全策略
配置安全策略放行Untrust与Trust安全域、Untrust与Local安全域、Local与Untrust安全域之间的流量,用于用户访问外网服务器。
# 配置名称为lbrule1的安全策略规则,使用户可以访问内网服务器,具体配置步骤如下。
[Device] security-policy ip
[Device-security-policy-ip] rule name lbrule1
[Device-security-policy-ip-1-lbrule1] source-zone untrust
[Device-security-policy-ip-1-lbrule1] destination-zone trust
[Device-security-policy-ip-1-lbrule1] destination-ip-subnet 192.168.1.0 255.255.255.0
[Device-security-policy-ip-1-lbrule1] action pass
[Device-security-policy-ip-1-lbrule1] quit
# 配置名称为lblocalin的安全策略规则,使用户可以访问DNS监听器,具体配置步骤如下。
[Device-security-policy-ip] rule name lblocalin
[Device-security-policy-ip-2-lblocalout] source-zone untrust
[Device-security-policy-ip-2-lblocalout] destination-zone local
[Device-security-policy-ip-2-lblocalout] destination-ip-subnet 10.1.1.1 255.255.255.255
[Device-security-policy-ip-2-lblocalout] destination-ip-subnet 20.1.1.1 255.255.255.255
[Device-security-policy-ip-2-lblocalout] action pass
[Device-security-policy-ip-2-lblocalout] quit
[Device-security-policy-ip] quit
# 配置名称为lblocalout的安全策略规则,使Device可以向链路下一跳发送健康检测报文,具体配置步骤如下。
[Device-security-policy-ip] rule name lblocalout
[Device-security-policy-ip-3-lblocalout] source-zone local
[Device-security-policy-ip-3-lblocalout] destination-zone untrust
[Device-security-policy-ip-3-lblocalout] destination-ip-subnet 10.1.1.0 255.255.255.0
[Device-security-policy-ip-3-lblocalout] destination-ip-subnet 20.1.1.0 255.255.255.0
[Device-security-policy-ip-3-lblocalout] action pass
[Device-security-policy-ip-3-lblocalout] quit
[Device-security-policy-ip] quit
(4) 配置链路
# 创建ICMP类型的NQA模板t1。
[Device] nqa template icmp t1
[Device-nqatplt-icmp-t1] quit
# 创建名为link1的链路,指定链路出方向的下一跳IP地址为10.1.1.2,并引用ICMP类型的NQA模板t1。
[Device] loadbalance link link1
[Device-lb-link-link1] router ip 10.1.1.2
[Device-lb-link-link1] probe t1
[Device-lb-link-link1] quit
# 创建名为link2的Link,指定链路出方向的下一跳IP地址为20.1.1.2,并引用ICMP类型的NQA模板t1。
[Device] loadbalance link link2
[Device-lb-link-link2] router ip 20.1.1.2
[Device-lb-link-link2] probe t1
[Device-lb-link-link2] quit
(5) 配置实服务组
# 创建实服务组sf。
[Device] server-farm sf
[Device-sfarm-sf] quit
(6) 配置实服务器
# 创建实服务器rs,配置其IPv4地址为192.168.1.10,并加入实服务组sf。
[Device] real-server rs
[Device-rserver-rs] ip address 192.168.1.10
[Device-rserver-rs] server-farm sf
[Device-rserver-rs] quit
(7) 配置虚服务器
# 创建HTTP类型的虚服务器vs1,配置其VSIP为10.1.1.3,端口为80,指定其缺省主用实服务组为sf,并开启此虚服务器。
[Device] virtual-server vs1 type http
[Device-vs-http-vs1] virtual ip address 10.1.1.3
[Device-vs-http-vs1] port 80
[Device-vs-http-vs1] default server-farm sf
[Device-vs-http-vs1] service enable
[Device-vs-http-vs1] quit
# 创建HTTP类型的虚服务器vs2,配置其VSIP为20.1.1.3,端口为80,指定其缺省主用实服务组为sf,并开启此虚服务器。
[Device] virtual-server vs2 type http
[Device-vs-http-vs2] virtual ip address 20.1.1.3
[Device-vs-http-vs2] port 80
[Device-vs-http-vs2] default server-farm sf
[Device-vs-http-vs2] service enable
[Device-vs-http-vs2] quit
(8) 配置虚服务器池
# 创建虚服务器池vsp,并添加虚服务器vs1、vs2,虚服务器分别关联链路link1、link2。
[Device] loadbalance virtual-server-pool vsp
[Device-lb-vspool-vsp] virtual-server vs1 link link1
[Device-lb-vspool-vsp] virtual-server vs2 link link2
(9) 配置DNS监听器
# 创建DNS监听器dl1,配置其IPv4地址为10.1.1.1,并开启DNS监听服务。
[Device] loadbalance dns-listener dl1
[Device-lb-dl-dl1] ip address 10.1.1.1
[Device-lb-dl-dl1] service enable
[Device-lb-dl-dl1] quit
# 创建DNS监听器dl2,配置其IPv4地址为20.1.1.1,并开启DNS监听服务。
[Device] loadbalance dns-listener dl2
[Device-lb-dl-dl2] ip address 20.1.1.1
[Device-lb-dl-dl2] service enable
[Device-lb-dl-dl2] quit
(10) 配置DNS映射
# 创建DNS映射dm,配置其域名为www.example.com,指定虚服务器池vsp,并开启DNS映射。
[Device] loadbalance dns-map dm
[Device-lb-dm-dm] domain-name www.example.com
[Device-lb-dm-dm] service enable
[Device-lb-dm-dm] virtual-server-pool vsp
[Device-lb-dm-dm] quit
(11) 配置DNS正向区域
# 创建域名为example.com的DNS正向区域。
[Device] loadbalance zone example.com
# 配置CNAME资源记录,为主机www.example.com指定别名l.example.com。
[Device-lb-zone-example.com] record cname alias l.example.com. canonical www.example.com. ttl 600
[Device-lb-zone-example.com] quit
# 显示所有DNS监听器的信息。
[Device] display loadbalance dns-listener
DNS listener name:dl1
Service state:Enabled
IPv4 address: 10.1.1.1
Port: 53
IPv6 address: --
IPv6 Port: 53
Fallback: Reject
VPN instance:
DNS listener name: dl2
Service state: Enabled
IPv4 address: 20.1.1.1
Port: 53
IPv6 address: --
IPv6 Port: 53
Fallback: Reject
VPN instance:
# 显示所有DNS映射的信息。
[Device] display loadbalance dns-map
DNS mapping name: dm
Service state: Enabled
TTL: 3600
Domain name list: www.example.com
Virtual server pool: vsp
# 显示所有DNS正向区域的信息。
[Device]display loadbalance zone
Zone name: example.com
TTL: 3600s
SOA:
Record list:
Type TTL RDATA
CNAME 600s l.example.com. www.example.com.
# 显示所有虚服务器池的简要信息。
[Device] display loadbalance virtual-server-pool brief
Predictor: RR - Round robin, RD - Random, LC - Least connection,
TOP - Topology, PRO - Proximity
BW - Bandwidth, MBW - Max bandwidth,
IBW - Inbound bandwidth, OBW - Outbound bandwidth,
MIBW - Max inbound bandwidth, MOBW - Max outbound bandwidth,
HASH(SIP) - Hash address source IP,
HASH(DIP) - Hash address destination IP,
HASH(SIP-PORT) - Hash address source IP-port
VSpool Pre Alt Fbk BWP Total Active
vsp RR -- -- Enabled 0 0
# 显示所有虚服务器池的详细信息。
[Device] display loadbalance virtual-server-pool
Virtual-server pool: vsp
Predictor:
Preferred RR
Alternate --
Fallback --
Bandwidth busy-protection:Disabled
Total virtual servers: 2
Active virtual servers: 2
Virtual server list:
Name State Address Port Weight Link
vs1 Active 10.1.1.3 80 100 link1
vs2 Active 20.1.1.3 80 100 link2
# 显示所有实服务器的简要信息。
[Device] display real-server brief
Real server Address Port State VPN instance Server farm
rs 192.168.1.10 0 Active sf
# 显示所有链路的简要信息。
[Device] display loadbalance link brief
link Router IP State VPN instance Link group
link1 10.1.1.2 Active
link2 20.1.1.2 Probe-failed
# 显示所有实服务组的详细信息。
[Device] display server-farm
Server farm: sf
Description:
Predictor: Round robin
Proximity: Enabled
NAT: Enabled
SNAT pool:
Failed action: Keep
Active threshold: Disabled
Slow-online: Disabled
Selected server: Disabled
Probe information:
Probe success criteria: All
Probe method:
t1
Total real server: 1
Active real server: 1
Real server list:
Name State VPN instance Address Port Weight Priority
rs Active 192.168.1.10 0 100 4
# 显示所有虚服务器的简要信息。
[Device] display virtual-server brief
Virtual server State Type VPN instance Virtual address Port
vs1 Active HTTP 10.1.1.3/32 80
vs2 Active HTTP 20.1.1.3/32 80
完成上述配置后,当Client Host访问域名l.example.com时,可以解析到10.1.1.1,使用ISP 1的链路访问内网服务器,也可以解析到20.1.1.1,使用ISP 2的链路访问内网服务器。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!