ospf笔记(一)

一、ospf是什么?(开放式最短路径优先,协议号89)

1、一个igp、公有、链路状态协议

2、通过组播224.0.0.5、224.0.0.6(dr,bdr)建立邻居

3、通过rid来唯一标识 一台路由器 (1、手动指定 2、路由器loopback地址3、物理地址)

4、ospf同步概念

二、lsa 链路状态

1、包含IP地址,子网掩码,网络类型,cost值等,通过获取链路状态信息,从而计算出每个目标的最优路径。ospf路由器将会把所有链路状态全部发给邻居,邻居会将收到的状态放入自己链路状态库,最终所有的路由器都拥有所有的链路状态

2、各种lsa

1) LSA-1 路由lsa

每台ospf路由器都会产生,在本区域泛洪,相当于告诉全村人家门口的状况

2)LSA-2  网络lsa

仅仅存在于ma网络,由dr产生,用来描述网络中所有路由器,只在area1内泛洪

3)LSA-3网络汇总lsa

由于abr产生,将1、2类lsa做个归纳,然后为其他区域生成3类lsa并泛洪到其他区域

4)LSA-4 asbr汇总lsa

指向asbr的lsa,由该区域的abr产生

5)LSA-5 AS外部lsa

4类lsa主要告诉城门在哪,里面情况。那么5类lsa主要告诉的是外面情况

6)七类lsa

nssa区域中的asbr产生,用于向nssa区域通告外部路由

三、ospf三张表

1、邻居表:通过hello报文进行邻居 认识,该路由器会记录hello报文中rid和接口的信息关联起来形成邻居表

2、拓扑表:里面存放着对整个网络的认知情况(类似地图)

3、路由表:只有最优的路由才会放入路由表

四、ospf的五种报文

hello报文:用于建立和维护邻居关系

DBD报文:用于 向邻居发送摘要信息以同步链路状态数据库,lsa目录信息,相当于书的目录,邻居看完就知道哪些lsa是需要发给自己的。

LSR报文:用于请求更详细的信息(本地没有的)

LSU报文:收到lsr后发送链路状态通告(lsa),一个lsu可能包含多个lsa

LSACk报文:确认收到lsu,每个lsa进行确认

五、ospf邻居建立过程

1、down

建立邻居的第一步 down,该状态我没有给邻居发送任何报文。也没有收到邻居报文

2、init 初始状态

收到邻居一个hello报文,但是在hello字段没有看见自己的路由器id

3、two-way 双边邻居

收到包含自己rid的邻居hello包,

4、exStart 准启动状态

选举主从关系

5、exchange 

主路由器带动从路由器交互dbd报文

6、loading 加载

根据dbd报文得知双方需要的lsa信息,向邻居请求自己没有的lsa信息

7、full 完成

邻居建立完成

六、ospf接口的七种状态

1、down

接口初始状态 。接口不可用

2、loopback

环回状态,不可以进行正常的数据传输,但可以进行lsa通告,进行连通测试能够发现到达该路口的路径

3、waiting

在设备进行dr和bdr选举的时候,进入waiting计时器,在这个计时器超时前,设备发送hello报文不包含dr和bdr,说明存在dr和bdr,不参与选举。这样可以避免不必要改变已经存在的dr和bdr

4、drother

设备没有被选举成dr和bdr

5、p2p

这个接口连接到物理的点对点或者虚拟链路,这时候这个设备与另一端的设备建立邻居关系

存在 p2p、p2mp网络有此状态

6、dr

7、bdr

七、dr和bdr选举

作用:1)减少邻接关系

           2)降低ospf协议流量

选举:基于接口选举

1)比较接口优先级,越大越优先

2)接口优先级相等,router-id越大越优先

3)如果前面都相等,比较物理ip,越大越优先


版权声明:本文为weixin_51692662原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。