OSPF Forward Address地址的选择标准

2021年11月05日讲师:苏函浏览:462次

OSPF Forward Address地址的选择标准 苏函 目录  TOC \o "1-3" \h \z \u OSPF Forward Address地址的选择标准... PAGEREF _Toc86999876 \h 1 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800370036000000 理论总结:... PAGEREF _Toc86999877 \h 1 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800370037000000 实验拓扑... PAGEREF _Toc86999878 \h 1 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800370038000000 实验目的... PAGEREF _Toc86999879 \h 2 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800370039000000 实验步骤... PAGEREF _Toc86999880 \h 2 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380030000000 步骤1:基本环境搭建:... PAGEREF _Toc86999881 \h 2 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380031000000 步骤2:观察总体选举规则:... PAGEREF _Toc86999882 \h 2 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380032000000 步骤3:观察规则:环回口优先于物理接口。... PAGEREF _Toc86999883 \h 3 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380033000000 步骤4:测试有多个接口时的FA地址选举规则。... PAGEREF _Toc86999884 \h 4 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380034000000 步骤5:再次验证结论:... PAGEREF _Toc86999885 \h 5 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380035000000 结语:... PAGEREF _Toc86999886 \h 8 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F0054006F006300380036003900390039003800380036000000 理论总结: OSPF的5类LSA中,有一个Forward Address字段,此字段会带上一个FA地址,它的作用主要有二点: 1. 优化选路。 2. 防环。 此文章中并不是要探讨此二点具体如何实现,而是想搞清楚,此FA地址究竟会携带哪个地址呢? FA地址的选择遵循以下规则: 1. 大前提:此FA地址必须通过OSPF可达,也就是说,此地址一定要被宣告到OSPF进程中,才会被选择。 2. 被引入路由的下一跳IP > 回环口IP > 物理接口IP。 而比较难的是,当有多个回环口,或多个物理接口的时候,又是如何选择的呢? 此时的选择是:首次最早参与到OSPF进程的接口!特别要注意的是,一定是首次,什么意思呢?也就是说一个接口被宣告到OSPF后,又去掉此宣告,再宣告其它接口,然后又将此接口再次宣告进OSPF的时候。它依然是最早参与到OSPF进程的接口。这也是我们会对此理解混乱的原因。 进一步理解一下,为什么要做出此选择呢。其实也是说得通的,因为一切都应该是稳定为前提,所以一个最早被宣告的接口,应该是最老的,最稳定的,选择它也是合理的了。 接下来用实验的方式,验证上面的结果。实验比较复杂,各位看官可以酌情观看。 实验拓扑 实验目的 l 验证FA地址选举规范 实验步骤 步骤1:基本环境搭建: 1. 如拓扑如示配置基本的OSPF 2. 在AR4上将RIP引入到OSPF进程 3. 配置Area 1区域为NSSA区域。 步骤2:观察总体选举规则: 被引入路由的下一跳IP > 回环口IP > 物理接口IP。 如下图所示,当AR4与AR6之间的链路被宣告到OSPF进程的时候,此时AR4携带的FA地址,一定是被引入路由6.1.1.1/32的下一跳46.1.1.6。 如下图所示: 但这也是有前题的,除去必须被宣告到OSPF以外,还有以下要求: 1. 此接口网络类型不能为P2P、P2MP. 2. 此接口不能配置为静默端口。 步骤3:观察规则:环回口优先于物理接口。 [AR4-GigabitEthernet0/0/0]undo ospf enable 1 a 1 [AR4-LoopBack0]ospf enable 1 a 1 去掉下一跳接口的宣告,并宣告一个回环接口,如下图所示。 此时一定会选择4.1.1.1为FA地址,如下所示: 步骤4:测试有多个接口时的FA地址选举规则。 注意:一定要是按首次参与时间排序。 特意重启设备后,做测试。 a) 先宣告loopback100接口: [AR4-LoopBack100]ip address 4.1.1.100 32 [AR4-LoopBack100]ospf enable 1 area 1 b) 再宣告loopback1接口: [AR4-LoopBack1]ip address 4.1.1.1 32 [AR4-LoopBack1]ospf enable 1 a 1 观察以上信息,可以发现,首先被宣告的会排上面。 c) 再添加一个接口: [AR4-LoopBack200]ip address 4.1.1.200 32 [AR4-LoopBack200]ospf enable 1 a 1 d) 结论:而此时FA地址的选择将会是4.1.1.100 > 4.1.1.1 > 4.1.1.200 如下所示,按照参与到OSPF进程的顺序,优选最早参与到OSPF的接口。 步骤5:再次验证结论: a) 去掉loopback100口的宣告,一定会选择loopback1口的4.1.1.1。 [AR4]interface LoopBack 100 [AR4-LoopBack100]undo ospf enable 1 a 1 b) 再恢复loopback100口的宣告,此接口将回归最早被宣告的位置: [AR4-LoopBack100]ospf enable 1 a 1 c) 如何重置接口信息:undo掉此回环口,将重置ospf接口信息。 [AR4]undo interface LoopBack 100 [AR4-LoopBack100]ip address 4.1.1.100 32 [AR4-LoopBack100]ospf enable 1 a 1 如上所示,此时loopback1被认为是最新参与到OSPF的接口了,而此时4.1.1.1将被选为FA地址: 结语: 由于华为文档并没有提及FA地址的选举,所以文档信息来源来一篇Cisco文档。同样,我也用Cisco设备做了验证,都符合以上规则。 下面附上Cisco文档截图。 不过以上Cisco文档中也有一个错误,是最先被宣告的排上面,而不是最后被宣告的排上面。如下图所示: R4(config)#int loo100 R4(config-if)#ip address 4.1.1.100 255.255.255.255 R4(config-if)#ip ospf 1 a 1 R4(config-if)#int lo 1 R4(config-if)#ip address 4.1.1.1 255.255.255.255 R4(config-if)#ip ospf 1 a 1 R4(config-if)#do show ip ospf int b 附下Cisco实验截图: 大家对此有什么意见和看法,欢迎评论。我将一一回复的。
分享 0

您已经赞过了!