OSPF Open Shortest Path First
本文以产品文档里的内容为基础,加了一些自己有疑惑但解决了的内容进来,欢迎各位小伙伴一起讨论。都是干货,可能对小透明不是那么友好,后面再一点点改进吧~
目录
基本信息
- IP协议号 89
- 支持认证 明文/MD5
- 管理距离 思科110 华为10(仅次于直连)
- 组播地址 224.0.0.5 224.0.0.6(DR/BDR)
Drother 路由器将数据包发向目标地址 224.0.0.6,只能被 DR 和 BDR接收,其它 Drother 不能接收;
而 DR 和 BDR 将数据包发向目标地址 224.0.0.5,可以被所有路由器接收。
- 路由更新 平时增量更新,30分钟一次周期更新
- 汇总情况 支持CIDR,没有自动汇总
- Router-ID 手工指定>活动loopback最大的地址>物理接口最大的
改变R-ID需要重启进程 如果一台路由器收到一条链路状态,无法到达该 Router-ID 的位置,就无法到达链路状态中的目标网络。
- 多进程 互不影响,彼此独立。
不同OSPF进程之间的路由交互相当于不同路由协议之间的路由交互
- COST 手工指定>自动计算 100/带宽(大于100M也是1)
- 选路原则
华为:
1、区域内的 > 区域间的 >ASE TYPE1 > ASE TYPE2。
2、ASE TYPE1和ASE TYPE1 or NSSA TYPE1 进行比较,比较的是OSPF的内部和外部成本只和,即哪个成本之和小,哪条路径就好,如果成本一样,则负载分担。
3、ASE TYPE2和ASE TYPE2 or NSSA TYPE2 进行比较 先比较二者的外部成本,外部成本小的路径好,如果外部成本一样,再比较内部成本,内部成本小的路径优先,如果一致,则负载分担。
思科:
1:O路由>Oia路由>external路由!
O:计算LSA-1和LSA-2,前提age不能MaxAge,metric不能LSinfinity,计算出来的最小metric的路由放入RIB中。具体是否放入RIB,比如有AD更低的协议,这并不是本文研究重点。
Oia:计算LSA-3,ABR只计算来自于骨干区域的LSA-3(虚链路也属于骨干区域),non-ABR要计算来自每个区域的LSA-3。前提这些LSA的前提age不能为MaxAge,metric不能为LSinfinity,目的地不在本路由器所在区域,这些LSA不能是自己产生的,并且它们的ADVroute可达。计算出来的最小metric的路由放入RIB中,如果metric相同则负载均衡。
External:计算十分复杂,需要考虑是否ADVrouter(FA)字段相同,和到这些ADVrouter(FA)地址的O(内部)和Oia(LSA-4)。下面详述:
备注 ABR:一台同一OSPF进程下配置了包含骨干区域在内的多个区域,而且在骨干区域不仅有状态不是down的接口,而且有处于完全邻接状态关系的邻居的路由器叫做ABR。Non-ABR:一个接入多个区域,但未接入骨干区域的路由器(在本文中,我们这样称呼)。
2:external-type-1 >external-type-2
External:这些LSA-5不能age为MaxAge,metric不能为Lsinfinity,并且不是由自身产生的,而且ADVRouter必须可达。如果这些LSA-5有FA地址,则必须发送到FA地址,那么这个FA地址也必须可达。
3:都为ExternalType1,cost(外部开销+到ASBR开销)越小越优先。(外部开销默认重分配进OSPF为20,但BGP重分配进OSPF为1。)
4:都为ExternalType1,cost也相等,那么E1>N1。
5:都为E1或都为N1,cost也相等,那么进行负载均衡。
6:都为ExternalType2,cost(只外部开销)越小越优先。(外部开销默认重分配进OSPF为20但BGP重分配进OSPF为1。
7:都为ExternalType2,cost也相等,到 ADVrouter(ASBR的RID)/FA cost小的路径优先。
8:都为ExternalType2,cost也相等,到 ADVrouter(ASBR的RID)/FA cost也相等,那么E2优于N2。
9:都为E2或都为N2,cost也相等,到 ADVrouter(ASBR的RID)/FA cost也相等,那么进行负载均衡。
思科的选路原则转载于:https://www.cnblogs.com/chia/p/6638386.html
网络类型
网络类型 | hello/dead | 是否选DR | 建立邻居方式 | 组播报文 | 单播报文 |
广播 | 10s/40s | 选DR/BDR | 自动建立邻居 | 组播方式发HELLO/LSU/LSACK | 单播发DD和LSR |
NBMA | 30s/120s | 选DR/BDR | 手工指定邻居 | 单播发所有 | |
P2MP | 30s/120s | 不选DR | 自动建立邻居 | 组播发HELLO | 单播发其他 |
P2P | 10s/40s | 不选DR |