OSPF路由协议
1)内部网关协议和外部网关协议
自治系统(AS)
AS是指由同一个技术管理机构管理,使用统一选路策略的一些路由器的集合
内部网关协议(IGP)
IGP:运行在AS内部的路由协议,主要结局AS内部的选路问题,发现,计算路由。
外部网关协议(EGP)
EGP:运行在AS与AS之间的路由协议,在解决AS之间选路问题。
2)链路状态路由协议
OSPF工作过程
1.邻居列表
2.链路状态数据库
3.路由表
3)OSPF的基本概念
OSPF区域
1.为了适应大型的网络,OSPF在AS内划分多个区域
2.每个OSPF路由器维护所在区域的完整链路状态信息
所有非主干区域必须要与骨干区域由一条链路链接,所有非骨干区域想要和外部通信,必须要经过骨干区域
区域ID
1.区域ID可以表示成一个十进制的数字
2.也可以表示成一个IP
骨干区域Area 0
负责区域间路由信息传播
Router ID和Router ID选取规则
1.OSPF区域内唯一标识路由器的IP地址
2.先去路由器lookback接口上数值最高的IP地址
3.如果没有lookback接口,在物理端口中选择IP地址最高的
4.也可以使用router-id命令指定Router ID
DR 和 BDR的选举方法
1.自动选举DR和BDR
网段上Router ID最大的路由器将被选举为DR,第二大的将被选举为BDR
2.手工选择DR和BDR
优先级范围是0~255,数值越大,优先级越搞,默认为1
如果优先级相同,则需要比较Router ID
如果路由器的优先级被设置为0,它将不参与DR和DBR的选举
DR 和 BDR的选举过程
路由器的优先级可以影响一个选举的过程,但是他不能强制更换已经存在的DR或BDR路由器
OSPF的度量值为COST
1.COST=10^8/BW
2.最端路径是基于接口指定的代价(COST)计算的
4)OSPF的数据包类型
OSPF数据包
承载在IP数据包内,使用协议号89
OSPF的包类型
OSPF的包类型 | 描述 |
---|---|
Hello包 | 用于发现和维持邻居关系,选举DR和BDR |
数据库描述包(DBD) | 用于向邻居发送 摘要信息以同步链路状态数据库 |
链路状态请求包(LSR) | 在路由器收到包含新信息的DBD后发送,用于 请求更详细的信息 |
链路状态更新包(LSU) | 收到LSR收发送链路状态通告(LSA),一个LSU数据包可能包含几个LSA |
链路状态确认包(LSAck) | 确认 已经收到DBD/LSU,每个LSA需要被分别确认 |
OSPF邻接关系的建立
OSPF的七种状态
1.Down(初始化)状态:没有启用OSPF的状态;邻居失效后变为该状态
2.Init(收到第一个Hello包)状态:开始发送Hello包(包中含有自己的Router ID),第一次收到对端发来的hello包(包含对端route-id)时,将对端的状态设置为init
3.2-way(建立双向会话)状态:从邻居处收到一个包含自己Router ID的Hello包
4.Exstart(建立主从关系)状态:发送DBD(包含本地的LSA的摘要信息)报文,选举主从路由器(利用HELLO报文中的ID和优先权来进行选举,不允许抢占,DR没了,DBDR才能上)
5.Exchange(交换摘要信息)状态:相互间发送DBD,告知对端本地所有的LSA的目录;同时,可以发送 LSR,LSU,LSACK来学习对端的LSA
6.Loading(加载详细信息)状态:没有学习完的状态,发送LSR,LSU,LSACK,专门学习对端的LSA的详细信息
7.Full(完全连接)状态:邻居开始建立完全邻接关心
成为邻居的6个条件:
1.RID不同
2.特殊区域的flag字段相同
3.子网掩码相同
4.验证相同
5.区域号相同
6.hello/dead相同
OSPF的应用环境
从以下几方面考虑OSPF的使用
网络规模
网络拓扑
其他特殊要求
路由器自身要求
OSPF的特点
可适应大规模网络
路由变化收敛速度快
无路由环
支持变长子网掩码VLSM
支持区域划分
支持以组播地址发送协议报
OSPF与RIP的比较
OPSF配置命令
–SPF配置命令
[R1]int g0/0/0 .
###配置接口ip地址
[R1-GigabitEthernet0/0/0]ip add 11.0.0.2 24
[R1 -GigabitEthernet0/0/0]un sh .
[R1 -GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/1]un sh
[R1-GigabitEthernet0/0/1]int 1oo 0
[R1-LoopBack0]ip add 1.1.1.1 32
[R1-LoopBack0]ospf 1 router-id 1.1.1.1
###创建OSPF进程,配置路由ID
[R1-ospf-1]area 0
##进入区域0,区域ID可以用数字表示,也可以用IP表示,若区域0则是骨干区域
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 ## #宣告0SPF区域内的直连网段,使用反掩码
[R1-ospf-1-area-0.0.0.0]network 12.0.0.0 0.255.255.255
reset ospf process
###重置0SPF进程