重分布中多路由协议中选择最佳路径

2024-06-18 16:48

本文主要是介绍重分布中多路由协议中选择最佳路径,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、 使用distance命令改变可信路由

 

(1)、管理距离被看作一个可信度测度,管理距离越小,协议的可信度越高。

 

(2)、常用的路由协议管理距离分别是:静态为1,BGP为20,EIGRP为90,OSPF为110,RIP为120,直连为0,未知为255。

 

(3)、命令格式:distance  weight [address mask [access-list-number  |  name]] [ip]

其中,weight变量是实际的管理距离,范围在10-255之间。可选项address 和mask变量指匹配的网络。access-list-number 或name 是指定入站路由更新报文的访问列表编号或者一个标准IP访问列表的名称。可选的IP关键字用于IS-IS路由协议,这使得路由表能够为IS-IS创建IP派生路由。

 

例子:

distance 90 192.168.31.00.0.0.255

192.168.31.0/24网络更新的报文其管理距离为90

distance 120 172.28.0.00.0.255.255

172.28.0.0/16网络更新的报文其管理距离为120

 

 

 

 

2、 使用default-metric命令修改缺省度量值

 

1)、种子度量值:在路由重分布中定义,它是一条从外部重分布进来的路由的初始度量值。

 

(2)、在向RIP区域重分布路由的时候,必须指定度量值,或者通过default-metric命令设置默认种子度量值,因为RIP默认种子度量值为无穷大,只有重分布静态特殊,可以不指定种子度量值。

 

(3)、IGRP、EIGRP的度量值相对复杂,所以在重分布的时候,需要分别指定带宽,延迟,可靠性,负载及MTU参数。

 

(4)命令格式一:default-metric  number

其中,number变量取值范围是0到任意正整数,设定重分布路由的缺省度量值。

 

 

 

 

 

 

 

例子:

router rip

default-metric 4

redistribute ospf 100

 

router ospf 100

default-metric 10

redistribute rip

 

解释:表示路由器上同时运行RIP及OSPF,进行双向重分布。对OSPF路由重分布到RIP中时,给其缺省度量值为4(跳数),而对RIP的路由重分布到OSPF中时,给其缺省度量值为10(代价)。

 

 

(5)、命令格式二:default-metric  bandwidth delay  reliability  loading mtu

IGRP和EIGRP有5种度量值:带宽、延时、可靠性、负载、最大传输单元。

其中:带宽以Kbit/s为单位;延时以10μs为单位,而实际的值则是delay变量值乘以39.1ns的结果;可靠性取值范围是0-255,值越大,路由越可靠,值255表明报文传输具有100%的正确率,值0意味着该路由传输报文是完全不可靠的;负载表明路由上的有效带宽或百分比,取值范围是0-255,值255表示路由上的带宽是饱和的或100%利用;mtu以字节为单位。

 

例子:

router eigrp 100

network 172.16.1.0

redistribute rip

default-metric 1000  50 255  50  1500

 

 

 

 

3、 使用distribute-list命令过滤被重分布的路由

 

(1)      distribute-list分发列表是用于控制路由更新的一个工具,只能过滤路由信息,不能过滤LSA。(一般用于不同路由协议边界之间,或者外部路由注入本协议时用)。

 

(2)、命令格式一:distribute-list  {access-list-number  | nmae}  in  [type number]

其中,access-list-number或name变量指定哪个网络可以被接收或者哪个可以在重分布之前被抑制。可选项type-number变量识别分布列表使用哪个路由器接口,若不使用该可选变量,则对所有接口。

 

 

 

 

 

 

例子:

router eigrp 10

network 172.16.0.0

distribute-list 1 in

 

access-list 1 permit 172.16.0

 

解释:表示在EIGRP路由协议只允许172.16.0.0的网络,而其他路由更新报文不匹配此准则的都将被抑制。

 

(3)、命令格式二:distribute-list  {access-list-number  | name} out [interface-name  |  routing-process  | autonomous-system-number]

 

其中,在OSPF向所有其他的路由协议进行重分布的过程中,需要使用过滤机制控制路由更新报文。可选项routing-process变量可以是bgp,eigrp,igrp,isis,ospf,static,connect,rip中任何一个关键字。

 

例子:

router eigrp 10

network 10.0.0.0

redistribute eigrp 110

distribute-list 1 out eigrp 110

 

router eigrp 110

network 192.168.31.0

network 172.16.0.0

 

access-list 1 permit 192.168.31.0

 

解释:distribute-list out 命令只允许eigrp 110192.168.31.0网络被重分布到编号为10eigrp中。




(4)距离矢量协议和链路状态协议分类思考

a、 距离矢量协议Rip Eigrp

因为距离矢量协议直接传递路由信息,会在运行协议进程接口的in 和out方向控制相应协议路由信息
Distribute-list in在协议接口的in方向控制路由信息,改变本路由器的路由信息(生成路由表之前就改变路由信息),同时,本地路由器在更新路由信息给下一个路由器的时候,实际上更新的内容是受分发列表影响之后的条目。


Distribute-list out在协议接口的out方向控制路由信息,本路由器的路由信息不改变(路由表已生成),发送已改变的路由信息给其它路由器,所以其他路由器会改变。

 

总结:in会影响本路由器的路由表,但不会影响其他路由器,可以通过距离矢量协议影响其他路由器。

out会影响相邻路由器的路由表,但不会影响本路由器,可以通过距离矢量协议影响其他路由器。






例子1:RIP区域中使用distribute-list  in

(a)、不仅影响本路由器,还影响该RIP区域其他路由器。

(b)、分发列表过滤外部路由192.168.4.0

(c)、重分布的过滤不考虑重分布的路由器





R3进行重分布

router ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
exitrouter rip
version 2
network 192.168.2.0
redistribute ospf 1 metric 10 subnets
exit


 

 

R2过滤

 

access-list 11 deny 192.168.4.0 0.0.0.255
access-list 11 permit anyrouter rip
version 2
network 192.168.1.0
network 192.168.2.0
network 2.2.2.0
distribute-list 11 inexit

 

解释:distribute-list 11 in过滤之后R1R2都没有到192.168.4.0的路由。

 

 

 

 

例子2:RIP区域中使用distribute-list   out

(a)、不仅影响本路由器,还影响该RIP区域其他路由器。

(b)、分发列表过滤外部路由192.168.4.0

(c)、重分布的过滤不考虑重分布的路由器





R3进行重分布

router ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
exitrouter rip
version 2
network 192.168.2.0
redistribute ospf 1 metric 10 subnets
exit


 

 

R2过滤

access-list 11 deny 192.168.4.0 0.0.0.255
access-list 11 permit anyrouter rip
version 2
network 192.168.1.0
network 192.168.2.0
network 2.2.2.0
distribute-list 11 outexit


 

解释:distribute-list 11 in过滤之后R1R2都没有到192.168.4.0的路由。

 

 

 

 

b、 链路状态协议OspfIs-Is


因为链路状态协议传递的是LSA(LSU)信息,在每台路由器同步LSA(LSU)后每台路由器根据database数据库信息运行SPF算法再得到路由表信息。在接口in 和out方向不直接传递路由信息.
但5类LSA类似距离矢量协议会受影响所以5类的外部路由会被distribute-list发生改变.LSA5ASBR生成,用来描述到自治系统外部的路由信息,包括某条路由的目的地址、掩码、代价等信息。LSA5的传递范围是AS内除stub外的所有区域。

 

值的注意的是,对于OSPF这样的链路状态路由协议,路由器之间传递的消息不再是路由信息了,而是LSA,而分发列表是无法对LSA进行过滤的。因此,在链路状态协议中部署分发列表,就需要留意了:

 

in方向,分发列表只能在本地收到LSA后,生成路由的那一刹那进行路由的过滤,执行分发列表的路由器自己路由表会被分发列表影响(但是本地LSDB仍然是有LSA的),而且该路由器仍会将LSADB中的LSA发送给邻居,因此本地被过滤的路由,邻居还有。

 

out方向,分发列表只能工作在执行路由重发布动作的那个ASBR上,且只能针对外部引入的路由起作用。因为OSPF执行重发布时,其实这些外部路由是以路由的形式引入进来的,因此分发列表在这个场合下能够正常工作,但是如果不是本地始发的外部路由,或者是内部的OSPF路由,out方向的分发列表均束手无策。 

 

 

思考:只可以控制置入Routing Table的路由条目(该路由条目仍会保存于LSDB内)及重分布时的路由条目。

格式

影响

distribute-list  in

一般路由器影响LSA1-LSA5生成路由,特殊ASBR影响LSA1-LSA3生成路由(LSA5由重分布生成不受in影响,而是受out影响)

distribute-list  out

路由重分布(LSA5生成)





例子1:OSPF区域非ASBR中使用distribute-list  in

(a)、分布列表作用于LSA生成路由的时候,只能影响本路由器的路由,不影响其他路由器的路由。

(b)、分发列表过滤外部路由192.168.1.0

(c)、重分布的过滤不考虑重分布的路由器






R3进行重分布

router ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
redistribute ospf 1 metric 10 subnetsexitrouter rip
version 2
network 192.168.2.0
exit


 

 

R4过滤

access-list 11 deny 192.168.1.0 0.0.0.255
access-list 11 permit anyrouter ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 192.168.4.0 0.0.0.255 area 0
network 4.4.4.0 0.0.0.255 area 0
distribute-list 11 inexit


 

解释:distribute-list 11 in过滤之后R4没有到192.168.1.0的路由,而R5有。

 

 

 

 

 

 

例子2:OSPF区域非ASBR中使用distribute-list  out

(a)、不会影响本路由器的路由,也不会影响其他路由器的路由。

(b)、分发列表过滤外部路由192.168.1.0

(c)、重分布的过滤不考虑重分布的路由器





R3进行重分布

router ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
redistribute ospf 1 metric 10 subnetsexitrouter rip
version 2
network 192.168.2.0
exit


 

 

R4过滤

access-list 11 deny 192.168.1.0 0.0.0.255
access-list 11 permit anyrouter ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 192.168.4.0 0.0.0.255 area 0
network 4.4.4.0 0.0.0.255 area 0
distribute-list 11 outexit


 

解释:distribute-list 11 out过滤之后R4有到192.168.1.0的路由,R5也有。

 

 

 

 

 

 

例子3:OSPF区域ASBR中使用distribute-list  in

(a)、in作用于LSA1-LSA5生成路由表的时候,而重分布生成(LSA5),所以不影响外路由。

(b)、分发列表过滤外部路由192.168.1.0

(c)、重分布的过滤不考虑重分布的路由器





R3进行重分布并进行过滤

access-list 11 deny 192.168.1.0 0.0.0.255
access-list 11 permit anyrouter ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
redistribute ospf 1 metric 10 subnets
distribute-list 11 inexitrouter rip
version 2
network 192.168.2.0
exit


 

 

 

解释:distribute-list 11 in过滤之后R4R5都有到192.168.1.0的路由,即不受影响,in不影响重分布的路由。

 

 

例子4:OSPF区域ASBR中使用distribute-list  out

(a)、out可以在重分布时对外部路由进行过滤,影响LSA5的生成,从而影响其他路由器的外部路由信息。

(b)、分发列表过滤外部路由192.168.1.0

(c)、重分布的过滤不考虑重分布的路由器





R3进行重分布并进行过滤

access-list 11 deny 192.168.1.0 0.0.0.255
access-list 11 permit anyrouter ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
redistribute ospf 1 metric 10 subnets
distribute-list 11 out
exitrouter rip
version 2
network 192.168.2.0
exit


 

 

 

解释:distribute-list 11 out过滤之后R4R5都没有到192.168.1.0的路由,out影响重分布的路由。



这篇关于重分布中多路由协议中选择最佳路径的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1072560

相关文章

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp

Java对接MQTT协议的完整实现示例代码

《Java对接MQTT协议的完整实现示例代码》MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛,:本文主要介绍Ja... 目录前言前置依赖1. MQTT配置类代码解析1.1 MQTT客户端工厂1.2 MQTT消息订阅适配器1.

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

Linux中的自定义协议+序列反序列化用法

《Linux中的自定义协议+序列反序列化用法》文章探讨网络程序在应用层的实现,涉及TCP协议的数据传输机制、结构化数据的序列化与反序列化方法,以及通过JSON和自定义协议构建网络计算器的思路,强调分层... 目录一,再次理解协议二,序列化和反序列化三,实现网络计算器3.1 日志文件3.2Socket.hpp

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、