CCNA视频笔记(3)OSPF
关于触发式更新和周期性更新:周期性更新如rip, 每隔一段时间发送自己的路由表更新,缺点:占带宽;触发式更新如eigrp, 当网络发生变化时发送自己的路由表更新。而OSPF是两者都有,即a. 每隔30min周期更新;b. 有条目变化时发送自己的路由表更新。周期性更新是为了避免触发式更新时有错误。
OSPF支持非主类网段。/25,/26之类的网络。
OSPF区域概念,支持让一些路由信息只停留在自己的区域内。
只有相邻的设备之间可以起OSPF,如题图,1的邻居是2、4,4的邻居是1、3.

关于路由表和拓扑表:转发数据时查路由表,路由表里存储的是最优路线;而拓扑表里存储了所有的路线。 拓扑表就是链路状态数据库(LSDB).
OSPF和EIGRP都有hello 包,用于建立和维护邻居关系。EIGRP 5s发一次,15s超时宣布邻居死亡;OSPF 10s发一次,40s超时宣布邻居死亡。
OSPF的编号:不同的设备之间进程编号可以不同。
关于网段的宣告:1. 和对端的直连网段建立邻居使用 2. 把自己的网段告诉别人 3. 宣告的时候涉及把自己宣告到哪个区域中。
router-id: ip地址的格式,但是这个IP不一定存在,可以任意配置(设备之间不重复即可)。
如果不配置router-id, 让它自动选择,则1. 从环回口开始,选最大的ip; 2. 从物理接口开始,选最大的ip.
同一台设备的多个接口,可以放入不同的区域。但是两台相连的设备,连线的两个接口必须在同一个区域。
关于OSPF路由器优先级:DR/BDR.(指定路由器/备份指定路由器)

图中那一堆乱七八糟的线表示,每个设备收到邻居发来的路由之后还会发给自己的其他邻居,浪费带宽,浪费时间。所以需要DR(大哥),BDR(二哥),DRothers(小弟)的区分。通过角色选举来避免重复更新。怎么选举:1.比较接口优先级 优先级越大越优先(接口优先级可以修改,相当于人为指定DR/BDR)2. 比较设备router-id, 越大越优先。但是因为选举不可抢占,所以实际上哪个先启动,谁就是DR .
如果DR 挂了,那么BDR自动成为DR,DRothers抢BDR。

监控主机接入后,所有发往102的流量都被引入监控主机,瞬间报警,完蛋了。所以OSPF需要认证。
OSPF和EIGRP的区别:OSPF只更新拓扑表(LSA),然后计算最优放入路由表。EIGRP只发路由表,即把自己认为最优的路由发给别人。
OSPF的开销(cost):10^8 / bandwidth
OSPF的报文分类:
Hello: 建立和保持邻居关系
DBD:OSPF的路由更新,更新的是LSDB(Link State Database) 中的LSA(Link State Advertise),为了防止重复,需要计算出来LSA的摘要进行发送 — 这就是DBD(找对象前先看照片)。1. 建立邻居关系时发DBD 2. 出现新的路由条目的时候发送DBD
LSR:根据DBD决定自己要请求哪些LSA
LSU:收到LSR后,发送对端需要的LSA
LSACK:收到LSA之后的确认.如果没有发送LSACK,LSU报文会重传
OSPF中两种关系:
邻居:DROthers和DROthers之间的关系-状态是2-WAY。彼此之间只发hello包,不会交互LSA信息。
邻接:DR和BDR跟DROther之间的关系-状态是FULL。既交换hello, 也交换LSA。
OSPF组播地址:224.0.0.5/224.0.0.6
224.0.0.5 是通用地址,DR/BDR/DROthers都会监听这个地址,hello包用
224.0.0.6是只有DR、BDR可以收到数据。DRothers会把LSA更新发到这个地址。DR收到更新,会把这个更新发到224.0.0.5上,所有的DRothers都会收到更新。

OSPF的初始状态:DOWN。收到hello包进入INIT。

从2Way到Exstart之间会选举DR/BDR。下图中Hello报文实际是DBD,不是Hello包。这里发送DBD之前,会比较RouterID, 谁的RouterID大,谁是主,谁先发实质的DBD。


到FULL状态,流程结束。