防火墙-(area3)-S76-(area 0)-S125,跑ospf。
在防火墙通过import bgp引入外部路由。
现场在S76上检查发现可以正常学到防火墙过来的,10.0.92.0/24,10.0.92.0/25,10.0.92.128/25这三条外部路由
但是传递到S125时,10.0.92.0/24 这条路由没有加到ospf路由表中。
1. 检查S125的LSDB中相关信息,发现有三条路由对应的条目
<BMH6-A1A2-S12508FAF>dis ospf lsdb ase 10.0.92.0
OSPF Process 100 with Router ID 125.210.112.1
Link State Database
Type : External
LS ID : 10.0.92.0
Adv Rtr : 125.210.112.149
LS Age : 635
Len : 36
Options : E
Seq# : 8000004b
Checksum : 0x239e
Net Mask : 255.255.255.128
TOS 0 Metric: 10
E Type : 1
Forwarding Address : 0.0.0.0
Tag : 0
<BMH6-A1A2-S12508FAF>dis ospf lsdb ase 10.0.92.128
OSPF Process 100 with Router ID 125.210.112.1
Link State Database
Type : External
LS ID : 10.0.92.128
Adv Rtr : 125.210.112.149
LS Age : 945
Len : 36
Options : E
Seq# : 8000004a
Checksum : 0x2022
Net Mask : 255.255.255.128
TOS 0 Metric: 10
E Type : 1
Forwarding Address : 0.0.0.0
Tag : 0
<BMH6-A1A2-S12508FAF>dis ospf lsdb ase 10.0.92.1
OSPF Process 100 with Router ID 125.210.112.1
Link State Database
Type : External
LS ID : 10.0.92.1
Adv Rtr : 125.210.112.149
LS Age : 1658
Len : 36
Options : E
Seq# : 8000004a
Checksum : 0x182a
Net Mask : 255.255.255.0
TOS 0 Metric: 10
E Type : 1
Forwarding Address : 0.0.0.0
并且与S76的lsdb对比发现相关字段完全一致
2. 问题定位为LSDB已同步但是无法加入ospf路由表
3. 进一步观察发现,无法加表的路由在125上都存在更短掩码的路由条目,比如10.0.92.0/24,同样是从area 3的防火墙上引入
4. S125上再次查看10.0.92.0/24的lsdb信息
[BMH6-A1A2-S12508FAF-probe]dis ospf ls ase 10.0.92.1
OSPF Process 100 with Router ID 125.210.112.1
Link State Database
Type : External
LS ID : 10.0.92.1
Adv Rtr : 125.210.112.149
LS Age : 628
Len : 36
Options : E
Seq# : 80000078
Checksum : 0xbb58
Net Mask : 255.255.255.0
TOS 0 Metric: 10
E Type : 1
Forwarding Address : 0.0.0.0
Tag : 0
发现此时的Link-ID并不是10.0.92.0而是10.0.92.1。为何link-id会变?这是导致该问题的关键。
经了解,第三方防火墙为锐捷设备,锐捷厂商在发送不同掩码同前缀的路由信息时,ospf的link-id会进行+1处理。
而我司设备按照RFC2328 附录e进行实现
OSPF
(1)查找链路状态数据库,判断是否已经存在对应IP地址为NA的路由的第5类LSA,如果没有,就产生一个第5类LSA,其ID为NA,处理结束。
(2)如果已经存在,则从已有的第5类LSA中提取该网段的掩码NM_old,分两种情况进行处理:
如果NM_new的长度大于NM_old,也就是说,将要引入的路由的掩码比原先的那条更长,这时只需要再产生一条新的第5类LSA即可:将新的外部路由网段的主机位全部置1,子网广播地址作为新的第5类LSA的ID。例如,原先的外部路由网段是10.10.0.0/16,其LSA的ID是10.10.0.0,新的将要引入的网段是10.10.0.0/24,产生的LSA的ID就是10.10.0.255。
两家厂商对/24的LS ID处理方式不同,导致了该lsa无法加表。那为什么S76上却没有问题呢?
原因是S76版本较新,兼容了+1的这种处理方式。因此该问题的解决方式是升级S125版本至最新。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作