引言
在数据中心场景中,业务连续性与网络安全防护是核心诉求:一方面需通过防火墙实现威胁检测、访问控制等安全能力,另一方面需避免单点故障导致业务中断。本文基于深信服下一代防火墙(FW)与华为核心交换机,详细讲解 “双 FW 旁挂 + 主备模式 + 策略路由引流” 的部署方案,帮助运维工程师快速落地高可用安全架构。
一、部署背景与核心目标
1. 业务痛点
- 单防火墙部署存在单点故障风险,一旦设备宕机,业务流量失去安全防护且可能中断;
- 核心交换机独立部署时,配置复杂度高,需分别维护两台设备的路由与策略;
- 业务流量需精准引流至防火墙,同时避免路由环路或引流失效。
2. 核心目标
- 安全防护:通过策略路由将业务网段流量定向引流至 FW,实现入侵防御、病毒查杀、访问控制;
- 高可用:正常时流量由主 FW(FW\_A)转发,FW\_A 故障后自动切换至备 FW(FW\_B),业务中断时长控制在秒级;
- 简化管理:核心交换机组建 CSS 集群(虚拟为单一逻辑设备),减少双设备独立配置的复杂度。
2. 关键逻辑
- 旁挂部署:FW 不直接串联在核心链路中,通过策略路由 “拉取” 流量,避免 FW 故障影响核心链路基础连通性;
- 主备切换:FW 间通过心跳线检测对方状态,主 FW 故障时,备 FW 自动接管虚拟路由组(VRID),核心交换机策略路由无需修改即可持续引流。
三、环境准备与规划
1. IP 地址规划(优化后表格,补充规划逻辑)
地址类型 | 关联 VLAN | 地址段 / 具体地址 | 子网掩码 | 用途说明 | 规划逻辑 |
---|---|---|---|---|---|
FW 心跳地址 | - | 2.2.2.0/30 | 255.255.255.252 | FW\_A(2.2.2.1)与 FW\_B(2.2.2.2)通信,用于主备状态检测、配置同步 | /30 网段仅含 2 个可用 IP,节省地址 |
设备管理地址 | 12 | 172.16.12.254/24 | 255.255.255.0 | 核心交换机、FW 的运维登录地址,需确保管理终端可达 | 独立 VLAN 隔离管理流量 |
核心 - FW 互联(Untrust) | 4001 | 172.16.101.5/30(交换机侧) | 255.255.255.252 | 核心交换机与 FW Untrust 区域互联,FW 侧地址为 172.16.101.6 | 互联链路用 / 30,减少广播域 |
核心 - FW 互联(Trust) | 4003 | 172.16.101.13/30(交换机侧) | 255.255.255.252 | 核心交换机与 FW Trust 区域互联,FW 侧地址为 172.16.101.14 | Trust/Untrust 分区隔离流量 |
业务网段(示例) | 400 | 172.40.0.0/24(网关 172.40.0.254) | 255.255.255.0 | 业务服务器网段,流量需经 FW 防护 | 网关位于核心交换机,便于引流 |
业务网段(示例) | 410/420/421 | 对应网段(网关为网段.254) | 255.255.255.0 | 同 VLAN 400 逻辑 | 统一网关规划,简化策略 |
2. 设备清单(补充关键参数)
设备类型 | 品牌型号 | 数量 | 关键作用 | 核心参数要求 |
---|---|---|---|---|
核心交换机 | 华为(如 S12700,支持 CSS) | 2 | 组建 CSS 集群、配置策略路由、连接 FW 与业务网段 | 支持 CSS 集群、策略路由、Eth-Trunk |
深信服 FW | 深信服 AF(如 AF 2000) | 2 | 主备模式工作,实现流量安全检测与高可用切换 | 支持双机热备、虚拟路由组、ACL |
四、详细操作步骤(分模块,附操作目的与验证点)
模块 1:核心交换机 CSS 集群配置(先集群,再互联)
规划 FW 的接口角色: 配置心跳线(主 / 辅) : 配置同步: 通过 “ACL 匹配业务流量 → 流量分类器绑定 ACL → 流量行为指定下一跳(FW) → 策略应用到接口”,实现 “业务流量必须经 FW 转发”。 通过以上步骤,可快速落地 “双 FW 旁挂主备 + 策略路由引流” 方案,兼顾安全防护与高可用。若需进一步优化(如结合 OSPF 动态路由、细化安全策略),可根据实际业务需求扩展配置。♾️ text 代码:
<IDC-Core>system-view # 进入全局配置模式
[IDC-Core]css enable # 开启CSS集群功能,仅需在其中一台交换机执行,会自动同步至另一台
[IDC-Core]set css mode lpu # 指定集群连接方式为业务口连接(需根据硬件支持调整)
1.2 配置集群成员参数(操作目的:区分主备交换机,优先级高的为集群主)
♾️ bash 代码:# 配置集群1(主交换机,优先级200,值越高优先级越高,确保其成为集群主设备)
[IDC-Core]set css id 1 chassis 1 # 为第1台交换机分配集群ID=1,chassis参数对应物理设备编号
[IDC-Core]set css priority 200 chassis 1 # 设定主交换机优先级为200,高于备设备的100,chassis参数对应物理设备编号
[IDC-Core]interface css-port 1/1 # 创建逻辑集群端口1/1(1代表集群ID,1代表端口序号)
[IDC-Core-css-port-1/1]port interface XGigabitEthernet1/1/0/46 enable # 添加物理成员端口
[IDC-Core-css-port-1/1]port interface XGigabitEthernet1/1/0/47 enable # 添加物理成员端口
[IDC-Core-css-port-1/1]quit
# 配置集群2(备交换机,优先级100,确保主设备故障时自动接管)
[IDC-Core]set css id 2 chassis 2 # 为第2台交换机分配集群ID=2,chassis参数对应物理设备编号
[IDC-Core]set css priority 100 chassis 2 # 设定备交换机优先级为100,低于主设备
[IDC-Core]interface css-port 2/1 # 创建逻辑集群端口2/1(2代表集群ID,1代表端口序号)
[IDC-Core-css-port-2/1]port interface XGigabitEthernet2/1/0/46 enable # 添加物理成员端口
[IDC-Core-css-port-2/1]port interface XGigabitEthernet2/1/0/47 enable # 添加物理成员端口
[IDC-Core-css-port-2/1]quit
1.3 验证集群状态(操作验证:确保集群组建成功)
♾️ bash 代码:<IDC-Core>display css status # 查看集群状态,需显示“CSS status: Normal”
<IDC-Core>display css configuration # 确认集群配置与规划一致
模块 2:核心交换机与 FW 互联配置(操作目的:建立核心与 FW 的通信链路)
2.1 配置 VLAN 与互联接口(Untrust/Trust 区域)
♾️ bash 代码:# 配置与FW Untrust区域互联的VLAN 4001
[IDC-Core]vlan 4001 # 创建VLAN 4001,用于核心交换机与FW Untrust区域的互联
[IDC-Core-vlan4001]quit
[IDC-Core]interface Vlanif4001 # 创建VLAN 4001对应的三层接口Vlanif4001
[IDC-Core-Vlanif4001]description YingYong_FW-untrust # 接口描述,便于维护
[IDC-Core-Vlanif4001]ip address 172.16.101.5 255.255.255.252 # 交换机侧IP,与FW Untrust端(172.16.101.6)同网段
[IDC-Core-Vlanif4001]quit
# 配置与FW Trust区域互联的VLAN 4003
[IDC-Core]vlan 4003 # 创建VLAN 4003,用于核心交换机与FW Trust区域的互联
[IDC-Core-vlan4003]quit
[IDC-Core]interface Vlanif4003 # 创建VLAN 4003对应的三层接口Vlanif4003
[IDC-Core-Vlanif4003]description YingYong_FW-trust # 接口描述
[IDC-Core-Vlanif4003]ip address 172.16.101.13 255.255.255.252 # 与FW Trust端(172.16.101.14)同网段
[IDC-Core-Vlanif4003]quit
2.2 配置链路聚合(Eth-Trunk,操作目的:提升带宽与链路冗余)
♾️ bash 代码:# 配置连接主FW(FW_A)的Eth-Trunk 42(链路聚合组编号42,可自定义)
[IDC-Core]interface Eth-Trunk42 # 创建Eth-Trunk接口42
[IDC-Core-Eth-Trunk42]description link_to_sangfor_yingyong_AF(FW_A) # 接口描述
[IDC-Core-Eth-Trunk42]port link-type trunk # 接口类型为Trunk,允许多VLAN通过
[IDC-Core-Eth-Trunk42]port trunk allow-pass vlan 4001 4003 # 仅允许互联VLAN通过,避免无关流量
[IDC-Core-Eth-Trunk42]quit
# 配置连接备FW(FW_B)的Eth-Trunk 43(与主设备链路对称配置)
[IDC-Core]interface Eth-Trunk43 # 创建Eth-Trunk接口43
[IDC-Core-Eth-Trunk43]description link_to_sangfor_yingyong_AF_slave(FW_B) # 接口描述
[IDC-Core-Eth-Trunk43]port link-type trunk # 接口类型为Trunk,允许多VLAN通过
[IDC-Core-Eth-Trunk43]port trunk allow-pass vlan 4001 4003 # 仅允许互联VLAN通过,避免无关流量
[IDC-Core-Eth-Trunk43]quit
模块 3:深信服 FW 主备模式配置(关键:版本一致 + 心跳通 + 配置同步)
3.1 前置准备(必做!避免后续配置失败)
3.1 前置准备
3.2 主 FW(FW\_A)配置(操作目的:设置主设备参数,开启主备同步)
3.4 验证主备状态(操作验证:确保主备正常)
模块 4:策略路由配置(核心:精准引流业务流量至 FW)
4.1 配置思路
4.2 核心交换机配置命令(操作目的:分方向引流,Trust 入方向/ Untrust 入方向)
♾️ bash 代码:# 1. 配置ACL:匹配需引流的业务流量(ACL 3998对应Untrust入方向,ACL 3999对应Trust入方向)
[IDC-Core]acl number 3998 name To-FW-Untrust # 创建高级ACL 3998,命名为“To-FW-Untrust”(匹配需进入FW Untrust区域的流量)
[IDC-Core-acl-adv-3998]rule 10 permit ip destination 172.16.11.0 0.0.0.255 # 规则10:允许目的地址为172.16.11.0/24的流量(业务网段示例)
[IDC-Core-acl-adv-3998]rule 30 permit ip destination 172.40.0.0 0.0.0.255 # 规则30:允许目的地址为172.40.0.0/24的流量(业务网段示例)
[IDC-Core-acl-adv-3998]rule 40 permit ip destination 172.41.0.0 0.0.0.255 # 规则40:允许目的地址为172.41.0.0/24的流量(可按实际业务网段补充)
#省略其他业务匹配规则
[IDC-Core-acl-adv-3998]quit # 退出ACL配置模式
[IDC-Core]acl number 3999 name To-FW-Trust # 创建高级ACL 3999,命名为“To-FW-Trust”(匹配需进入FW Trust区域的流量)
[IDC-Core-acl-adv-3999]rule 10 permit ip source 172.16.11.0 0.0.0.255 # 规则10:允许源地址为172.16.11.0/24的流量(业务网段示例)
[IDC-Core-acl-adv-3999]rule 30 permit ip source 172.40.0.0 0.0.0.255 # 规则30:允许源地址为172.40.0.0/24的流量(可按实际业务网段补充)
#省略其他业务匹配规则
[IDC-Core-acl-adv-3999]quit # 退出ACL配置模式
# 2. 配置流量分类器:绑定ACL,将匹配的流量归类
[IDC-Core]traffic classifier To-FW-Trust operator or precedence 10 # 创建分类器“To-FW-Trust”,operator or表示“或”匹配,precedence 10为优先级(值越小优先级越高)
[IDC-Core-classifier-To-FW-Trust]if-match acl 3999 # 绑定ACL 3999,即分类器仅匹配ACL 3999中的流量
[IDC-Core-classifier-To-FW-Trust]quit # 退出分类器配置模式
[IDC-Core]traffic classifier To-FW-Untrust operator or precedence 5 # 创建分类器“To-FW-Untrust”,优先级5(高于To-FW-Trust,确保Untrust流量优先匹配)
[IDC-Core-classifier-To-FW-Untrust]if-match acl 3998 # 绑定ACL 3998
[IDC-Core-classifier-To-FW-Untrust]quit # 退出分类器配置模式
# 3. 配置流量行为:指定匹配流量的处理方式(转发至FW)
[IDC-Core]traffic behavior To-FW-Trust # 创建流量行为“To-FW-Trust”
[IDC-Core-behavior-To-FW-Trust]permit # 允许匹配的流量通过(不拒绝合法业务流量)
[IDC-Core-behavior-To-FW-Trust]redirect ip-nexthop 172.16.101.14 # 将流量重定向至FW Trust端IP(172.16.101.14),即主FW的Trust接口
[IDC-Core-behavior-To-FW-Trust]quit # 退出行为配置模式
[IDC-Core]traffic behavior To-FW-Untrust # 创建流量行为“To-FW-Untrust”
[IDC-Core-behavior-To-FW-Untrust]permit # 允许匹配的流量通过
[IDC-Core-behavior-To-FW-Untrust]redirect ip-nexthop 172.16.101.6 # 将流量重定向至FW Untrust端IP(172.16.101.6),即主FW的Untrust接口
[IDC-Core-behavior-To-FW-Untrust]quit # 退出行为配置模式
# 4. 配置流量策略:绑定分类器与行为,形成完整的策略规则
[IDC-Core]traffic policy To-FW-Trust match-order config # 创建策略“To-FW-Trust”,match-order config表示按配置顺序匹配
[IDC-Core-trafficpolicy-To-FW-Trust]classifier To-FW-Trust behavior To-FW-Trust # 将分类器“To-FW-Trust”与行为“To-FW-Trust”绑定
[IDC-Core-trafficpolicy-To-FW-Trust]quit # 退出策略配置模式
[IDC-Core]traffic policy To-FW-Untrust match-order config # 创建策略“To-FW-Untrust”
[IDC-Core-trafficpolicy-To-FW-Untrust]classifier To-FW-Untrust behavior To-FW-Untrust # 绑定分类器与行为
[IDC-Core-trafficpolicy-To-FW-Untrust]quit # 退出策略配置模式
# 5. 应用策略到业务网段接口(网关接口,确保流量入方向被引流)
[IDC-Core]interface Vlanif11 # 进入业务网段VLAN 11的网关接口(Vlanif11)
[IDC-Core-Vlanif11]traffic-policy To-FW-Trust inbound # 在接口入方向应用策略“To-FW-Trust”,即业务流量进入网关时被引流至FW
[IDC-Core-Vlanif11]quit # 退出接口配置模式
[IDC-Core]interface Vlanif400 # 进入业务网段VLAN 400的网关接口(Vlanif400)
[IDC-Core-Vlanif400]traffic-policy To-FW-Trust inbound # 入方向应用策略“To-FW-Trust”
[IDC-Core-Vlanif400]quit # 退出接口配置模式
# (省略Vlanif410/420/421配置,均需在入方向应用“To-FW-Trust”策略,确保所有业务网段流量被引流)
[IDC-Core]interface Vlanif12 # 进入管理网段VLAN 12的网关接口(可选引流,根据运维需求决定)
[IDC-Core-Vlanif12]traffic-policy To-FW-Untrust inbound # 入方向应用策略“To-FW-Untrust”
[IDC-Core-Vlanif12]quit # 退出接口配置模式#
4.3 验证策略路由(操作验证:确保流量已引流)
♾️ bash 代码:# 查看策略路由应用状态
<IDC-Core>display traffic-policy applied-record # 确认接口已应用策略,状态为“success”
# 查看ACL匹配次数
<IDC-Core>display acl 3999 # 查看“rule hit count”,有数值说明流量已匹配
五、配置验证与故障排查
1. 核心验证场景(确保部署达标)
验证场景 操作步骤 预期结果 主备切换验证 1. 断开 FW\_A 的电源或互联链路;2. 查看 FW\_B 状态;3. 测试业务服务器连通性 1. FW\_B 切换为 “主设备”;2. 业务 ping 测试无丢包;3. 策略路由下一跳自动指向 FW\_B 策略路由有效性 在业务服务器 ping 外网地址,在核心交换机抓包( capture-packet interface Eth-Trunk42
)抓包显示流量经 Eth-Trunk42(FW\_A)转发,而非直接出外网 配置同步有效性 在 FW\_A 新增一条访问控制策略,查看 FW\_B 是否同步 FW\_B 自动新增相同策略,无需手动配置 2. 常见故障排查(解决 90% 问题)
故障现象 可能原因 排查步骤 FW 心跳线不通 1. 心跳口 IP 配置错误;2. 物理链路中断;3. 防火墙禁用心跳口 1. 检查 FW 心跳口 IP 是否为 2.2.2.1/30 与 2.2.2.2/30;2. 用 ping 2.2.2.2
测试;3. 查看心跳口状态是否为 “up”主备切换失败 1. 虚拟路由组 ID 不一致;2. 优先级配置错误;3. 接口监控未配置 1. 确认主备 FW 的 VRID 均为 100;2. 主优先级(100)\> 备优先级(90);3. 检查接口监控是否包含 VLAN4001/4003 策略路由不匹配 1. ACL 规则错误;2. 策略未应用到接口;3. 流量方向错误 1. 检查 ACL 的源 / 目的地址是否正确;2. 确认接口已应用策略;3. 确认 “inbound” 方向是否匹配流量流向 配置同步失败 1. 主备版本不一致;2. 同步对象未勾选;3. 心跳线不通 1. 确认 FW 版本一致;2. 检查同步对象是否包含 “配置同步”;3. 修复心跳线连通性 六、总结与注意事项
1. 部署关键要点
2. 运维注意事项