本文共 4258 字,大约阅读时间需要 14 分钟。
OSPF邻接建立状态:
0、down:邻居从完好状态到挂掉;1、init:初始化,表示本地路由器收到了对方发送的hello包;attempt : 尝试;只有在以单播的方式建立 OSPF 邻居时,才会有。2、two-way:双向通信状态;表示本地路由器收到了对方发送的hello包,并且在对方的报文中,发现了自己的 RID(neighbor-list)此时也说明两边的hello中的参数协商成功了;在特殊的网络环境下,我们会在多个路由器中选择DR/BDR, 其他的路由器都叫做 DRother。此时,所有的路由器都仅仅 和DR/BDR同步数据库。DRother之间永远是处于Two-way。 选择DR的原则: 0、只有优先级不为0的路由器,才可以参与选举; 优先级为0的路由器,永远称之为 DRother。 1、首先比较的优先级,越大越好;(默认是1) 2、如果优先级相同,则比较 RID,越大越好; DR:designated router - 指定路由器 BDR:backup designated router - 备份指定路由器
3、exstart:交换初始化状态;目的是在该阶段进行协商,从而确定
在后续的数据库同步过程中,应该如何确保稳定有效传输; DBD-database description ,数据库描述报文;master/slave选择原则:RID,越大越好;I-初始化位,表示的是第一个 DBD报文;M-More,表示后续还有更多的 DBD ;MS-master/slave,表示主从关系位; 4、exchange:交换在该阶段,交换的其实不是数据库中的具体条目内容,而是数据库中的每个LSA条目的简要信息;此时发送的报文,就是 DBD,里面包含的是LSA的简要/摘要信息;5、Loading:加载
该过程中,才是真正的进行 LSA 的请求和发送的;此时发送的报文是:LSR/LSU/LSAck6、full:邻接。该状态表示双方的数据库完全同步。
OSPF网络类型:
OSPF的工作过程,完全由网络类型来决定;任何一种类型的链路,默认都对应着一种网络类型,但是,可以基于网络需求,进行人工修改;interface fas0/0 //修改端口网络类型;ip ospf network {type}show ip ospf interface fas0/0 //查看端口网络类型;broadcast :广播。(MA , multi-access)
当2层协议为ethernet时,对应的是广播网络类型;hello是10s;dead是40s;需要选举DR/BDR;端口主动发包,发包方式为组播(224.0.0.5/6)non-broadcast :非广播。(NBMA)当2层协议为Frame-relay时,对应的是非广播网络类型;hello是30s;dead是120s;需要选举DR/BDR;端口不主动发包,发包方式为单播;【OSPF实现单播:neighbor x.x.x.x】point-to-point:点到点(P2P)
当2层协议为HDLC\PPP时,对应的是点到点网络类型;hello是10s;dead是40s;不需要选举DR/BDR;端口主动发包,发包方式为组播(224.0.0.5) point-to-Multipoint:点到多点(p2mp) hello是30s;dead是120s;不需要选举DR/BDR;端口主动发包,发包方式为组播(224.0.0.5)point-to-Multipoint non-broadcast:点到多点(p2mp-NB)
hello是30s;dead是120s;不需要选举DR/BDR;端口不主动发包,发包方式为单播LSA的类型:
OSPF的数据库中包含的是 LSA ; OSPF的数据库是以区域的形式来组织 LSA 的; 同一个区域中的所有路由器,数据库是完全同步的;LSA的摘要信息详解:
link-id:表示的是LSA的名字,adv:表示的是产生这个LSA的路由器的名字;age:表示的是存活时间;最大存活时间是3600s;seq:表示的序列号;LSA表示的链路每变化一次,LSA的序列号就会增加1;checksum:校验和,用于确保 LSA在传输过程中,没有被损坏。link-count:链路计数器,只有1类LSA才会拥有。表示的是该路由器上有多少个链路宣告进入了该区域;1类LSA:router LSA 任何一个路由器,都会在任何一个区域中产生一个 1类LSA ; 可以将1类LSA理解为“自我介绍”,用于说明本身有哪些链路 进入了该区域,并且是连接着哪些设备,是如何连接的; 到对方的距离是多少; 1类LSA只能在一个区域内部进行传输; link-id:路由器的RID adv:路由器的RID 传输范围:只能在一个区域内部 ADV是否变化:不变化 2类LSA:net Link state 这种类型的 LSA ,只有在选举DR/BDR的网络环境中才会有。 只有DR才有资格产生 2 类 LSA 。 link-id:表示的是 DR 的接口IP地址; ADV:DR的 RID ; 传输范围:一个区域内部 ADV是否变化:不变化; // 基于 LSDB 中的1类LSA 或者 1和2类LSA,就可以计算出 一个区域内部的路由,叫做 O 的路由;3类LSA:summary net link state 在不同的区域之间传输路由信息; 这种类型的LSA,仅有 ABR 可以产生。 3类LSA被ABR产生以后,首先进入到 OSPF 区域0,然后再转发到 其他区域。 ABR: 1、可以将非0区域中的“域内-O”路由,转变成3类LSA,发送到 0区域; 2、可以将0区域中的“域内-O”路由,转变成3类LSA,发送到非 0区域; 也可以将0区域中的“域间-OIA”路由,转变成新的3类LSA, 发送到其他的非0区域中; 3、一定不可以将非0区域中的3类LSA转发到0区域;; link-id:表示的是路由的前缀; adv:ABR的RID; 传输范围:一个区域内部 ADV是否变化:是;4类LSA:summary ASB link state 专门是为了辅助5类LSA计算路由而生的; 传递的信息是 ASBR 的 RID ; 是由与 ASBR在同一个区域的 ABR 产生的; 传递过程中每经过一个ABR,ADV都会变化一次。 link-id:表示的是 ASBR的 RID; adv:ABR 传输范围:同一个区域内部; ADV是否变化:是的;5类LSA:external LSA 表示的是OSPF的外部路由,没有任何区域概念; 可以在OSPF网络中畅通无阻。 哪里有OSPF,哪里就有5类LSA。 link-id:表示的是外部路由前缀; adv:ASBR的 RID ; 传输范围:没有限制; ADV是否变化:否;注意: 计算域内路由时,使用的1类或者1类和2类LSA; 计算域间路由时,使用的是3类和1类; 计算外部路由时,使用的是5类和1类,或者是5类,4类和1类;---------------------------------------------------------非0区域没有直接与0区域互联,解决方案:1、引入外部路由; #运行多个OSPF进程,并且相互之间进行重分发;2、引入内部路由(O IA) #引入虚链路。 通虚链路建立的OSPF邻居关系,永远都是属于区域0的; R3; router ospf 1 area 12 virtual-link 4.4.4.4 R4: router ospf 1 area 12 virtual-link 3.3.3.3Virtual-link:虚链路; 李军 Tel:15135361516 qq:344728662 @:501xiaofeng@163.com
转载于:https://blog.51cto.com/13504837/2057500