OSPF简介
OSPF(OpenShortest Path First)为 IETF OSPF 工作组开发的一种基于链路状态的内部网关路由协议。OSPF 是专为 IP 开发的路由协议,直接运行在 IP 层上面,协议号为 89,采用组播方式进行 OSPF 包交换,组播地址为 224.0.0.5 (全部 OSPF 设备)和 224.0.0.6(指定设备)。当OSPF 路由域规模较大时,一般采用分层结构,即将 OSPF 路由域分割成几个区域(AREA),区域之间通过一个骨干区域互联,每个非骨干区域都需要直接与骨干区域连接。
1.1 OSPF基本配置
拓扑如下:
R1(config)#router ospf 1
R1(config-router)#network 192.168.1.10.0.0.0 area 1
R1(config-router)#network 10.1.1.1 0.0.0.0area 1
R2(config)#router ospf 1
R2(config-router)#network 192.168.1.20.0.0.0 area 1
R2(config-router)#network 192.168.2.10.0.0.0 area 0
R3(config)#router ospf 1
R3(config-router)#network 192.168.2.20.0.0.0 area 0
R3(config-router)#network 192.168.3.10.0.0.0 area 2
R4(config)#router ospf 1
R4(config-router)#network 192.168.3.20.0.0.0 area 2
R4(config-router)#network 10.4.1.1 0.0.0.0area 2
改变网络类型
R2(config-if-FastEthernet 0/1)#ip ospfnetwork point-to-point
调整接口的ospf网络类型为point-to-point (链路两端ospf网络类型必须一致)
备注:以太网接口的默认ospf网络类型为broadcast,有40秒的wait时间来选举DR/BDR。建议点到点的以太网互联接口,将两端的接口ospf网络类型都配置为point-to-point ,加快ospf邻居关系的收敛。
下发默认路由
R2(config)#router ospf 1
R2(config-router)#default-informationoriginate always
加上always参数后无论设备本地存在生效的默认路由,设备都会向OSPF区域下发默认路由。如果没有加always参数,那么只有在该路由器上有有效的默认路由时设备才会向OSPF区域内下发默认路由。
1.2 VRF下的OSPF
拓扑如下:
R1(config)#ip vrf abc
在路由器上启用vrf abc
R1(config)#interface fastEthernet 0/2
R1(config-if-FastEthernet 0/2)#ip vrfforwarding abc
R1(config)#router ospf 1 vrf abc
在vrf abc下启用 ospf 进程1
R1(config-router)#network 192.168.1.10.0.0.0 area 0
将192.168.1.1对应的接口通告到 ospf 区域号为 0
R1(config-router)#network 10.1.1.1 0.0.0.0area 0
1.3 OSPF的redistribute
引入注意事项:
ospf在引入外部路由的时候,引入的外部路由有2种metric类型,类型1和2
a、类型1,路由在ospf域内传输时叠加内部cost,若内部网络需要对该外部路由选路时,建议使用类型1(默认引入的外部路由为类型2)
b、类型2,路由在ospf域内传输时不叠加内部cost
R1(config)#router ospf 1
R1(config-router)#redistribute staticmetric-type ?
1 Set OSPF External Type 1metrics
2 Set OSPF External Type 2metrics
3)ospf引入的外部路由,引入的是本路由器有效的路由,必须是本路由器上show ip route 能够看到的路由
4)将路由重分发进ospf,一定要加subnets,否则只会重分发主类网络路由
实例:
R1(config)#router ospf 1
R1(config-router)#redistribute static subnets
1.4 OSPF的summary
R3(config-route)# area area-idrange summary-network summary-mask
R3(config-route)# summary-addressexternal-network external-mask
1.5 OSPF的stub区域
Stub区域简介
1、stub区域为末节区域,stub区域过滤 4类、5类 LSA,并且在ABR路由器产生一条3类LSA的默认路由
2、totally stub区域为完全末节区域,totally stub区域过滤 3类、4类、5类 LSA,并且在ABR路由器产生一条3类LSA的默认路由
3、stub区域内的路由器不允许引入ospf的域外路由
实例:
R3(config-route)# area area-idstub
R3(config-route)# area area-idstub no-summary
1.6 OSPF的nssa区域
Nssa区域简介
1、nssa区域为非纯末节区域,nssa区域过滤 4类、5类 LSA,不会在ABR路由器产生一条3类LSA的默认路由
2、totally nssa区域为完全非纯末节区域,totally nssa区域过滤 3类、4类、5类 LSA,并且在ABR路由器产生一条3类LSA的默认路由
3、nssa区域内的路由器允许引入ospf的域外路由
实例
R3(config-route)# area area-idnssa
R3(config-route)# area area-idno-summary
1.7 OSPF注意事项
1、在OSPF MPLS V**中OSPF的down-bit位作用
由PE路由器生成的所有汇总LSA的down-bit都被设置,为防止路由环路。
仅当down-bit位末被设置时,其它PE才会将从CE收到的该LSA传播给OSPF MPLS V**主干上。
若PE收到的LSAdown-bit位被设置,则只将该LSA放进链路数据库,而不装载进路由表,从而也不会传播至OSPF MPLS V**主干上。
2、OSPF如何配置下发缺省路由
1)STUB,Total Stub,nssa no-summary区域自动下发缺省路由
2)NSSA区域ABR默认不会自动下发默认路由,需要在路由器上配置:area 1 nssadefault-information-originate
3)普通区域通过default-information-originate[always]来下发缺省路由
3、RSR路由器ospf virtual-link的配置
routerospf 1
area 1 virtual-link 2.2.2.2 //area 1为virtual-link 穿越的区域号,2.2.2.2为建立virtual-link 的对方路由器的ospf router id。需要建立virtual-link 的两端路由器分别互指对方的ospf router id
4、RSR路由器OSPF是否支持重分发BGP路由
支持,默认重分发ebgp路由,通过在bgp路由进程中配置 bgp redistributte-internal来支持将ibgp路由重分发到IGP中
5、RSR路由器ospf数据选路顺序
选路的顺序为:O >OIA>OE1>ON1>OE2>ON2
如果外部路由类型一致,且FA不全是真实地址,则比较到达ASBR的距离,如果为真实地址,则比较到达该地址cost最小的路径。