|
**协议**
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部
**AD值**
思科OSPF的协议管理距离是110
华为OSPF的协议管理距离是150
**链路状态**
链路式路由器接口的另一种说法,因此OSPF也称为接口状态路由协议;OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表
**原理**
#建立邻接表
#同步数据库
#计算路由表
**区域分类**
骨干:0区域
非骨干:不是0区域的
**Hello协议的目的**
1.用于发现邻居
2.在成为邻居之前,必须对Hello包里的一些参数协商成功
3.Hello包在邻居之间扮演着keepalive的角色
4.允许邻居之间的双向通信
5.它在NBMA(Nonbroadcast Multi-access(非广播地址))网络上选举DR和BDR
**建立邻居影响因素**
1、RID不能相同;
router ospf 1
router-id x.x.x.x
clear ip ospf process
2、区域ID必须相同;
3、认证必须成功(认证类型必须相同,并且密码必须相同)
4、子网掩码必须相同(特殊情况下)
5、hello时间必须相同;
interface fas0/0
ip ospf hello-interval {value}
6、dead时间必须相同;
interface fas0/0
ip ospf dead-interval {value}
7、特殊标记位必须相同;
8、优先级必须不能全为0(特殊情况下)
9、3层MTU必须相同,否则会卡在Exatart状态
Interface fas0/0
Ip mtu +num(如1499)
**OSPF状态**
1.Down:此状态还没有与其他路由器交换信息。首先从其ospf接口向外发送hello分组,还并不知道DR(若为广播网络)和任何其他路由器。发送hello分组是,使用组播地址224.0.0.5。
2.Attempt: 只适于NBMA网络,在NBMA网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval来发 送Hello包.
3.Init:初始化收到了Hello包,但是2-Way通信仍然没有建立起来.
4.two-way: 双向会话建立,而 RID 彼此出现在对方的邻居列表中。(若为广播网络:例如:以太网。在这个时候应该选举DR,BDR。
5.ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将建立Master/Slave关系,路由器ID大的的成为Master.
6.Exchange: 信息交换状态:本地路由器和邻居交换一个或多个DBD分组(也叫DDP) 。DBD包含有关LSDB中LSA条目的摘要信息)。
7.Loading: 信息加载状态:收到DBD后,使用LSACK分组确认已收到DBD.将收到的信息同LSDB中的信息进行比较。如果DBD中有更新的链路状态条目,则想对方发送一个LSR,用于请求新的LSA 。
8.Full: 完全邻接状态,该状态表示双方的数据库完全同步
**DR与BDR的选取原则**
1.优先级为0的不参与选举
2.优先级高的路由器为DR
3.优先级相同时,以router ID 大为DR。router ID 以回环接口中最大ip为准。若无回环接口,以真实接口最大ip为准。
4.缺省条件下,优先级为1
**OSPF定义的5种网路类型**
类型
| 2层
| Hello与dead
| DR/BDR
| 是否主动发包
| 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类型**
1类LSA:router LSA
| 任何一个路由器,都会在任何一个区域中产生一个 1类LSA ;
可以将1类LSA理解为“自我介绍”,用于说明本身有哪些链路进入了该区域,并且是连接着哪些设备,是如何连接的;到对方的距离是多少;
1类LSA只能在一个区域内部进行传输
| link-id:路由器的RID
adv:路由器的RID
传输范围:只能在一个区域内部
ADV是否变化:不变化
| 2类LSA:net Link state
| 这种类型的 LSA ,只有在选举DR的网络环境中才会有。
只有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是否变化:否
|
|
|
|