两条运营商线各走各的流量?华为防火墙双出口NAPT按目的地址分流

不少企业出口同时买了两条运营商线路,问题也跟着来——内网用户都从一个口出去,另一条线常年闲置。华为防火墙的标准解法:两个出口分别划独立安全区域,各配一个 NAPT 地址池,再用明细静态路由按目的地址把流量引到对应运营商,NAT 策略跟着区域走,一条线故障还能靠路由调整切换。

官方这个 Web 举例的组网:DeviceA 作边界安全网关,GE0/0/1 接运营商 ISP1(公网 1.1.1.1/24,网关 1.1.1.254),GE0/0/7 接运营商 ISP2(公网 2.2.2.2/24,网关 2.2.2.254),GE0/0/3 接内网(10.3.0.1/24)。ISP1 给的地址池 1.1.1.10~1.1.1.12,ISP2 给的地址池 2.2.2.10~2.2.2.12。要求内网 PC 通过两家运营商访问 Internet,去往特定目的地址的流量必须经由相应运营商转发。

配置步骤(Web 界面)

第一步,配内网口。选择"网络 > 接口",单击 GE0/0/3 所在行:安全区域 trust,IPv4 地址 10.3.0.1/24。私网主机默认网关指向 10.3.0.1。

第二步,给两个运营商口各建独立安全区域。先选择"网络 > 安全区域",新建 isp1 区域(优先级 10)和 isp2 区域(优先级 20)。再回到"网络 > 接口":GE0/0/1 所在行填安全区域 isp1、IP 地址 1.1.1.1/24、默认网关 1.1.1.254;GE0/0/7 所在行填安全区域 isp2、IP 地址 2.2.2.2/24、默认网关 2.2.2.254。出口接口配网关这步别省,设备据此生成到运营商的出口路由。

第三步,配安全策略放行内网网段到两个运营商区域。选择"策略 > 安全策略 > 安全策略",新建 policy1(源安全区域 trust、目的安全区域 isp1、源地址 10.3.0.0/24、动作允许)和 policy2(目的安全区域改 isp2,其余相同)。

第四步,配 NAT 地址池。选择"策略 > NAT策略 > NAT策略 > 源转换地址池",新建两个池:ISP1 的池用 1.1.1.10~1.1.1.12,ISP2 的池用 2.2.2.10~2.2.2.12。对照配置脚本,两个池都是 mode pat 端口复用模式并带 route enable,为地址池生成路由保证回程。

第五步,配源 NAT 策略。选择"策略 > NAT策略 > NAT策略 > NAT策略",新建两条,把"走哪个口出去的流量"对应"用哪个池转换"绑死:policy_nat1(源区域 trust、目的区域 isp1、源地址 10.3.0.0/24,源地址转换用 ISP1 的池)和 policy_nat2(目的区域 isp2,其余同上,用 ISP2 的池)。

第六步,配静态路由做分流。选择"网络 > 路由 > 静态路由",本例假设去往 1.1.2.0/24 和 1.1.3.0/24 的报文走 ISP1、去往 2.2.3.0/24 和 2.2.4.0/24 的报文走 ISP2:新建静态路由,目的地址/掩码 1.1.2.0/255.255.255.0、下一跳 1.1.1.254,其余三条同理(1.1.3.0/24→1.1.1.254,2.2.3.0/24 和 2.2.4.0/24→2.2.2.254)。实际使用时向运营商咨询其所属网段配明细路由;地址段多可用 ISP 选路功能导入 ISP 地址文件批量生成。

全部做完后,设备配置脚本如下,可直接对照核对:

#
 sysname DeviceA
#
interface GE0/0/1
 ip address 1.1.1.1 255.255.255.0 
 gateway 1.1.1.254
#
interface GE0/0/3
 ip address 10.3.0.1 255.255.255.0 
#
interface GE0/0/7
 ip address 2.2.2.2 255.255.255.0 
 gateway 2.2.2.254
#
firewall zone trust
 set priority 85
 add interface GE0/0/3
#
firewall zone name isp1 id 4
 set priority 10
 add interface GE0/0/1
#
firewall zone name isp2 id 5
 set priority 20
 add interface GE0/0/7
#
 ip route-static 1.1.2.0 255.255.255.0 1.1.1.254
 ip route-static 1.1.3.0 255.255.255.0 1.1.1.254
 ip route-static 2.2.3.0 255.255.255.0 2.2.2.254
 ip route-static 2.2.4.0 255.255.255.0 2.2.2.254
# 
nat address-group addressgroup1 0
 mode pat
 route enable
 section 0 1.1.1.10 1.1.1.12 
#
nat address-group addressgroup2 1
 mode pat
 route enable
 section 0 2.2.2.10 2.2.2.12
#  
security-policy   
  rule name policy1  
    source-zone trust 
    destination-zone isp1 
    source-address 10.3.0.0 24  
    action permit 
  rule name policy2  
    source-zone trust 
    destination-zone isp2 
    source-address 10.3.0.0 24  
    action permit
#  
nat-policy  
  rule name policy_nat1 
    source-zone trust 
    destination-zone isp1  
    source-address 10.3.0.0 24   
    action source-nat address-group addressgroup1  
  rule name policy_nat2 
    source-zone trust 
    destination-zone isp2  
    source-address 10.3.0.0 24   
    action source-nat address-group addressgroup2
#                                          
return

另外别忘了运营商侧:回程路由由 ISP 配置完成;内网 PC 的网关设 10.3.0.1、DNS 按两家运营商提供的地址设置(本例 9.9.9.9 和 11.11.11.11)。

验证

配置完成后检查两件事:一是内网用户可正常访问 Internet;二是上网时选择"监控 > 会话表",查看源地址为内网地址的会话——去往不同目的网段的会话,转换后源地址应分别落在两个池里,说明分流和 NAPT 都按设计工作。

双出口的价值在于带宽叠加加故障互备,前提是流量真的分开走。贵州诚鑫致达科技给企业做出口改造时,会先把两家运营商的目的网段路由理清楚再动手。你们单位两条线是负载都匀还是一条撑死一条闲置?评论区说说现状。