IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 静态路由及动态路由 -> 正文阅读

[系统运维]静态路由及动态路由

1.路由器的简单介绍

路由器(Router)是一种负责寻径、转发的网络层设备, 它从网络中选取一条最佳的通信路径提供给客户。路由器可连接几个分开的网络,用过IP逻辑地址连接到一起。路由器通过路由表转发数据,路由表中记录着网络地址以及各地址之间距离的清单,路由器利用路由表清单选择最佳转发路径。路由器使用时间最少和路径最短的算法进行工作,用以保证当某条路径发生故障断开或者出现拥堵是仍能正常通信。通过端口的转换,路由器可以实现不同网段的网络间进行通信。

2.路由器的工作原理

1.静态路由

**静态路由的原理:**静态路由不同于动态路由,不会自动生成识别目标端的IP地址,需要网络管理员手动输入目标段的IP地址,通过ARP协议获得对端的MAC地址,从而建立连接,是单方的。
**静态路由器的优缺点:**静态路由器不会自动识别IP,配置比较简单,同时也严重缺乏灵活性,连接也是单方向的。

2.默认路由

**默认路由的原理:**默认路由本质上也是属于静态路由的,默认路由的一端固定连接大网的一个接口,当找不到目标网络的路由时,路由器会请求转发到默认路由接口。

3.浮点路由

**浮点路由的原理:**设置优先级,做备选路线,增加网络冗余性,以确保网络传送的安全可靠。

**浮点路由的优缺点:**浮动保证了网络传输的安全可靠性,保障了工作环境的良好运行,但是成本相对较高,配置和维护相对困难。

3.路由配置

1、静态路由配置
首先我们可以先进行常规操作

#undo terminal monitor 关闭弹窗

#进入用户视图更改命名

#interface +端口号 ,进入端口视图

#ip add +ip , 添加ip地址(如下图示例)
请添加图片描述
接下来我们要观察各路由的目标网段及下一跳的IP,然后给每台路由做设置。

#ip route-static +目标网段+子网掩码+下一跳IP

如图中所示,给两台路由都做好配置,就可实现跨网段信息交互了。

2、默认路由配置
同静态路由,先设置常规操作,方便后面配置

#进入用户视图更改命名

#interface +端口号 ,进入端口视图

#ip add +ip , 添加ip地址
请添加图片描述
下面的步骤就与静态路由稍有区别了。

同样,先观察每台路由的目标网段及下一跳IP

以图为示例

我们设置R1和R3为默认路由

#ip route-static 0.0.0.0 0.0.0.0 +下一跳IP

R2我们需要进行双向设置,既与R1通又与R3通,需要设置两次

#ip route-static +目标网段+子网掩码+下一跳IP (R1方向)

#ip route-static +目标网段+子网掩码+下一跳IP(R2方向)

3、浮动路由配置
先进行常规操作

#undo terminal monitor 关闭弹窗

#进入用户视图更改命名

#interface +端口号 ,进入端口视图

#ip add +ip , 添加ip地址(如下图示例)
请添加图片描述
第一步,先观察各路由的目标网段及下一跳IP,对R1和R2设置一个最优路径的配置。

这里我们需要设一个环回IP,用于测试

#int lookback0

#ip add +IP地址(如1.1.1.1 24)

后面的配置与静态路由相同。

第二步,设置备选路径,由R1,R3,R2构成

同样需要用到第一步设置的环回IP lookback0

对R2进行设置

#ip route-static 目标网段+子网掩码 +下一跳IP preference +优先级数(优先级数要比60大)

R1同理

#ip route-static 目标网段+子网掩码 +下一跳IP preference +优先级数(优先级数要比60大)

R3设置需要双向,不用再设优先级

#ip route-static 目标网段+子网掩码 +下一跳IP(R1方向)

#ip route-static 目标网段+子网掩码 +下一跳IP(R2方向)

最后我们可以用PC机和环回IP进行PING通,测试配置是否无误。

4.动态路由

1.动态路由概述
动态路由是与静态路由相对的一个概念,指路由器能够根据路由器之间的交换的特定路由信息自动地建立自己的路由表,并且能够根据链路和节点的变化适时地进行自动调整。当网络中节点或节点间的链路发生故障,或存在其它可用路由时,动态路由可以自行选择最佳的可用路由并继续转发报文。
动态路由协议:路由器之间用来交换信息的语言

2.动态路由特点
1.减少了网络管理
2.占用了网络带宽(少量,可忽略不计)

3.选择依据:度量值
跳数、带宽、时延、可靠性、成本、负载
路由器会通过度量值来确定最优路由路径

4.收敛
使所有路由器都到达一致状态的过程

5.动态路由协议分类
距离矢量路由协议
——依据从源网络到目标网络所经过的路由器的个数选择路由 - - RIP、IGIP(思科私有协议)
链路状态路由协议
——综合考虑从源网络到目标网络的各条路径的情况选择路由 - - OSPF、ISIS

一、RIP协议

1.概述:

RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。

RIP 被定义为距离矢量路由协议,而距离矢量路由协议的根本特征就是自己的路由表是完全从其它路由器学来的,并且将收到的路由条目一丝不变地放进自己的路由表,以供数据转发。正因为如此,对于路由是否正确,对于目标是否可达,RIP全然不知。

“距离”的定义 :
从一路由器到直接连接的网络的距离定义为 1。
从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加 1。

RIP 使用跳数作为 metric,跳数就是到达目标网络所需要经过的路由器个数,因为直连网络不需要经过任何路由器,所以直连网络的 metric 为 0。RIP 所支持网络的最大跳数为 15,也就是 metric 值最大为 15,一但大于 15,如 16,被 RIP 认为目标不可达,由此可见,RIP 并不适合大型网络

RIP协议的管理距离为120。当路由表中出现了多条目标网段、子网掩码相同的路由信息时,优先选择管理距离小的协议所生成的路由信息。

RIP协议一共有两个版本:
Version 1 有类路由协议,广播更新。(由于不支持VLSM,RIPV1已经被淘汰,以RIPv2为主
Version 2 无类路由协议,支持VLSM

RIP协议的三个要素:
(1)仅和相邻路由器交换信息。
(2)交换的信息是当前本路由器所知道的全部信息,即自己的路由表。RIP交换的是本路由器上完整的路由表。
(3)按固定的时间间隔交换路由信息,例如,每隔 30 秒

2.RIP协议工作原理及流程
RIP协议在整个工作流程中主要使用四个定时器:
更新定时器(Update timer):
当此定时器超时时,立即发送更新报文。(30s)
老化定时器(Age timer):
RIP设备如果在老化时间内没有收到邻居发来的路由更新报文,则认为该路由不可达。(180s)
垃圾收集定时器(Garbage-collect timer):
如果在垃圾收集时间内不可达路由没有收到来自同一邻居的更新,则该路由将被从RIP路由表中彻底删除。(240s)
抑制定时器(Suppress timer):
默认时长为180s,当RIP设备收到对端的路由更新,其cost为16,对应路由进入抑制状态,并启动抑制定时器。为了防止路由震荡,在抑制定时器超时之前,即使再收到对端路由cost小于16的更新,也不接受。当抑制定时器超时后,就重新允许接受对端发送的路由更新报文。

3.路由表的建立
路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。路由表中也只有到直连网络的直连路由。
以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。
经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。
请添加图片描述
4.RIPv2认证功能
由于 RIP 没有邻居的概念,所以自己并不知道发出去的路由更新是不是有路由器收到,同样也不知道会被什么样的路由器收到,因为 RIP 的路由更新是明文的,网络中无论谁收到,都可以读取里面的信息,这就难免会有不怀好意者窃听 RIP 的路由信息。为了防止路由信息被非法窃取,RIP ver 2 可以相互认证,只有能够提供密码的路由器,才能够获得路由更新。而 RIP ver 1 是不支持认证的。RIP ver 2 可以支持明文与 MD5 认证。

路由器之间,当一方开启认证之后,另一方也同样需要开启认证,并且密码一致,才能读取路由信息。认证是基于接口配置的,密码使用 key chain 来定义,key chain中可以定义多个密码,每个密码都有一个序号,RIP ver 2 在认证时,只要双方最前面的一组密码相同,认证即可通过,双方密码序号不一定需要相同,key chain 名字也不需要相同,但在某些低版本 IOS 中,会要求双方的密码序号必须相同,才能认证成功,所以建议大家配置认证时,双方都配置相同的序号和密码。

5.RIP协议优缺点:

优点:
对于小型网络,RIP就所占带宽而言开销小,易于配置、管理和实现;
“好”消息传的快;

缺点:
(1)网络规模被限制,最大跳数为15跳
(2)使用“跳数”作为度量值,以跳数的多少比较路由路径的优劣。 RIP 选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。
(3)收敛速度慢。当网络中出现拓扑变化时,需要较长的时间才会收敛。可能会导致网络中路由表信息不一致。
(4)路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。

6.RIP协议路由环路发生原理及处理方式
6.1 路由环路形成
请添加图片描述
如上图所示,当正常运行的网1突然不可达时,R1路由器将到网1的路由条目删除,但是还没来的及向 R2路由器进行更新。此时R2路由器更新计时器先超时,R2将自己的路由信息发送给R1,R1就从R2处又学习到了网1的路由信息,并且将距离设置成2。此时,R1 的路由表已经出现了错误,但路由器并不知道。

当R1的更新计时器超时后,R1又向R2发送自己的路由信息,R2用从R1路由表内学习到的路由信息将自己的到网1的路由信息进行覆盖,此时R2到网1的路由信息中,距离字段被改为3。

以此类推,在不断的路由更新中,到网1的距离会逐渐增加直至无穷大,同时R1与R2之间在到网1的路由信息上形成了路由环路。如果没有一定的措施去解决 的话,路由器将永远无法发现这个错误。

6.2路由环路的危害
路由环路会对网络造成严重影响,导致网络性能降低,甚至使网络瘫痪。
路由环路可能造成以下后果:
①环路内的路由器占用链路带宽来反复收发流量。
②路由器的 CPU 因不断循环数据包而不堪重负。
③路由器的 CPU 承担了无用的数据包转发工作,从而影响到网络收敛。
④路由更新可能会丢失或无法得到及时处理。这些状况可能会导致更多的路由环路,使情况进一步恶化。
⑤数据包可能丢失在“黑洞”中。

6.3路由环路解决方法
距离矢量路由环路的解决方法有如下五种:
1)最大跳计数(maximum metric),RIP允许跳计数最大可以达到15,任何需要经过16跳才能到达的网络都被认为是不可达的。解决了环路时跳数会增加到无限大的问题
2)水平分隔(split horizon),限制路由器不能按照接收信息的方向去将接收到的信息再发回去。
例:路由器从f1/0口收到去往Net1的路由信息,在发送更新时,不会将关于Net1的路由信息再从f1/0口发出去。
3)路由中毒(路由毒化)或毒性反转。路由毒化用于在发往其它路由器的路由更新中将路由标记为不可达。标记“不可达”的方法是将度量设置为最大值。对于 RIP,毒化路由的度量为 16。
毒性反转:R3发现10.4.0.0不可达,立刻向外发送毒化路由,告知R2该网段不可达。R2在收到毒化路由后,会根据毒性反转,立刻向R3发送一条毒化路由。确保 R3 不会轻易受到有关网络 10.4.0.0 的错误更新的影响。
请添加图片描述
4)抑制计时器
抑制计时器可用来防止定期更新消息错误地恢复某条可能已经发生故障的路由。抑制计时器指示路由器将那些可能会影响路由的更改保持一段特定的时间。如果确定某条路由为 down(不可用)或 possibly down(可能不可用),则在规定的时间段内,任何有关该路由的信息都将被忽略。这表示路由器将在一段足够长的时间内将路由标记为 unreachable(不可达),以便路由更新能够传递带有最新信息的路由表。
5)触发更新:路由器周期性发送更新,RIP是默认每隔30秒。 触发更新就是当检测到网络拓扑发生变动时,路由器会立即发送一个更新信息给邻居路由器,而不用等待更新计时器,并依次产生触发更新通知它们的邻居路由器,此过程就叫触发更新。

7.RIP 的配置
以R1配置为例:
router rip
version 2
no auto-summary
network 192.168.20.0
network 192.168.1.0
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

二、OSPF协议

1.OSPF概述
路由协议 OSPF 全称为 Open Shortest Path First,也就开放的最短路径优先协议,因为 OSPF 是由 IETF 开发的,它的使用不受任何厂商限制,所有人都可以使用,所以称为开放的,而最短路径优先(SPF)只OSPF的核心思想,其使用的算法是Dijkstra算法,最短路径优先并没有太多特殊的含义,并没有任何一个路由协议是最长路径优先的,所有协议,都会选最短的。

距离矢量路由协议的根本特征就是自己的路由表是完全从其它路由器学来的,并且将收到的路由条目一丝不变地放进自己的路由表,运行距离矢量路由协议的路由器之间交换的是路由表,距离矢量路由协议是没有大脑的,路由表从来不会自己计算,总是把别人的路由表拿来就用;而 OSPF 完全抛弃了这种不可靠的算法,OSPF是典型的链路状态路由协议,路由器之间交换的并不是路由表,而是链路状态,OSPF通过获得网络中所有的链路状态信息,从而计算出到达每个目标精确的网络路径。

OSPF 工作在单个 AS,是个绝对的内部网关路由协议(Interior Gateway Protocol, 即 IGP)。

OSPF 对网络没有跳数限制,支持 CIDR和VLSM,没有自动汇总功能,但可以手工在任意比特位汇总,并且手工汇总没有任何条件限制,可以汇总到任意掩码长度。

OSPF 并不会周期性更新路由表,而采用增量更新,即只在路由有变化时,才会发送更新,并且只发送有变化的路由信息;事实上,OSPF 是间接设置了周期性更新路由的规则,因为所有路由都是有刷新时间的,当达到刷新时间阀值时,该路由就会产生一次更新,默认时间为 1800 秒,即 30 分钟,所以 OSPF 路由的定期更新周期默认为 30 分钟。

OSPF 所有路由的管理距离(Ddministrative Distance)为 110,OSPF 只支持等价负载均衡。

OSPF 支持认证,并且支持明文和 MD5 认证;OSPF 不可以通过 Offset list 来改变路由的度量值( metric)。

2.OSPF协议相关术语

Router-ID:
唯一标识一个路由器
OSPF 路由器之间相互通告链路状态,如果路由器之间分不清谁是谁,没有办法确定各自的身份,那么通告的链路状态就是毫无意义的,所以必须给每一个 OSPF 路由器定义一个身份。这就是 Router-ID,并且 Router-ID 在网络中绝对不可以有重名,否则路由器收到的链路状态,就无法确定发起者的身份,也就无法通过链路状态信息确定网络位置,OSPF 路由器发出的链路状态都会写上自己的 Router-ID,可以理解为该链路状态的签名,不同路由器产生的链路状态,签名绝不会相同。
每一台 OSPF 路由器只有一个 Router-ID,Router-ID 使用 IP 地址的形式来表示,确定 Router-ID 的方法为:
★1 .手工指定 Router-ID。
★2 .路由器上活动 Loopback 接口中 IP 地址最大的,也就是数字最大的,如 C 类
地址优先于 B 类地址,一个非活动的接口的 IP 地址是不能被选为 Router-ID 的。
★3 .如果没有活动的 Loopback 接口,则选择活动物理接口 IP 地址最大的。

COST:
OSPF 使用接口的带宽来计算 度量值。计算方法:cost=100Mbit/接口带宽
如果路由器要经过两个接口才能到达目标网络,那么很显然,两个接口的 Cost值要累加起来,才算是到达目标网络的 Metric 值,所以 OSPF 路由器计算到达目标网络的 Metric 值,必须将沿途中所有接口的 Cost 值累加起来,在累加时,只计算出接口,不计算进接口。
OSPF 会自动计算接口上的 Cost 值,但也可以通过手工指定该接口的 Cost 值,手工指定的优先于自动计算的值。OSPF 计算的 Cost,同样是和接口带宽成反比,带宽越高,Cost 值越小。到达目标相同 Cost 值的路径,可以执行负载均衡,最多 6 条链路同时执行负载均衡。

链路状态(Link-State):
链路状态(LSA)就是 OSPF 接口上的描述信息,例如接口上的 IP 地址,子网掩码,网络类型,Cost 值等等,OSPF 路由器之间交换的并不是路由表,而是链路状态(LSA),OSPF 通过获得网络中所有的链路状态信息,从而计算出到达每个目标精确的网络路径。OSPF 路由器会将自己所有的链路状态毫不保留地全部发给邻居,邻居将收到的链路状态全部放入链路状态数据库(Link-State Database),邻居再发给自己的所有邻居,并且在传递过程种,绝对不会有任何更改。通过这样的过程,最终,网络中所有的 OSPF 路由器都拥有网络中所有的链路状态,并且所有路由器的链路状态应该能描绘出相同的网络拓朴。
与距离矢量路由不同,距离矢量路由中交换的是完整的路由表,这样如果有人恶意攻击的话,就能够知道整个网络拓扑结构。而链路状态路由则交换链路的状态,用户无法通过这个清晰的得知整个链路拓扑。

邻居(Neighbor):
在同一网络中都有接口的两台路由器,通过Hello包建立和维护邻居关系
OSPF 邻居靠发送 Hello 包来建立和维护,Hello 包会在启动了 OSPF 的接口上周期性发送,在不同的网络中,发送 Hello 包的间隔也会不同,当超过 4 倍的 Hello 时间,也就是 Dead 时间过后还没有收到邻居的 Hello 包,邻居关系将被断开。
两台 OSPF 路由器必须满足 4 个条件,才能形成 OSPF 邻居,4 个必备条件如下:
(1)Area-id(区域号码):即路由器之间必须配置在相同的 OSPF 区域,否则无法形成邻居。
(2)Hello 时间与 Dead 时间:即路由器之间的 Hello 时间和 Dead 时间必须一致,否则无法形成邻居。
(3)Authentication(认证):路由器之间必须配置相同的认证密码,如果密码不同,则无法形成邻居。
(4)Stub Area Flag(末节标签):路由器之间的末节标签必须一致,即处在相同的末节区域内,否则无法形成邻居

邻接:

邻接是一种特殊的邻居。他不仅可以通过hello包进行通信,还可以互相之间发送LSA。

OSPF 只有邻接关系之间才会交换 LSA,路由器会将链路状态数据库中所有的内容毫不保留地发给所有邻接,要想在 OSPF 路由器之间交换 LSA,必须先形成 OSPF 邻接关系。

DR/BDR
通过在多路访问网段中选择出一个核心路由器称为 DR(Designated Router),网段中所有的 OSPF 路由器都和 DR 互换 LSA。DR 就会拥有所有的 LSA,并且将所有的 LSA 转发给每一台路由器。

如果 DR 失效后,那么就会造成 LSA 的丢失与不完整,所以在多路访问网络中除了选举出 DR 之外,还会选举出一台路由器作为 DR 的备份,称为 BDR(Backup Designated Router),BDR 在 DR 不可用时,代替 DR 的工作

既不是 DR,也不是 BDR 的路由器称为Drother,Dother负责 和DR互换 LSA ,同时还会和 BDR互换 LSA。
注意:Drother之间不能互换数据,这是为了防止出现环路
请添加图片描述
DR/BDR选举规则:
DR 与 BDR 的选举是在一个二层网段内选举的,即在多个路由器互连的接口范围内,与 OSPF 区域没有任何关系,一个区域可能有多个多路访问网段,那么就会存在多个 DR 和 BDR,但一个多路访问网段,只能有一个 DR和 BDR;选举 DR 和 BDR 的规则为:
1、比较接口优先级:
选举优先级最高的成为 DR,优先级数字越大,表示优先级越高,被选为 DR 的几率就越大,次优先级的为 BDR,优先级范围是 0-255,默认为 1,优先级为 0 表示没有资格选举 DR 和 BDR。
2、Route-Id 大小:
如果在优先级都相同的情况下,Route-Id 最大的成为 DR,其次是 BDR,数字越大,被选为 DR 的几率就越大。
DR和Dorther处理数据报的区别:所有 OSPF 路由器,包括 DR 与 BDR,都能够接收和传递目标地址为224.0.0.5 的数据包。只有 DR 和 BDR 才能接收和传递目标地址为 224.0.0.6 的数据包。

网络类型
对于不同的网络类型,将会影响到 OSPF 的 Hello 时间与 Dead 时间,关系到 DR与 BDR 的选举与否,影响到 OSPF 邻居是自动建立还是手工建立,总结如下表:
请添加图片描述
OSPF 邻居的成功建立,并不要求双方网络类型一致,但双方网络类型不一致,将可能导致链路状态数据库中的条目无法进入路由表。

3.OSPF原理

OSPF的计算
OSPF 协议路由的计算过程可简单描述如下:
①每台 OSPF 路由器根据自己周围的网络拓扑结构生成 LSA(Link StateAdvertisement,链路状态通告),并通过更新报文将 LSA 发送给网络中的 其它 OSPF 路由器。
②每台 OSPF 路由器都会收集其它路由器通告的 LSA,所有的 LSA 放在一起 便组成了 LSDB(Link State Database,链路状态数据库)。LSA 是对路由 器周围网络拓扑结构的描述,LSDB 则是对整个自治系统的网络拓扑结构的 描述。
③OSPF 路由器将 LSDB 转换成一张带权的有向图,这张图便是对整个网络拓 扑结构的真实反映。各个路由器得到的有向图是完全相同的。
④每台路由器根据有向图,使用 SPF 算法计算出一棵以自己为根的最短路径树,这棵树给出了到自治系统中各节点的路由。

4.工作过程
1.邻居发现
请添加图片描述
2、路由通告
请添加图片描述
请添加图片描述
(1)Exstart:
因为在 OSPF 邻居之间交换完整的 LSA 之前,会先发送 Database Description Packets (DBD),Link-state Request (LSR)等数据包,邻居之间是谁先发,谁后发,需要确定顺序,在 Exstart状态,就是确定邻居之间的主从关系(Master—Slave 关系),Router-ID 数字大的为主路由器,另一端为从路由器,由主路由器先向从路由器发送信息。在选举 DR与 BDR 的网络环境中,并不一定 DR 就是主路由器,BDR 就是从路由器,因为 DR和 BDR 可以通过调整接口优先级来控制,所以 DR 也许是因为优先级比 BDR 高,而Router-ID 并不比 BDR 高。
注:在任何网络环境下,OSPF 在交换 LSA 之前,都需要确定主从关系。

(2)Exchange:
就是交换DBD(Database Description Packets )的过程,DBD 只是 LSA 的简单描述,只包含 LSA 的一些头部信息,收到 DBD 的路由器会和自己的链路状态数据库作对比,确定需要哪些 LSA 的完整信息,就会发送 LSR 请求给邻居。

DBD其实就相当于是完整链路状态的一个目录,告诉从对方路由器,我的链路状态数据库中有哪些链路,但是不会告知具体的链路状态信息。只有当接收方从DBD中挑选出自己需要的链路状态并向发送方发送一个请求时,发送方才会将具体的链路状态信息发送出去。

(3)Loading:
邻居根据收到的 LSR(Link-State Request),向对方回复 Link-state update(LSU)。在这个状态中,双方路由器开始交换各自所需要的具体的链路状态信息。

(4)Full
等到 OSPF 都收到了邻居回复的所有 Link-state update(LSU),那么此时的数据库状态就变成了收敛状态,此状态就是 Full 状态,但此时只是数据库已经同步,但路由表却还在计算当中。

链路状态数据库中存储的是各种链路状态,但是获取链路状态并不是代表获取了路由表。这就是与距离矢量型路由的区别之处,距离矢量路由协议交换完数据后,直接形成了最终的路由表,而链路状态路由协议在获取链路状态后还要根据这些状态计算出路由表。

3.路由计算
请添加图片描述
4.路由表的生成与选择
请添加图片描述
从路由器B到终端E,从拓扑图上来看有两条路径可达。但是每条链路有自己的开销值,这个值一般是根据链路是带宽来计算的,反映的是真实的链路传输能力,因此开销值越小,链路传输能力越强,传输速率越快,所以,在最终的路由表形成时,会选择开销值最小的路径作为最终的路由路径。

5.OSPF区域

1.区域划分

随着网络规模日益扩大,当一个大型网络中的路由器都运行 OSPF 路由协议时, 路由器数量的增多会导致LSDB 非常庞大,占用大量的存储空间,并使得运行 SPF 算法的复杂度增加,导致CPU 负担很重。

在网络规模增大之后,拓扑结构发生变化的概率也增大,网络会经常处于“振荡” 之中,造成网络中会有大量的OSPF 协议报文在传递,降低了网络的带宽利用率。更为严重的是,每一次变化都会导致网络中所有的路由器重新进行路由计算。

OSPF 协议通过将自治系统划分成不同的区域(Area)来解决上述问题。区域是从逻辑上将路由器划分为不同的组,每个组用区域号(Area ID)来标识。区域的边界是路由器,而不是链路。一个网段(链路)只能属于一个区域,或者说每个运行OSPF 的接口必须指明属于哪一个区域。如图 1所示
请添加图片描述
划分区域后,可以在区域边界路由器上进行路由聚合,以减少通告到其他区域的LSA 数量,还可以将网络拓扑变化带来的影响最小化。

2.路由器的类型

OSPF 路由器根据在 AS 中的不同位置,可以分为以下四类:
(1) 区域内路由器IR( Internal Router )
该类路由器的所有接口都属于同一个 OSPF 区域。
(2) 区域边界路由器 ABR ( Area Border Router )
该类路由器可以同时属于两个以上的区域,但其中一个必须是骨干区域(骨干区域的介绍请参见下一小节)。 ABR 用来连接骨干区域和非骨干区域,它与骨干区域 之间既可以是物理连接,也可以是逻辑上的连接
(3) 骨干路由器( Backbone Router )
该类路由器至少有一个接口属于骨干区域。因此,所有的 ABR 和位于 Area0 的内部路由器都是骨干路由器。
(4) 自治系统边界路由器 ASBR
与其他 AS 交换路由信息的路由器称为 ASBR 。 ASBR 并不一定位于 AS 的边界,它有可能是区域内路由器,也有可能是 ABR 。只要一台 OSPF 路由器引入了外部 路由的信息,它就成为 ASBR 。
请添加图片描述3. 骨干区域与虚连接

OSPF 划分区域之后,并非所有的区域都是平等的关系。其中有一个区域是与众不同的,它的区域号(Area ID)是 0,通常被称为骨干区域。骨干区域负责区域之间的路由,非骨干区域之间的路由信息必须通过骨干区域来转发。对此,OSPF 有两个规定:

①所有非骨干区域必须与骨干区域保持连通;
②骨干区域自身也必须保持连通。

但在实际应用中,可能会因为各方面条件的限制,无法满足这个要求。这时可以通 过配置OSPF 虚连接(Virtual Link)予以解决。虚连接是指在两台 ABR 之间通过一个非骨干区域而建立的一条逻辑上的连接通道。它的两端必须是 ABR,而且必须在两端同时配置方可生效。为虚连接两端提供一条非骨干区域内部路由的区域称为传输区(Transit Area)

4.外部路由
OSPF 同其它路由协议一样,可以将其它外部协议的路由信息或其它 OSPF 进程的路由信息重分布进自己的域内,这样的路由在 OSPF 域内就是 OSPF 外部路由(External Route)。外部路由分为两类:
(1)O E2 :类型为 O E2 的外部路由,在该路由进入 OSPF 之前的 Metric 值为多少,进入 OSPF域后就不变。
(2)O E1:O E1 的路由在 OSPF 路由器上的 Metric值包含该路由进入 OSPF 域之前的 Metric 值,再加上在 OSPF 域内传递的 Metric 值。

5.OSPF末节区域
路由增加,就意味着 LSA 的增加,有时,在一个末梢网络中,许多路由信息是多余的,并不需要通告进来,因为一个 OSPF 区域内的所有路由器都能够通过该区域的 ABR 去往其它 OSPF 区域或者 OSPF 以外的外部网络,一个区域的路由器只要知道去往 ABR,就能去往区域外的网络,因此可以过滤掉区域外的路由进入,这样的区域称为 OSPF 末节区域(Stub Area);一个末节区域的所有路由器虽然可以从 ABR 去往区域外的网络,但路由器上还是得有指向 ABR 的路由,所以末节区域的路由器只需要有默认路由,而不需要明细路由,即可与区域外的网络通信,根据末节区域过滤掉区域外的不同路由,可将末节区域分为如下四类:
Stub Area(末节区域)
Totally Stub Area(完全末节区域)
Not-so-Stubby Area(NSSA)
Totally Not-so-Stubby Area(Totally NSSA)
① Stub Area(末节区域)
在 Stub Area(末节区域)下,ABR 将过滤掉所有外部路由进入末节区域,同时,末节区域内的路由器也不可以将外部路由重分布进 OSPF 进程,即末节区域内的路由器不可以成为 ASBR,但其它 OSPF 区域的路由(Inter-Area Route)可以进入末节区域,由于没有去往外部网络的路由,所以 ABR 会自动向末节区域内发送一条指向自己的默认路由
②Totally Stub Area(完全末节区域)
在 Totally Stub Area(完全末节区域)下,ABR 将过滤掉所有外部路由和其它 OSPF区域的路由(Inter-Area Route)进入完全末节区域,同时,末节区域内的路由器也不可以将外部路由重分布进 OSPF 进程,即完全末节区域内的路由器不可以成为ASBR,由于没有去往外部网络的路由,所以 ABR 会自动向完全末节区域内发送一条指向自己的默认路由
③Not-so-Stubby Area(NSSA)
在 Not-so-Stubby Area(NSSA)下,ABR 将 过滤掉所有外部路由进入末节区域,同时也允许其它 OSPF 区域的路由(Inter-Area Route)进入 NSSA 区域,并且路由器还 可以将外部路由重分布进 OSPF 进程,即 NSSA 区域内的路由器可以成为 ASBR,由于自身可以将外部网络的路由重分布进 OSPF 进程,所以 ABR 不会自动向 NSSA 区域内发送一条指向自己的默认路由,但可以手工向 NSSA 域内发送默认路由,并且只可在 ABR 上发送默认路由
④ Totally Not-so-Stubby Area(Totally NSSA)
在 Totally Not-so-Stubby Area(Totally NSSA)下,ABR 将过滤掉所有外部路由和其它 OSPF 区域的路由(Inter-Area Route)进入 Totally NSSA 区域,但路由器可以将外部路由重分布进 OSPF 进程,即 Totally NSSA 区域内的路由器可以成为 ASBR,由于没有去往其它 OSPF 区域的路由,所以 ABR 会自动向 Totally NSSA 内发送一条指向自己的默认路由

注:
★在末节区域下,ABR 自动发出的默认路由,Metric 值默认为 1,可通过命令 area area-id default-cost cost 修改,默认路由除了默认的 Cost 值以外,还会累加真实接口的 Cost 值。
★骨干区域不能配置为任何末节区域。
★当将某个区域配置为末节区域后,则区域中所有路由器都必须配置为末节区域,因为配置为末节区域的路由器上所有接口发出的 Hello 包中都会有末节标签,所有如果对方没有末节标签,则不能成为邻居。

总结:
请添加图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-16 11:30:21  更:2022-05-16 11:30:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 16:47:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码