最佳答案
ip-subnet(IP地址段)限制,导致邻居无法建立,通常是因为 OSPF 协议报文(特别是单播的 DD 报文或组播的 Hello 报文)被安全策略拦截了。10.75.100.0/24 网段外,还会发送目的地址为 224.0.0.5 和 224.0.0.6 的组播报文。如果安全策略仅放行了具体的 IP 子网,这些组播报文可能会被丢弃,导致邻居起不来。ip-subnet 限制去掉,直接使用防火墙内置的 OSPF 服务对象进行放行。security-policy ip
rule 1 name permit_ospf
source-zone <区域A>
destination-zone <区域B>
service ospf # 直接匹配 OSPF 协议(协议号89),无需指定具体IP
action pass10.75.100.0/24 之外,必须额外放行 OSPF 的组播地址。security-policy ip
rule 1 name permit_ospf_with_ip
source-zone <区域A>
destination-zone <区域B>
source-ip-subnet 10.75.100.0 24
source-ip-subnet 224.0.0.5 32 # 补充 OSPF 组播地址
source-ip-subnet 224.0.0.6 32 # 补充 OSPF 组播地址
destination-ip-subnet 10.75.100.0 24
destination-ip-subnet 224.0.0.5 32 # 补充 OSPF 组播地址
destination-ip-subnet 224.0.0.6 32 # 补充 OSPF 组播地址
service ospf
action pass224.0.0.5 / 224.0.0.6)。在防火墙中,组播报文同样受安全策略管控。display ospf peer 查看邻居状态是否达到 Full;如果卡在 ExStart 状态,通常是单播的 DD 报文被拦截;如果卡在 Init 状态,通常是组播 Hello 报文被拦截。暂无评论
防火墙 OSPF 添加 source/destination ip-subnet 后邻居断连修复方案
一、故障根因说明
OSPF 协议两点核心报文特性:
OSPF 组播报文:224.0.0.5、224.0.0.6,不属于你 10.75.100.0/24 单播网段;
防火墙 OSPF 邻居建立在同网段 RAGG 接口,互访源目 IP 均为10.75.100.x;
你执行了undo source-ip-subnet / undo destination-ip-subnet前,绑定了指定子网,安全策略仅放行该子网单播 IP,直接拦截 OSPF 组播 224.0.0.5/6,邻居无法协商,Full 状态断开。
现有 rule1 配置:仅匹配 zone、service ospf/icmp,但加了 ip-subnet 后会限制源目只能是指定子网,组播地址匹配失败。
二、两种修复方案(按需选择)
方案 1:删除 ip-subnet 限制(推荐,同网段 OSPF 最简)
直接删除策略里绑定的源 / 目的子网,放开所有 IP,OSPF 组播、单播全部放行,复制执行:
plaintext
system-view
security-policy ip rule 1 name Permit_OSPF
# 删除源、目的子网限制
undo source-ip-subnet
undo destination-ip-subnet
# 确认策略无IP网段限制,仅放行域+OSPF/ICMP
display this
修改后 rule1 完整配置:
plaintext
rule 1 name Permit_OSPF
action pass
source-zone Trust
source-zone Untrust
source-zone Local
destination-zone Trust
destination-zone Untrust
destination-zone Local
service ospf
service icmp
优势:同网段 OSPF 无需限制 IP,组播 224.0.0.5/6 可正常匹配策略,邻居立刻恢复 Full。
方案 2:必须保留 IP 网段限制(精细化管控场景)
若业务要求仅允许10.75.100.0/24网段互访,需要额外放行 OSPF 组播地址,分两条规则实现:
plaintext
system-view
security-policy ip
# 原有规则放行10.75.100.0/24单播OSPF/ICMP
rule 1 name Permit_OSPF_Unicast
action pass
source-zone Trust Untrust Local
destination-zone Trust Untrust Local
source-ip-subnet 10.75.100.0 0.0.0.255
destination-ip-subnet 10.75.100.0 0.0.0.255
service ospf
service icmp
# 新增规则放行OSPF组播(224.0.0.5/6,无IP子网限制)
rule 0 name Permit_OSPF_Multicast
action pass
source-zone Trust Untrust Local
destination-zone Trust Untrust Local
destination-ip-host 224.0.0.5
destination-ip-host 224.0.0.6
service ospf
注意:rule 0 放前面,组播报文优先匹配,避免被子网规则拦截。
三、配套校验 & 排错命令
1. 策略修改后查看 OSPF 邻居
plaintext
display ospf peer brief
正常输出 State 为Full/DR、Full/-即恢复。
2. 抓包验证 OSPF 报文放行
plaintext
debugging security-policy ip rule 1
terminal debugging
terminal monitor
能看到 OSPF (89 号协议)、224.0.0.5 组播报文匹配 rule1,标记 pass。
3. 确认接口 OSPF 网段宣告正常(你的配置无问题)
plaintext
ospf 1 router-id 10.75.100.6
area 0.0.0.75
network 10.75.100.0 0.0.0.255
网段宣告正确,接口 RAGG1/RAGG2 已纳入 OSPF 进程。
四、关键原理补充
OSPF 邻居建立依赖组播 Hello 报文,组播地址不属于 10.75.100.0/24 单播子网,配置source/destination ip-subnet后,策略仅匹配单播 IP,组播直接 deny;
同设备本地 OSPF(Local 域互访)、Trust/Untrust 域间 OSPF,无特殊安全要求时,不要配置 ip-subnet,直接放开 zone 即可;
仅跨网段、需要严格管控业务 IP 时,才需要同时配置「单播子网规则 + 组播放行规则」。
最简操作步骤(直接复制执行)
plaintext
system-view
security-policy ip rule 1 name Permit_OSPF
undo source-ip-subnet
undo destination-ip-subnet
return
display ospf peer brief
执行完等待 10~30 秒,OSPF 邻居自动恢复 Full 状态。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论