各位老师好,想请教一个 H3C MSR36-40 双出口策略路由问题,公网 IP、SNMP、账号密码、NAT 详细映射已做脱敏。
一、现有环境
设备:H3C MSR36-40
版本:Comware 7.1.059 Release 0304P15
拓扑大概如下:
核心交换机作为三层网关,默认路由指向出口路由器 MSR 的内网口。
MSR 有两条公网出口:
GE0/0:联通出口,当前普通办公网段默认走这里。
GE0/2:电信出口,带宽更大,希望指定服务器网段走这里。
GE0/1:内网口,连接核心交换机,接口上绑定 ip policy-based-route wan。
二、想实现的目标
指定服务器网段访问公网走电信出口。
其他办公网段访问公网继续走联通出口。
内网互访不能被策略路由影响。
VPN/子公司网段不能被策略路由错误导到公网。
现有 NAT server 映射尽量不受影响。
希望保留 NQA/Track,线路异常时可以自动切换。
三、当前原有配置逻辑
目前默认路由类似如下:
ip route-static 0.0.0.0 0 电信网关 track 2 preference 40
ip route-static 0.0.0.0 0 联通网关 track 1 preference 30
当前 PBR 原配置类似如下:
policy-based-route wan permit node 2
if-match acl 3002
apply next-hop 电信网关
GE0/1 内网口绑定了:
interface GigabitEthernet0/1
ip policy-based-route wan
问题是 ACL 3002 里面历史上混了很多单点 IP,不只是服务器网段,导致部分办公终端或其他网段也可能被策略导到电信出口。
四、准备调整思路
想新建一个专门给 PBR 用的 ACL,例如 ACL 3006。
思路是先 deny 内网/VPN/子公司目的地址,再 permit 指定源网段。
计划 ACL 类似如下:
acl advanced 3006
rule 5 deny ip destination 10.0.0.0 0.255.255.255
rule 10 deny ip destination 172.16.0.0 0.15.255.255
rule 15 deny ip destination 192.168.0.0 0.0.255.255
rule 16 deny ip destination VPN特殊网段1 0.0.0.255
rule 17 deny ip destination VPN特殊网段2 0.0.0.255
rule 90 permit ip source VPN设备地址 0
rule 91 permit ip source 防火墙地址 0
rule 100 permit ip source 服务器网段1 0.0.0.255
rule 110 permit ip source 服务器网段2 0.0.0.255
rule 120 permit ip source 服务器网段3 0.0.0.255
然后 PBR 改成:
policy-based-route wan permit node 10
if-match acl 3006
apply next-hop 电信网关 track 2
再删除旧节点:
undo policy-based-route wan permit node 2
五、测试中遇到的问题
测试时发现 track 2 状态是 NotReady。
原电信 NQA 配置里 reaction 是 trap-only,类似如下:
nqa entry admin dx
type icmp-echo
destination ip 电信网关
reaction 2 checked-element probe-fail threshold-type consecutive 3 action-type trap-only
联通 NQA 是 trigger-only,电信是 trap-only。
所以怀疑 apply next-hop 电信网关 track 2 没有稳定生效。
六、想请教的问题
H3C MSR 上 PBR 的 ACL 这样写是否合理?
也就是先 deny 内网/VPN目的地址,再 permit 指定源网段,是否可以避免内网互访被策略路由带偏?
apply next-hop 电信网关 track 2 依赖的 NQA,如果 reaction 是 trap-only,是否会导致 Track 状态 NotReady?
是否应该改成 trigger-only?
原策略没有带 track,直接 apply next-hop 电信网关;新策略加 track 前,是否应该先把 NQA/Track 修成 Positive,再切换 PBR?
部分服务器同时存在联通公网 NAT server 映射,如果服务器主动访问公网被 PBR 指向电信,会不会造成回包路径不一致,影响外部访问?
这种场景是否推荐按下面顺序处理:
原 NAT ACL 和 NAT server 先不动;
新建专用 PBR ACL;
先修 NQA/Track;
确认 Track 正常后再切 PBR;
测试通过后再保存配置。
麻烦各位老师帮忙看一下这个思路有没有明显问题,尤其是 H3C MSR 的 PBR、ACL deny/permit 和 NQA/Track 联动逻辑。
完整解答:MSR36-40 PBR+NQA Track 双出口分流方案校验 & 修正
一、ACL 3006 写法合理性判断(核心)
1. 现有 ACL 逻辑优缺点
plaintext
acl advanced 3006
rule 5 deny ip destination 10.0.0.0 0.255.255.255 // 内网A段互访拦截
rule 10 deny ip destination 172.16.0.0 0.15.255.255 // 内网B段互访拦截
rule 15 deny ip destination 192.168.0.0 0.0.255.255 // 内网C段互访拦截
rule 16 deny ip destination VPN网段1 0.0.0.255
rule 17 deny ip destination VPN网段2 0.0.0.255
// 放行需要走电信出口的源地址
rule 90 permit ip source VPN设备地址 0
rule 91 permit ip source 防火墙地址 0
rule 100 permit ip source 服务器网段1 0.0.0.255
rule 110 permit ip source 服务器网段2 0.0.0.255
rule 120 permit ip source 服务器网段3 0.0.0.255
✅ 合理点
先 deny 所有内网 / VPN 目的流量:内网互访、跨 VPN 互通匹配 deny 规则,不会进入 PBR 策略,直接走设备常规路由,完美规避内网流量被强行导入公网隧道;
后 permit 仅需要电信出口的源网段,精准分流,不会混入办公终端;
高级 ACL 是先匹配优先,内网互访优先命中 deny,完全不干扰内网互通需求。
⚠️ 优化缺陷(必须修改)
当前只限制了目的地址,没有限制目的为公网,存在极小概率边界流量异常;
标准优化方案:deny 规则同时限定源 + 目的内网,permit 增加destination any明确仅上网流量走 PBR:
plaintext
acl advanced 3006
# 所有源访问内网/VPN全部拒绝匹配PBR
rule 5 deny ip any destination 10.0.0.0 0.255.255.255
rule 10 deny ip any destination 172.16.0.0 0.15.255.255
rule 15 deny ip any destination 192.168.0.0 0.0.255.255
rule 16 deny ip any destination VPN网段1 0.0.0.255
rule 17 deny ip any destination VPN网段2 0.0.0.255
# 仅服务器/指定设备访问互联网(任意公网目的)才走电信PBR
rule 90 permit ip source VPN设备地址 0 destination any
rule 91 permit ip source 防火墙地址 0 destination any
rule 100 permit ip source 服务器网段1 0.0.0.255 destination any
rule 110 permit ip source 服务器网段2 0.0.0.255 destination any
rule 120 permit ip source 服务器网段3 0.0.0.255 destination any
增加destination any后:服务器内网互访也会被过滤,彻底杜绝策略误判。
二、NQA reaction trap-only /trigger-only 对 Track 的影响(Track NotReady 根因)
1. 两种 action-type 核心区别
action-type trap-only:NQA 探测失败只上报告警日志,不修改 Track 状态,Track 永远保持 Positive(在线);
action-type trigger-only:探测失败直接修改 Track 状态为 Negative(离线),PBR / 静态路由依赖 Track 切换链路。
2. 你当前故障原因
电信 NQA 配置reaction 2 ... action-type trap-only,线路断了 Track 2 状态不会变为 Down,PBR 的apply next-hop x.x.x.x track 2不会自动失效;
同时线路正常时探测逻辑不刷新 Track,极易出现NotReady状态,完全不能用于路由 / 策略路由联动。
修复标准 NQA 模板(电信、联通统一规范)
plaintext
# 电信NQA示例
nqa entry admin dx type icmp-echo
destination ip 电信网关
frequency 1000
reaction 2 checked-element probe-fail threshold-type consecutive 3 action-type trigger-only
# 绑定Track 2
track nqa entry admin dx reaction 2
联通 NQA 同理修改为trigger-only,线路故障后 Track 自动置为 Negative,PBR 自动跳过该下一跳,走默认联通出口。
操作顺序建议
必须先修改 NQA reaction、确认 Track 状态稳定为 Positive,再修改 PBR 绑定 track,避免上线后链路切换失效。
三、PBR apply next-hop + track 联动逻辑说明
apply next-hop A track X 含义:
Track X=Positive:流量强制转发至电信网关;
Track X=Negative:这条 PBR 节点直接失效,匹配 ACL 的流量自动下沉查找普通静态路由(联通默认路由),完美实现故障自动切换;
旧策略无 track,电信链路断开后流量黑洞;新增带 track 节点后具备容灾能力,改动合理。
四、服务器 NAT Server 双向路径不对称风险解答
场景说明
服务器主动访问互联网:PBR 强制走电信出口,源 NAT 转换成电信公网地址;
外网用户访问服务器:NAT Server 映射的是联通公网 IP,回程报文从联通线路回来。
风险结论
会出现来回路径不一致,大概率会话不通、丢包、外网无法访问服务器
服务器主动外联源地址电信 IP,外网回包走电信;
外部主动访问服务器目的地址联通公网 IP,回程走联通;
设备会话表五元组不一致,防火墙会话检测阻断流量。
两套可行解决方案(二选一)
方案 A(推荐,改动最小)
服务器网段双 NAT 地址池:
匹配 PBR 走电信的流量,NAT 使用电信公网地址池;
未匹配 PBR(故障切换走联通),NAT 使用联通地址池;
NAT Server 同时保留电信、联通两条映射,外网可通过两条线路分别访问。
plaintext
nat address-group 1 联通公网段
nat address-group 2 电信公网段
# 做基于源地址的NAT分流
acl 3010 permit source 服务器网段
nat policy
rule 10 match source-address 3010 nat address-group 2
rule 20 permit any nat address-group 1
方案 B(极简,适合业务对外访问少)
服务器网段不参与 PBR 分流,统一走联通出口,和 NAT Server 公网线路保持一致,彻底规避来回路径不一致问题。
五、整体割接操作顺序(你规划的顺序无问题,补充细节)
不动原有 NAT ACL、NAT Server 映射,避免业务中断;
创建优化后的专用 PBR ACL 3006(增加 destination any 限制);
修改电信、联通 NQA reaction 为trigger-only,绑定 track;
查看display track all,确认两条 track 状态均为 Positive;
新增带 track 的 PBR 节点:
plaintext
policy-based-route wan permit node 10
if-match acl 3006
apply next-hop 电信网关 track 2
灰度测试服务器上网、内网互访、VPN 互通、外网访问 NAT 服务器;
确认业务无异常后,删除老旧混杂 ACL 的 PBR 节点undo policy-based-route wan permit node 2;
保存配置save safely。
六、配套校验排错命令(割接测试必备)
plaintext
# 1. 查看track状态
display track all
# 2. 查看PBR匹配计数,判断ACL是否生效
display policy-based-route statistics
# 3. 查看NQA探测结果
display nqa history
# 4. 查看内网/服务器路由转发路径
tracert -a 服务器IP 公网IP
tracert -a 办公IP 公网IP
# 5. 查看NAT会话,验证源地址转换线路匹配
display nat session table source 服务器网段
七、总结你方案的核心优缺点 & 修正点
ACL 思路正确,补充destination any后逻辑闭环,内网、VPN 流量不会被 PBR 干扰;
NQA trap-only 是 Track NotReady、链路无法切换的核心故障点,必须改为 trigger-only;
割接操作顺序规划合理,先底层 NQA/Track 就绪,再上线 PBR,风险可控;
最大隐性风险:服务器 PBR 电信出口 + NAT Server 联通公网,来回路径不对称,需要补充双地址池 NAT 优化。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论