学习HCIP的day.03

目录

OSPF:开放式最短路径优先协议

一、OSPF的数据包 -- 5种

二、OSPF的状态机  

三、OSPF的工作过程

四、OSPF的基础配置

五、关于OSPF协议从邻居建立成为邻接的条件

六、OSPF的接口网络类型


OSPF:开放式最短路径优先协议

        无类别链路状态型IGP协议;由于其基于拓扑进行更新收敛,故更新量会随着拓扑的变大而成指数上升;故OSPF协议为了能在大、中型网络中运行,需要结构化的部署----合理的区域划分、良好的地址规划   正常等开销负载均衡;它是一种跨层封装协议,协议号为89;

组播更新地址为: 224.0.0.5  224.0.0.6            更新机制:触发更新+周期更新(每30min)

距离矢量 DV 链路状态LS
RIP、EIGRP OSPF、ISIS
邻居间共享路由条目 邻居间传递的是拓扑信息
传闻性协议 本地计算路由

OSPF协议优点分为三方面:

  1. 收敛速度快   2、选择路径佳(前提是防环)  3、占用资源少

一、OSPF的数据包 -- 5种

学习HCIP的day.03_第1张图片

OSPF的头部内容

 版本:OSPF协议的版本号IPV4版本(OSPFV1,OSPFV2),IPV6版本(OSPFV3),在IPV4环境下一般使用OSPFV2版本

类型:OSPF的数据包的类型

(1)hello包 -- 组播收发,用于邻居、邻接关系的发现、建立、周期保活  

(2)DBD -- 数据库描述包--  本地LSDB(链路状态数据库)目录

(3)LSR---链路状态请求 --  用于询问对端本地未知的LSA信息

(4)LSU-- 链路状态更新 --  用于共享具体的每一条LSA信息

(5)LSack 链路状态确认 -- 确认包

路由器ID:发送数据包的路由器的RID

区域ID:代表数据包从哪个区域发出

认证类型:①null,不认证,标识为0;②simple,明文认证,标识为1;③MD5认证,通过对比摘要值进行认证,标识为2

1、Hello包

学习HCIP的day.03_第2张图片

网络掩码:发出hello包接口配置的IP地址的子网掩码,在华为设备中,要求邻居设备接口的子网掩码必须相同,否则将无法 正常建立邻居关系。注:这个限制只针对以太网。

hello时间以及后面的死亡时间:在建立邻居关系的时候也必须相同,如果不同则将无法正常建立邻居关系。

8位可选项:每一位都代表路由器的某个OSPF特性,8位中存在特殊区域的标记位,如果邻居间特殊区域标记位不同,则也无法正常建立邻居关系。

路由器的优先级:进行DR/BDR选举时使用,代表发出这个数据包的接口的优先级。

指定路由器/备份指定路由器:DR/BDR,一旦DR和BDR选举完成,则将会把DR/BDR对应接口的IP地址携带上。在DR和BDR没选出来或不需要选举时,对应字段使用0.0.0.0来填充。

2、DBD包
学习HCIP的day.03_第3张图片

 

接口的最大传输单元(MTU):华为设备默认不进行MTU值的检测,所以,一般携带值为0。可以通过命令开启MTU值的检测,但注意,MTU值要求邻居双方必须相同,不同可能导致邻居关系停留在EXSTART状态。

I(Init):该位置1,则代表这个数据包是用来进行主从关系选举的,主从关系选举的数据包将不携带LSA头部信息(LSDB摘要信息)

M(More)该位置1,则代表该DBD包后面还有更多的DBD包。置0则代表该数据包为最后一个DBD包。

MS(Master)该位置1,则代表这个DBD包由主发送,置0则代表由从发送

序列号:在DBD包交互过程中,会逐次加1,用来确保DBD报文传输的有序性,同时还可以进行隐形确认,保证DBD包传输的可靠性。

3、LSR包

学习HCIP的day.03_第4张图片

 

链路状态类型,链路状态ID,通告路由器---可以唯一的标定出一条LSA 信息,为我们将他们称为LSA的“三元组”

4、LSU包

学习HCIP的day.03_第5张图片

5、LSACK包

学习HCIP的day.03_第6张图片 

LSA --- 链路状态通告:具体的一条一条 路由或者拓扑信息,不是一种数据包,所有的LSA是使用LSU这种包来转发的;

OSPF的数据包是跨层封装于3层报头后方 ,协议号89

学习HCIP的day.03_第7张图片

二、OSPF的状态机  

两台OSPF路由器间不同关系的阶段、

学习HCIP的day.03_第8张图片

 1、Down  一旦接收到对端的hello包进入下一个状态

 2、Init 初始化   若接收到的hello包中存在本地的RID,那么进入下一个状态机

3、2way 双向通讯  邻居关系建立的标志

条件:点到点网络直接进入下一个状态机;MA网络进行DR/BDR选举,非DR/BDR之间不能进入下一个状态机;

学习HCIP的day.03_第9张图片

 4、Exstart预启动 使用不携带数据库目录信息的DBD包,进行主从关系的选举,RID数值大为主,优先进入下一个状态机

5、exchange准交换  使用携带数据库目录信息的DBD包,进行目录共享,需要ACK确认

学习HCIP的day.03_第10张图片

 6、loading加载  接收到其他邻接的目录信息后,和本地进行比对,若本地存在未知的LSA信息,将使用LSR询问对端,对端使用LSU来更新这些LSA信息,直至双方数据库一致;

注:LSU需要ACK确认;

7、Full 转发   标志着邻接关系已经建立;

三、OSPF的工作过程

1、路由器上启动OSPF协议后,直连的邻居间,开始组播收发hello包,hello包中将存储本地已知邻居的RID,在双方RID均已知的情况下,建立邻居关系,生成邻居表

2、邻居关系建立后,邻居间将进行条件匹配,匹配失败将停留为邻居关系,仅hello周期保活即可;匹配成功者间将进行邻接关系的建立;

3、邻接关系间的路由器,将使用DBD/LSR/LSU/LSack来获取本地未知的所有LSA信息;使得同一区域内所有路由器的数据库完全一致;---- 数据库表

4、当本地数据库完成同步后,将数据库-->有向图-->树型结构图-->将本地到达所有未知网段的最短路径加载于本地路由表中;

5、收敛完成后,仅hello包周期保活即可;正常每30min,邻接关系间再进行一次DBD的对比,若一致及正常;若不一致将马上进行同步;

结构突变:触发更新

  1. 断开网段 直连断开网段的设备,直接使用LSU告知邻接,需要确认
  2. 新增网段  直连新增网段的设备,直接使用LSU告知邻接,需要确认
  3. 无法沟通    hello time 对应的 dead time ;dead time 到时时,断开邻居关系,去除基于该邻接共享的LSA计算所得路由;

四、OSPF的基础配置

1、启动OSPF进程

[r1]ospf 1 router-id 1.1.1.1  

启动时,定义进程号,仅具有本地意义;建议配置RID;

RID格式为ipv4地址,且需要全网唯一;  手工配置--环回接口上取最大数值的ip地址---物理接口上最大ip地址的数值

2、创建区域

[r1-ospf-1]area  0

[r1-ospf-1-area-0.0.0.0]

3、宣告网段 --- 自己的路由器上直连什么网段就宣告什么网段

[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0

[r1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

宣告:1、区域划分   2、接口激活协议   3、传递接口信息

区域划分规则:

  1. 星型结构 --- 区域0为骨干 大于0为非骨干,非骨干区域必须直连骨干区域
  2. ABR --- 区域边界路由器,两个区域间必须依靠ABR连接

启动配置完成后,邻居间使用hello包建立邻居关系,生成邻居表

hello包 --- 组播收发,周期发送 ---  hello time 10s 或30s  dead time 为hello time 4倍

学习HCIP的day.03_第11张图片

 邻居间hello包中有一些参数必须完全一致,否则无法建立邻居关系;

Hello 和dead time  、区域ID、认证参数、末梢区域标记;另外在华为的设备中OSPF要求邻居间接口上配置的ip地址,其掩码长度必须一致;

[r1]display ospf peer
#查看OSPF邻居表
[r1]display ospf peer brief
#查看OSPF邻居关系简表

        当邻居关系建立后,邻居间进行条件匹配,匹配失败,将保持为邻居关系;匹配成功,将建立为邻接关系,邻接关系将使用DBD/LSR/LSU/LSack来获取本地未知的所有LSA信息,同步生成数据库表 --- LSDB (链路状态数据库)

[r1]display ospf lsdb
#查看数据库表
[r1]display ospf lsdb router 2.2.2.2
#查看一条LSA信息

数据库表同步完成后,邻接间的互动完成,仅hello包保活;之后本地基于本地的数据库表转换为有向图,再转换为树形结构,最终将本地到达所有未知网段的最短路径,加载于本地的路由表中:

display  ip routing-table protocol  ospf
查看OSPF路由协议的优先级

默认ospf协议在华为设备中,优先级为10;度量为cost值

cost值=开销值= 参考带宽/接口带宽   默认参考带宽为100M

ospf协议将cost值之和最小定义为最佳路径,加载于本地路由表中

若接口带宽大于参考带宽,cost值为1,将可能导致选路不佳;可以修改默认的参考带宽

[r1]ospf 1

[r1-ospf-1]bandwidth-reference ?

  INTEGER<1-2147483648>  The reference bandwidth (Mbits/s)

[r1-ospf-1]bandwidth-reference 1000

切记:一旦修改,整个网络所有ospf路由器需要一致;

关于ospf的MTU问题

在ospf协议的DBD包中将携带本地接口的MTU值,若两端一致可以正常建立邻居关系;若不一致将无法建立邻接关系;

默认华为设备不携带MTU;

[r1-ospf-1] int g0/0/1  

[r1-GigabitEthernet0/0/1]ospf mtu-enable    两端设备均需开启

五、关于OSPF协议从邻居建立成为邻接的条件

根据网络类型决定:

1、在点到点网络中,所有的邻居关系必然成为邻接关系

2、在MA网络中从邻居到邻接前将利用一个周期的dead time;进行DR/BDR选举;

先比较这些参选接口的优先级,默认1,取值范围0-255;越大越好,0标识不参选;

DR优先级最大,BDR次大;选举非抢占,故若希望干涉选举,需要重启ospf进程,或者将非DR/BDR修改为0;

[r2]interface GigabitEthernet 0/0/1

[r2-GigabitEthernet0/0/1]ospf dr-priority  3  修改优先级

重启进程

reset ospf process

Warning: The OSPF process will be reset. Continue? [Y/N]:y

非DR/BDR间为邻居关系;

六、OSPF的接口网络类型

OSPF协议在不同的网络类型,其工作的方式不同

[r1]display  ospf interface GigabitEthernet 0/0/1

以下为OSPF接口信息

                                 OSPF Process 1 with Router ID 1.1.1.1

                                                         Interfaces

                 Interface: 12.1.1.1 (GigabitEthernet0/0/1)

                 Cost: 1       State: DR        Type: Broadcast    MTU: 1500  

网络类型 OSPF接口网络类型
LoopBack P2P(LoopBack) 无hello包 环回使用32位主机路由
点到点(PPP/HDLC/GRE) P2P 10s hello time 不选DR/BDR
BMA(以太网) Broadcast 10s hello time 选DR/BDR
NBMA(MGRE) P2P 30s hello time 选DR/BDR

在tunnel接口上,ospf的默认工作方式为P2P,这种工作方式,只能建立一个邻居关系,故在MGRE环境中将无法正常工作;

修改接口的默认工作方式:

[r1]interface Tunnel 0/0/0

[r1-Tunnel0/0/0]ospf network-type ?

  broadcast  Specify OSPF broadcast network

  nbma       Specify OSPF NBMA network

  p2mp       Specify OSPF point-to-multipoint network

  p2p        Specify OSPF point-to-point network

切记:一个网段中所有接口的ospf工作方式必须一致;否则将无法建立邻居关系,或者因为不同工作方式的hello time一样,错误建邻,无法收敛;

当MGRE环境中,使用OSPF,且所有tunnel接口修改为broadcast工作方式后,必须基于拓扑接口考虑DR位置问题

MGRE可以构建不同的拓扑结构:

  1. 星型--中心到站点--轴辐状  中心站点为DR,取消BDR
  2. 全连网状 ---   不需要再关注DR
  3. 部分网状 --- 基于能够全网段内正常共享LSA来考虑最佳的DR位置

你可能感兴趣的:(HCIP,学习,网络)