OSPF基础

一、OSPF特点

OSPF(Open Shortest Path First)即为开放式最短路径优先协议,采用dijkstra(SPF)即最短路由优先算法。基于IP协议封装,协议号为 89,使用范围:IGP。

特点:

  • OSPF 是一种典型的链路状态型路由协议
  • 传递的信息称作LSA,LSA 链路状态通告,其包含路由信息(描述本路由器上接口的路由信息)和拓扑信息(描述路由器之间的连接状态)
  • 更新方式: 触发更新+30分钟的链路状态刷新
  • 更新地址: 组播和单播更新,组播地址: 224.0.0.5(ALL SPFrouter) 224.0.0.6 (ALL DR router)
  • 支持区域划分
  • 支持路由认证
  • 支持手工汇总

二、OSPF区域

区域划分的意义:

  • 减少LSA的数量
  • 减少LSA的传播范围

区域的标记:

  • 十进制
  • 32个二进制

区域的分类:

  • 骨干区域: 区域标记为0或0.0.0.0
  • 非骨干区域:区域标记不等于0或0.0.0.0

区域设计原则:(类似于向日葵型网络结构)

  • OSPF网络中必须存在并唯一的骨干区域(单区域除外)
  • 若存在非骨干区域,非骨干区域必须与骨干区域直接相连

OSPF中路由器的角色:

  • 骨干路由器:路由器的所有接口都属于骨干区域
  • 非骨干路由器:路由器的所有接口都属于非骨干区域
  • ABR:区域边界路由器,能够产生3类LSA的路由器
  • ASBR:自治系统边界路由器,能够产生5类或7类LSA的路由器(比如:将非OSPF协议的路由引入到OSPF当中)

三、OSPF消息数据包

1.Hello

周期性发送,周期时间10s或30s(根据不同的网络类型默认10s或30s)

目的:建立并维持OSPF 邻居关系(邻居关系建立之后充当保活包功能)

Auth TypeAuth Data分别为路由认证的类型和数据

Hello IntervalRouter Dead Interval分别为Hello时间和死亡时间,其比例是1:4

Router Priority:DR优先级,DR选举时使用

NP:N代表是否支持7类LSA,P代表是否支持7转5类LSA

E:是否支持5类LSA

2.DBD

数据库描述数据包,会进行主从选举:比较双方的router-id ,router-id大的一方为主 (master ),小的一方为从 (slave)其主要用于控制LSA的交互。

Interface MTU:接口最大传输单元,主从接口MTU必须保持一致

R:保留位。

I:初始化位。第一个发送的包显示为1,其余为0。

M:更多位。最后一个包显示为0,其余为1。

MS:主从位。如果为主的话为1(第一次发送都为1)。

DD Sequence:序列号。用于确认(后续把序列号设置和一致)。

携带LSA头部信息的DBD:

3.LSR

链路状态请求,按照DBD中报文的对未知LSA头部进行请求。

4.LSU

链路状态更新,携带LSA信息。

5.LSACK

链路状态确认。

四、OSPF邻居状态机制

邻居状态:Down、 init 、 attempt(尝试过渡) 、 two-way 、 exstart 、 exchange 、loading 、full(其中Down和attempt状态一般很难捕捉到)

1.init

初始化状态,一旦开始发送hello报文,进入初始化状态。

2.two-way

双向通信状态(邻居状态),接收到包含自己router-id 的对方hello报文。

邻居关系建立条件(前五条必须):

  1. router-id 必须不同
  2. area ID 必须相同
  3. 认证类型 (不认证=0 明文认证=1 MD5=2) 和认证数据必须一致
  4. hello时间,dead时间必须一致
  5. 特殊区域标识(E(外部路由位)、N(NSSA外部路由位)、P)必须一致
  6. MA网络中,网络掩码相同
  7. 必须同时使用单播或组播更新
  8. 更新源检测(双方的IP地址必须在同一网段)

邻居状态下(two-way):

  • MA的网络中会选举DR(指定路由器) BDR(备份指定路由器)

DR选举:

  1. 比较优先级 (范围:0-255,默认优先级为1 ,越大越优)
  2. 比较各自的router-id,越大越优

注意:

  1. DR抢占是关闭的
  2. DR是一个接口概念
  3. 优先级范围 0-255,数字为0代表不参与选举
  4. 先选举BDR ,再升级为DR

3.exstart

预启动状态,一旦开始发送主从DBD,则进入预启动状态。

主从选举:发生在exstart状态, 通过双方的router-id进行比较, router-id大的一方为主。

发送的主从选举DBD,DBD中包含了MTU值(默认思科直接启用,华为中默认不包含MTU,可以使用命令激活传递MTU值的功能,若双方的MTU值不相同则卡在exstart 状态)。

4.exchange

预交换,主从选举完成,则发送携带LSA头部信息的DBD,进入预交换状态,会发送LSR数据包。(但是没有LSU)。

5.loading

加载状态,发送LSR对未知LSA头部信息进行请求,通过LSU进行大量LSA的学习,并通过LSACK进行确认。

6.full

邻接状态。请求列表和学习列表空了之后,双方LSA同步(双方LSA全部学习)。

五、OSPF基本配置

[R1]ospf 1 router-id 1.1.1.1    //进入OSPF的进程(协议视图),手工配置 router-id

[R1-ospf-1]area 0               //进入区域模式,宣告直连网段或地址

[R1-ospf-1-area-0.0.0.0]network 192.168.1.32 0.0.0.0   //精确宣告(宣告地址)

[R1-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.31   //网段宣告(宣告网段)

Router-id : 路由器标识符,用于标识本路由器在OSPF网络中的唯一性。

OSPF router-id 选举规则:

  1. 手工指定最优先
  2. 选举所有逻辑中IP地址最大的
  3. 选举所有物理接口IP地址最大的
  • 华为中: 若以上三点都不满足,则可以创建router-id 为0.0.0.0 ;在使用逻辑或物理接口IP地址时,接口可以是关闭状态;若一台路由器启用了多个OSPF进程,不同进程可以使用相同的router-id(不推荐);
  • 思科中:若以上三点都不满足,则无法启用OSPF;在使用逻辑或物理接口时,接口必须双 up ,该接口可以不通告进入OSPF中;同一路由器上多个OSPF进程必须router-id必须不同;

全局模式下可以选择针对所有的OSPF进程修改router-id ;(若同时在接口部署时,接口优先生效)

OSPF查看三张表:

  • 邻居表:display ospf peer brief(简单查看)
  • LSDB表(链路状态数据库):display ospf lsdb
  • OSPF路由表:display ip routing-table protocol ospf

题外:组播MAC地址

1.组播MAC地址构成

  • 前24位:01:00:5e
  • 第25位:0
  • 后23位:将组播IP地址的后23位映射到组播MAC地址

组播IP地址前4个为1110,中间空了5个,后23个映射到组播MAC地址上。

总结:一个组播MAC地址,会拥有32相同的组播IP地址。

2.组播MAC地址计算

将224.0.0.5转化为组播MAC地址

224.0.0.5——1110 0000.0000 0000.0000 0000.0000 0101

01-00-5E-00-00-05——01-00-5E-0000 0000.0000 0000.0000 0101

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值