一.自治系统(AS)
能够自行决定系统中全部路由器之间该使用何种协议通信的一个内部系统 成为一个自治系统
我们将路由网关协议分为 内部网关协议和外部网关协议
内部网关协议(IGP) 实现一个自治系统内部路由器之间通信的协议
外部网关协议(EGP) 实现不同自治系统之间通信的协议
ospf 属于一种内部网关协议, 特点 收敛快 使用大型网络 灵活 没有跳数限制
ospf 路由表形成: 邻居列表——链路状态数据库——路由表
路由器之间先建立邻接关系,然后学习链路状态信息 构成 链路状态数据库 再通过 dijkstra 算法 得到 最短路径数 从而形成路由表
二.OSPF区域
为了适应大型的网络,OSPF在AS内划分多个区域
每个OSPF路由器只维护所在区域的完整链路状态信息
区域ID 区域ID可以表示成一个十进制的数字 也可以表示成一个IP
骨干区域Area 0 ospf 系统中最重要的区域, 负责区域间的路由信息传播, 系统中必须有且只有一个area 0 区域,并且 所有其他区域必须和 area 0 区域相连
其他 区域 叫做非骨干区域
Router ID OSPF区域内唯一标识路由器的IP地址
三.Router ID选取规则
选取路由器loopback接口上数值最高的IP地址
如果没有loopback接口,在物理端口中选取IP地址最高的
也可以使用router-id命令指定Router ID
DR 和BDP 在一个区域内 先选出指定路由器和备份指定路由器 来接受其他路由器的链路状态关系。 通过汇总后讲完成的区域内部整个状态在传给其他路由器, 依次节约流量 方式 网络风暴。
四.DR和BDR的选举方法
自动选举DR和BDR
网段上Router ID最大的路由器将被选举为DR,第二大的将被选举为BDR
手工选择DR和BDR
优先级范围是0~255,数值越大,优先级越高,默认为1
如果优先级相同,则需要比较Router ID
如果路由器的优先级被设置为0,它将不参与DR和DBR的选举
路由器的优先级可以影响一个选举过程,但是它不能强制更换已经存在的DR或BDR路由器
四.OSPF的组播地址
224.0.0.5 DR和 BDR 会使用 这个地址来发送LSA 更新给其他路由器
224.0.0.6 其他路由器 会使用这个地址来发送LSA 给 DR和 BDR
OSPF的度量值为COST 就是依据 代价来确定最短路径 代价和带宽成反比 带宽越高,代价越小
Hello包 用于发现和维持邻居关系,选举DR和BDR
数据库描述包(DBD) 用于向邻居发送摘要信息以同步链路状态数据库
链路状态请求包(LSR) 在路由器收到包含新信息的DBD后发送,用于请求更详细的信息
链路状态更新包(LSU) 收到LSR后发送链路状态通告(LSA),一个LSU数据包可能包含几个LSA
链路状态确认包(LSAck) 确认已经收到LSU,每个LSA需要被分别确认
ospf 邻接关系的建立
第一个阶段 使用 hello 包 建立双向通信过程
经过 down 状态 lnit 状态 2-Way状态
第二个阶段 建立完整的邻接关系
ExStrat 状态 Exchannge 状态 loading 状态 Full 状态
配置命令
启用ospf
router(config)#router ospf 进程号
router(config-router)#router-id 路由器id号
router(config-router)#network 所在网段 子网掩码反码 区域号
应用举例:
router(config)#router ospf 1
router(config-router)#router-id 1.1.1.1
router(config-router)#network 192.168.1.0 0.0.0.255 area 0
router(config-router)#network 10.0.0.0 0.255.255.255 area 10
router(config-router)#network 172.16.0.0 0.0.255.255 area 0