OSPF—动态路由协议

1.如何评判一个动态路由协议的好坏?

①选路佳

②收敛速度越快越好—通过计时器来看

③资源占用少

2.RIP的分析

①选路—RIP的选路不好—选路依据是看跳数(选路依据不够科学),可能出现环路问题

②收敛速度—RIP计时器-300s

③资源占用—从整体上来说RIP存在周期更新,导致整体OSPF和RIP资源问题都很严重

3.OSPF的分析

OSPF—开放式最短路径优先协议—链路状态路由协议(传递拓扑信息)

OSPF会发自身的连接情况

收集LSA(拓扑信息)—形成有向图—转换为最短路径树—依靠自身的最短路径优先算法计算得出路由

①选路—OSPF的选路依据是带宽(选路依据更加科学),不会出现环路

②收敛速度—OSPF计时器周期更短

③资源占用—单个数据包的角度来说OSPF远大于RIP,从整体上来说RIP存在周期更新,导致整体OSPF和RIP资源问题都很严重

4.OSPF版本—V1、V2—IPV4 V3—IPV6

RIP版本—V1、V2、NG

OSPF—V2

RIP—V2OSPFV2和

相同点:

①OSPFV2和RIPV2都是无类别(携带掩码)的动态路由协议(都支持汇总和子网划分)

②OSPFV2(组播地址是224.0.0.5和224.0.0.6)和RIPV2(组播地址是224.0.0.9)都是通过组播发送自身的数据包

③OSPFV2和RIPV2都支持等开销负载均衡

不同点:

①RIPV2只适用于中小型网络环境,OSPFV2适用于中大型网络环境

5.OSPF为了解决资源占用采用了一个结构化部署的思路—区域划分

区域内部传递拓扑信息,区域之间依然传递路由信息(可以汇总)

ABR—区域边界路由器(连接区域的一个边界)—同时属于两个区域(看接口)—一个ABR可以同时属于多个区域)

6.区域划分的原则

必须存在ABR—区域边界路由器—必须有接口属于区域0,同时可以存在多个ABR

必须按照星形拓扑结构(其他区域必须和骨干区域0相连接)部署—中间区域(骨干区域的编号是区域0)—area 0

③如何区分和标识不同的OSPF区域—设置了区域ID—area ID—由32位二进制构成(0=0.0.00.0  1=0.0.0.1  255=0.0.0.255)

OSPF可以做区域划分也可以不做区域划分(根据实际情况来判断)

OSPF网络如果存在多个区域—多区域OSPF网络

OSPF网络如果只有一个区域—单区域OSPF网络

非法ABR—接口不属于区域0的情况

7.OSPF的工作过程

①OSPF的数据包(RIPV2—request、respond)

HELLO包—用来周期性的发现建立和保活邻居关系

Hello时间—周期更新时间—10s/30s(特殊环境会存在)

Dead time—死亡时间—默认情况下是4倍的Hello时间

RID—路由器的ID—由32位二进制构成—用来区别和标识不同的OSPF路由器

RID具备唯一性,格式统一性

RID设置给设备的两种方式:

①手工指定

②自动生产—首先会检测路由器是否配置环回地址,然后选择环回地址最大的作为自己的RID(根据数值来判断),如果设备没有配置环回地址,则选择接口IP地址数值最大的作为自己的RID(根据数值来判断)

DBD包—链路状态数据库描述包(减少资源占用的手段)—LSDB(链路状态数据库)—LSA(链路状态信息)—相当于是链路状态数据库摘要信息(路由器向对端发送摘要信息对端进行对比看哪些信息是自己没有的)

LSR包—链路状态请求包—请求未知的LSA信息

LSU包—链路状态更新(对端问我要的LSA的信息)报文—发送对端需要的LSA信息

LSACK包—用来确认收到了LSA信息

②OSPF的状态机

244.0.0.5—组播地址

Down State—关闭状态(稳定状态—可能会停留的一些状态)

Init State—初始化状态—小A发送自我介绍并说我谁都不认识的数据包给小B

Two-way State—双向通讯状态—标志着邻居关系的建立—条件匹配(匹配成功是邻接关系,匹配失败是邻居关系,邻接关系才会去发送LAC,邻居关系不会发送LAC)—匹配成功才能继续向下进行;如果匹配失败,并没有直接断开连接,而是停留在邻居关系之后仅使用Hello包进行保活。

假设匹配成功

Exstart State—预启动状态—主从关系的选举(为了错开发送)

DBD包—被改造后空的DBD包(为了区分不同的状态)

Exchange State—准交换状态

华为体系下没有图中第一个LSAcK这个数据包忽略不看

Loading State—加载状态

Full State—标志着邻接关系的建立—并且只有达到邻接状态才能真正共享LSA信息

③OSPF的工作过程

建立邻居关系:启动配置完成后,OSPF将本地所有运行了OSPF协议的接口,以组播224.0.0.5(目标IP)周期性的发送hello包,hello包中将携带自己本地的RID,邻居接收到对端的RID将会把这些信息存储在邻居表

条件匹配:如果条件匹配成功则进入下一个状态,如果匹配失败则,停留在邻居关系。需要用hello包进行周期保活。

建立邻接关系:进行主从关系的选举,首先采用未携带数据(真正LSA摘要)的DBD包进行选举—对比RID,RID大的作为主设备,后续将由主设备优先共享自己的数据库摘要信息,同时也将由主设备先共享自己的LSA信息。之后使用LSR/LSU/LSACK获取本地未知的LSA信息,完成了本地lsdb的建立—完善自己的本地链路数据库表。

完成收敛:基于自己本地的链路状态数据库,依靠OSPF算法形成有向图---最终计算得出路由:加载到自己本地的路由表中。

收敛完成后,将使用hello包周期保活,每30min进行周期更新(30min是对OSPF协议进行更新)。

④OSPF的基础配置

打开R1

<Huawei>sys

[Huawei]sys r1

[r1]interface GigabitEthernet 0/0/0

[r1-GigabitEthernet0/0/0]ip add 12.0.0.1 24

[r1-GigabitEthernet0/0/0]q

打开R2

<Huawei>sys

[Huawei]sys r2

[r2]interface GigabitEthernet 0/0/0

[r2-GigabitEthernet0/0/0]ip add 12.0.0.2 24

[r2-Global-Mp-Group0]int g 0/0/1

[r2-GigabitEthernet0/0/1]ip add 23.0.0.1 24

[r2-GigabitEthernet0/0/1]q

打开R3

<Huawei>sys

[Huawei]sys r3

[r3]interface GigabitEthernet 0/0/0

[r3-GigabitEthernet0/0/0]ip add 23.0.0.2 24

[r3-GigabitEthernet0/0/0]q

打开R1

[r1]ospf router-id 1.1.1.1—启动ospf进程—建议手工指定RID(一个IGP内部必须得运行一种协议,所以进程号必须一致)

[r1-ospf-1]area 0—选择对应的区域

宣告有两种方式(如果既写了精准宣告又写了范围宣告,那么接口会优先考虑精准宣告)

[r1-ospf-1-area-0.0.0.0]network 12.0.0.1 0.0.0.0(反掩码)—精准宣告(仅宣告一个IP地址)

[r1-ospf-1-area-0.0.0.0]network 12.0.0.0 0.0.0.255(反掩码)—范围宣告(相当于宣告一个网段)

反掩码—由连续的0和1构成(32位二进制),0代表不可变1代表可变

打开R2(R2是一个ABR区域边界路由器)

[r2]ospf 1 router-id 2.2.2.2

[r2-ospf-1]area 0(一旦一个设备存在多个区域那么这些区域都要创建)

[r2-ospf-1-area-0.0.0.0]network 12.0.0.0 0.0.0.255—范围宣告

[r2-ospf-1-area-0.0.0.0]area 1

[r2-ospf-1-area-0.0.0.1]network 23.0.0.1 0.0.0.0—精准宣告

[r2-ospf-1-area-0.0.0.1]q

[r2-ospf-1]q

[r2]display ospf peer—查看邻居表总表

<r2>display ospf peer brief—查看邻居表简表

<r2>display ospf lsdb —查看链路数据库表的摘要(目录)信息

<r2>display ospf lsdb router 2.2.2.2—查看一条LSA信息的指令

当OSPF网络发送结构突变(新增或者断开一个网段,以及无法沟通),如何处理?

新增或者断开一个网段—通过触发更新处理

无法沟通—通过死亡时间(40s)处理

(补充:

打开R1(写一个环回地址模拟用户网段)

[r1]int LoopBack 0

[r1-LoopBack0]ip add 192.168.1.1 24

[r1]ospf 1

[r1-ospf-1]area 0

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

[r1-ospf-1-area-0.0.0.0]undo network 192.168.1.1 0.0.0.0—删除宣告的指令)

COST=参考带宽(默认100M—实际情况下这个值设置的比较小)/实际带宽(链路实际带宽)

改OSPF的参考带宽(修改一台路由器则同一个网络的路由器都要修改)的步骤:

打开R1

[r1]ospf 1

[r1-ospf-1]bandwidth-reference 10000

打开R2

[r2]ospf 1

[r2-ospf-1]bandwidth-reference 10000

打开R3

[r3]ospf 1

[r3-ospf-1]bandwidth-reference 10000

条件匹配—指定一台路由器和其他OSPF网络设备建立邻接关系,其他的设备仅保持邻居关系

选举规则—OSPF网络首先会选择优先级数值大的作为指定路由器。当优先级数值一致,会选择接口IP地址大的作为指定路由器

DR—指定路由器

BDR—备份指定路由器—和其他设备建立邻接关系,当DR失效时顶替DR的工作

DRother—其他路由器

OSPF的条件匹配(DR和BDR的选举)一定是非抢占的(选举时间为40s—死亡时间)

<r1>reset ospf process—重置OSPF协议的命令(所有设备重置的时间应该相近,不然选举只有40s还是会出现差错)

[r1-GigabitEthernet0/0/0]ospf dr-priority 2—更改OSPFDR选举优先级,数值越大的成为主设备—人为干涉某台设备的选举

当优先级数值为0,意味着该路由器将放弃DR和BDR的选举。

OSPF的拓展配置:

①手工认证(发送数据包过程中携带密码,保证数据包的安全性)

[r1]interface GigabitEthernet 0/0/0

Md5—密文传输

Simple—明文传输

[r1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456—在发送的过程以密文的方式转发数据包

[r1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 ?

STRING<1-255>/<20-392> The password (key)—KEY ID必须得一致

[r2-GigabitEthernet0/0/1]ospf authentication-mode simple  cipher 123456—在发送的过程以明文的方式转发数据包

[r3-GigabitEthernet0/0/0]ospf authentication-mode simple plain 123456

[r2-GigabitEthernet0/0/0]ospf authentication-mode md5 1 plain 123456

直连接口用的方式应该是一致的就像标红都用md5

②手工汇总(创建环回地址)

配置位置—ABR区域边界路由器上进行配置

打开R1

[r1]int LoopBack 0

[r1-LoopBack0]ip add 192.168.1.1 24

[r1-LoopBack0]q

[r1]int LoopBack 1

[r1-LoopBack0]ip add 192.168.2.1 24

[r1-LoopBack1]q

192.168.1.0 24和192.168.2.0 24的汇总结果为192.168.0.0 22

[r1]ospf 1

[r1-ospf-1]area 0

[r1-ospf-1-area-0.0.0.0]network 192.168.0.0 0.0.255.255

只能汇总路由

打开R2

[r2]ospf 1

[r2-ospf-1]area 0—进入区域(OSPF的汇总是区域汇总)

[r2-ospf-1-area-0.0.0.0]abr-summary 192.168.0.0 255.255.252.0—IP地址是汇总后的IP地址

区域内部传递的是拓扑信息,查看信息应该在其他区域查看,不能在哪配在哪个区域查

③沉默接口(OSPF可以沉默环回)

打开R1

[r1]ospf 1

[r1-ospf-1]silent-interface GigabitEthernet 0/0/1

④加快收敛—OSPF的计时器

打开R1

[r1]interface GigabitEthernet 0/0/0

[r1-GigabitEthernet0/0/0]ospf timer hello 2—OSPF死亡时间默认是hello时间的四倍

打开R2

[r2-GigabitEthernet0/0/0]ospf timer hello 2—配置位置为接口

注意更改时间要同时更改不能只更改一个设备

⑤缺省路由

假设R3连接外网那么缺省方向就是R3

打开R3

[r3]ospf 1

[r3]ip route-static x.x.x.x x(IP地址) x.x.x.x(下一跳)—给自身写缺省

[r3-ospf-1]default-route-advertise —下发缺省(前提是自身必须存在缺省)

[r3-ospf-1]default-route-advertise always—强制下发一条缺省

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值