OSPF(open shortest pathfirst)
属于IGP(Interior Gateway Protocol),是link-state协议,基于IP Pro89
LSA(link-state advertisement)不是一个报文,而是一个信息,从起源者出发,传递给每一个路由器。
link-state database(链路状态数据库)
SPF algorithm
SPF tree
routing table
AD:固定为110
OSPF 必须要直连才能建邻居
以较低频率(每隔30分钟)发送定期更新,被称为链路状态刷新
网络变化时是触发更新
LSA的内容如实描述,不做地址汇总,传递的是拓扑信息,每个接口的链路状态信息
区域间可以汇总,3、5、7类LSA路由信息可以汇总
分区:减压,避免每个路由的拓扑信息过于庞大
区域之间类似距离矢量路由,传递的是路由信息,为避免因类似距离矢量路由而带来环路,只允许一个area 0,并且每一个area都要连到area 0,这样的区域形状防环。
ABR对于从外部普通区域来的路由信息不予采用,必须是从区域0来的才接受:这条规则对于有大于一个area 0的ospf错误拓扑可以防环。
组播地址:224.0.0.5 224.0.0.6(DR/BDR)
三张表:
neighbor table
topology table
routing table
two-level hierarchy consist
1、transit area(backbone or area 0)(叫传输区因区域间交流须经此区)
2、regular areas(nonbackbone areas)
area border router(ABRs),attach allother areas to area 0
只有DROTHER之间形成neighbor关系,互为neighbor关系的路由器不会交流LSA
只有处于邻接(adjacency)关系的路由器,才能交换LSA以完成LSDB的同步
from loading to full,表明建立邻接关系
DR、BDR,存在多路访问网中
DR、BDR不能被抢占
开销:10^8/带宽(10^8―>100M,为参考带宽)
5个报文
1)Hello (hello、dead时间一致才能起邻居,粒度小于1S时hello不一致可以起邻居。改hello会自动改dead=4*hello;改dead时不会自动改hello时间,但可以选minimal使hello小于1S)
2)Database Description(DBD,相当于数据库的目录,完整描述,减少无用更新)
(根据router-ID选定两个邻接路由器主从关系,二者DBD报文靠序列号隐式确认)
3)Link-State Request(LSR)
4)Link-State Update(LSU,承载LSA-- link-stateadvertisement)(隐式确认LSR)
5)Link-State Acknowledgement(LSAck,仅用于确认LSU)
②③报文只在建邻居过程中出现,邻居建立后不再出现。
点到点链路上,OSPF报文是组播的
MTU ---�CDBD报文中,不一致时分片会有问题,所以不能建邻居,一致才可以建。
网络类型是MA时,掩码必须一致(两个邻居)。因为会出现DR和LSA-2。
多路访问网络中的IP地址的掩码保存在DR的LSA-2中,不一致导致DR无法描述网段。
show ip protocals 看是否ABR
序列号判断LSA的新旧
1/2/3/4/5/7类LSA
1类LSA―router LSA
link-ID---router-ID
产生者---every
内容/功能:包含本路由器的直连的邻居,以及直连接口的信息。还原一个区域的拓扑
传播范围:本区域
show ip ospf database router(1类LSA)1.1.1.1(link-ID)
对于多路访问网络,1类LSA不够描述
2类LSA―network LSA
link-ID:DR―IP(因DR是接口概念)
产生者:DR
内容/功能:帮助1类描述多路访问网络(MA:mask、连接的所有路由器)
传播范围:本区域
show ip ospf database network (2类LSA)12.1.1.1(DR-IP)
1类、2类是链路状态LSA,可画出本区域拓扑
3类LSA―summary LSA
link-ID:网络号
产生者:ABR
内容:承载路由信息---网络号、mask、cost
传播范围:除了起源区域外的其他区域
每经过一个ABR,ABR重新产生LSA、通告路由器(ADV router)改变。
show ip ospf database summary(3类LSA) 24.1.1.0(ABR网络号)
注意:距离矢量路由协议,[不用不传] 只会把自己使用的路由传递给其他路由
3类LSA具有DV特点,如果ABR收到但不使用3类LSA还原的某条路由,则不会将此路由发送给其他相邻区域;如果3类LSA是自己产生的,则无关此项规则。
Routing Bit Set on this LSA: 说明这条LSA计算出的路由正在被我使用。
4类LSA---ASBR summaryLSA
link-ID:ASBR router-ID
产生者:ASBR所在区域的ABR
内容:ABR去往ASBR的cost
传播范围:除了ASBR所在区域的其他OSPF区域
每经过一个ABR,ABR重新产生LSA、通告路由器(ADV router)改变。
show ip ospf database asbr-summary [ASBR-router-ID]
5类LSA―external LSA
link-ID:网络号
产生者:ASBR
内容:承载路由信息―网络号、mask、cost
传播范围:整个OSPF区域
传输过程中ADV router不会改变
OE1的路由选择是最优的;OE2的控制力更强,因为可以手动改metric,从而决定内部路线。
改开销值不通过改管理距离,避免OSPF麻烦的选路规则
域间路由汇总,在ABR上做,汇总所在的area 1的地址:
router ospf 110
area 1 range 172.16.0.0 255.255.252.0
该命令+cost(修改开销)/not-advertise(可对地址过滤)
注意:域间路由汇总仅仅能在起源区域做
外部路由汇总,在起源区域ASBR上做:
router ospf 110
summary-address 172.16.0.0 255.255.0.0 [cost/not-advertise/tag]
两种汇总在本地也会产生特殊路由来防环 O 172.16.0.0/16 is a summary,00:00:04, Null0
建议stub区域只有一个ABR,多个ABR可能选择次优路线。(totally)stub默认路由:O*IA
stub内路由器选择默认路由出去时,根据本区域链路cost选路(即默认路由开销值会累加)
area 1 default-cost 10 修改特殊区域下发的默认路由的开销值
NSSA不会自动下发默认路由,需手动 area 2 nssa default-information-originate(O*N2)
NSSA,对ABR上有外部路由进入NSSA区域时,如果要将其阻止,隔离7类LSA,ABR上:area 2 nssa no-redistribution
隔离3类LSA,area 2 nssa no-summary,成为totally NSSA,会自动下发默认路由(O*IA)
只有一个ABR会做7转5,选router-ID大的
area 2 nssa translate type7 suppress
建立虚链路:需两个路由器在同一普通区域,用router-ID标识,不需直连。
从虚链路学来的LSA基于本普通区域来还原路由信息。
网络类型决定了OSPF 的工作方式
int
ip ospf network broadcast
ospf 星型帧中继网络,单播建邻居只需在hub端用neighbor命令
Broadcast
NBMA还原的拓扑是MA
帧中继,需手工MAP映射,实现全互联,因其还原的拓扑是MA,与事实不符
P-MP-non-broadcast
P-MP还原的拓扑是hub-spoke,是为其设计的网络类型
以32位掩码显示主机路由进路由表,免去spoke的map映射,可以放进路由表。
多点子接口默认的网络类型是NBMA,和物理接口是一样的,一般用不到
forward address 是用来做路由选择的
所以是IP地址,不是router-ID,是ASBR上最后一个被宣告进OSPF的活跃的环回口地址(若没有,是物理接口)。
当NSSA区域有多个ABR时,forward address反映了去往ASBR的最优路径。
有多个ABR时,建议不要做抑制,可能造成环路。
有了forward address后,直接查路由表找去往forward address 的下一跳。不再是查LSA。
去往forward address的路由,必须是OSPF的内部路由!!如果不满足,则不用此LSA还原出的OSPF路由!
有forward address,做路由过滤时要小心过滤。
routering bit set on this LSA
在做7转5 的路由器上抑制forward address的产生
area 2 nssa translate type7 suppress-fa
从哪个区域来的LSA就在哪个区域还原拓扑、选路。
在OSPF中,
distribute-list prefix R1 in s0/1
注意: s0/1是路由表里的出接口,不是LSA的入接口. 理解链路状态协议和距离矢量协议区别
外部路由(OE/ON)比较规则:
类型1的永远优于类型2的
如果都是类型1的,先比较开销值,开销值小的优;若开销值相等,OE的优
如果都是类型2的,先比较开销值,再比forward-metric,小的优;若都相等,OE的优
本文出自 “前路漫漫” 博客,谢绝转载!