策略路由与路由策略

news2024/9/27 6:44:40

1.策略路由与路由策略

1.1 策略路由(Policy Routing)

1.1.1 定义

        策略路由是一种根据特定策略或条件(如源地址、目的地址、协议类型、接口、QoS等)来决定网络包转发路径的技术,而不是单纯依赖传统的最短路径或最优路径算法。

1.1.2 应用

  1. 流量工程:根据流量类型或应用需求,优化网络资源利用。
  2. 负载均衡:将流量分布到多个路径上,以避免单一路径过载。
  3. 安全控制:根据源或目的地址,对特定流量进行隔离或强制经过安全设备。
  4. 服务质量(QoS):根据应用需求,确保重要流量优先转发。

1.1.3 例子

  1. 企业网络中,将所有来自某部门的流量强制通过特定的防火墙或监控设备。
  2. 根据服务质量(QoS)要求,将VoIP流量优先通过低延迟路径。

1.2路由策略(Routing Policy)

1.2.1 定义

        路由策略是指在路由器或网络设备中,使用策略来控制路由信息的进出和选择过程。它主要应用于动态路由协议(如BGP、OSPF)中,通过设置策略来过滤、修改或优先选择路由。

1.2.2 应用

  1. 路由过滤:根据前缀、路径属性等条件,决定哪些路由信息可以被接受或发布。
  2. 路由优先级设置:根据策略,为不同的路由设置优先级,决定选择哪条路由。
  3. 前缀控制:控制具体网络前缀的传播,避免不必要的路由信息在网络中扩散。
  4. 路由重分发:在不同路由协议之间进行路由信息的交换和重分发。

1.2.2 例子

  1. 在BGP中,根据自治系统(AS)路径长度或特定前缀,过滤掉不需要的路由信息。
  2. 为了避免环路或控制流量路径,修改BGP属性(如AS-PATH、MED)。

1.3 区别

1.3.1应用层次

策略路由应用在数据平面(Data Plane),直接影响数据包的转发路径。

路由策略应用在控制平面(Control Plane),影响路由选择和路由信息的传播。

1.3.2 控制对象

策略路由直接控制数据包的转发路径。

路由策略控制路由信息的选择和传播,间接影响数据包的转发路径。

1.3.3使用场景

策略路由:控制数据的走向(比如让教学楼走联通,也采用acl)

策略路由常用于特定流量管理、负载均衡和安全控制。

路由策略:控制路由表(学习到路由表的情况,可以规定学到那条,用acl)

路由策略常用于复杂的路由协议配置、路由过滤和路径控制。

总结来说,策略路由和路由策略各有侧重,前者直接作用于数据包的转发路径,而后者则通过控制路由信息间接影响转发路径。在实际网络设计和管理中,合理结合两者可以实现灵活和高效的流量控制和路由选择。

2.路由策略实验

2.1 基本信息

2.1.1 实验top

2.1.2 基本要求

        教学楼终端PC1通过电信出口访问互联网,宿舍楼终端PC2通过联通出口访问互联网, 任何一个出口出现故障,都可以自动切换到另一个出口。

2.2 实验配置

2.2.1 基础配置

router

system-view

sysname router

undo info-center enable

int g0/0/0

ip add 192.168.10.254 24

int g0/0/1

ip add 192.168.20.254 24

int g0/0/2

ip add 12.1.1.1 30

int g4/0/0

ip add 13.1.1.1 30

#display ip interface brief

DX

system-view

sysname DX

undo info-center enable

int g0/0/0

ip add 12.1.1.2 30

int g0/0/1

ip add 100.1.1.1 30

LT

system-view

sysname LT

undo info-center enable

int g0/0/0

ip add 13.1.1.2 30

int g0/0/1

ip add 200.1.1.1 30

HLW

system-view

sysname HLW

undo info-center enable

int g0/0/0

ip address 100.1.1.2 30

int g0/0/1

ip address 200.1.1.2 30

q

interface LoopBack 0

ip address 22.22.22.22 32

2.2.2 osfp配置

HLW

ospf 1

area 0

#简便方法,全部为0宣告网段

network 0.0.0.0 0.0.0.0

DX

ospf 1

area 0

network 0.0.0.0 0.0.0.0

LT

ospf 1

area 0

network 0.0.0.0 0.0.0.0

查看OSPF

display ospf peer brief

display ip routing-table

3.2.3 配置nat easy

router

#配置感兴趣流,基于源地址

acl 2000

rule 10 permit source 192.168.10.0 0.0.0.255

rule 20 permit source 192.168.20.0 0.0.0.255

#应用规则

int g0/0/2

nat outbound 2000

int g4/0/0

nat outbound 2000

#配置出口路由

#等价默认路由

ip route-static 0.0.0.0 0 12.1.1.2

ip route-static 0.0.0.0 0 13.1.1.2

#PC1,已经通了

ping 22.22.22.22

tracert 22.22.22.22

(上面配的等价路由,但是两条路由都走的电信,因为没有配置负载均衡导致的)

#router配置负载均衡,基于源IP(不用管

load-balance src-ip

(还是一样的结果,因为AR不能基于单个包做负载均衡,对CPU等消耗大)

#我们想走电信,调静态路由的优先级(浮动路由)

router

ip route-static 0.0.0.0 0 13.1.1.2 preference 100

3.2.4 BFD配置

这个时候再加交换机,在router和DX中间在加一个二层交换机,网络则不通(使用BFD解决)

(一边配置就行,但ensp不支持,所以要配两边)

router

#开启BFD

bfd

#配置bfd,//配置BFD名称1,对端IP地址是12.1.1.2,本地源IP是12,1.1,1(DX 配置正好相反)

bfd 1 bind peer-ip 12.1.1.2 source-ip 12.1.1.1 auto

#运行生效,提交配置

commit

DX

bfd

bfd 1 bind peer-ip 12.1.1.1 source-ip 12.1.1.2 auto

commit

3.2.5 测试BFD

router

int g0/0/0

#关闭

shutdown

#开启(实验完成后可以开启)

undo shutdown

#查看

display bfd session all

#router,跟踪BFD,不通直接删掉该路由,1是上面的名称

ip route-static 0.0.0.0 0 12.1.1.2 track bfd-session 1

#配置静态路由且跟踪1,也就是当12.1.1.1与12.1.1.2通信失败时,配置的这条静态路由会从路由表中删表

3.路由策略实验

3.1 基本信息

3.1.1 实验top

3.1.2 基本要求

  1.    1.让R3可以学到10.1.2.0/24和10.1.1.3.0/24路由,不能学到10.1.1.0/24。
  2.    2.让R2向R1通告R3的三个环回接口,cost设置为10。

3.2 实验配置

3.2.1基础配置

AR1

system-view

sysname AR1

undo info-center enable

int g0/0/1

ip add 12.1.1.1 30

int lo0

ip add 10.1.1.1 24

int lo1

ip add 10.1.2.1 24

int lo2

ip add 10.1.3.1 24

rip

version 2

network 12.0.0.0

network 10.0.0.0

AR2

system-view

sysname AR2

undo info-center enable

int g0/0/1

ip add 12.1.1.2 30

int g0/0/0

ip add 23.1.1.1 30

rip

version 2

network 12.0.0.0

ospf

area 0

network 23.1.1.0 0.0.0.3

AR3

system-view

sysname AR3

undo info-center enable

int g0/0/0

ip add 23.1.1.2 30

int lo0

ip add 30.1.1.1 24

int lo1

ip add 30.1.2.1 24

int lo2

ip add 30.1.3.1 24

ospf 1

area 0

network 23.1.1.0 0.0.0.3

network 30.1.1.0 0.0.0.255

network 30.1.2.0 0.0.0.255

network 30.1.3.0 0.0.0.255

q

q

ip route-static 12.1.1.0 255.255.255.252 23.1.1.1

#全部宣告:network 0.0.0.0 0.0.0.0

3.2.2 设置策略

AR2

acl 2000

rule 10 permit source 10.1.2.0 0.0.0.255

rule 20 permit source 10.1.3.0 0.0.0.255

q

acl 2001

rule 10 permit source 30.1.1.0 0.0.0.255

rule 20 permit source 30.1.2.0 0.0.0.255

q

route-policy from1 permit node 10

if-match acl 2000

q

route-policy from3 permit node 30

if-match acl 2001

q

#引入路由

ospf

import-route rip 1 route-policy from1

rip

import-route ospf 1 route-policy from3

3.3 实验结果

3.3.1 查看路由表

发现没有10.1.1.0网段,成功

3.3.2 ping查看

AR1

AR3

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2077311.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux-kubesphere(K8S)小白单机版搭建部署

目录 一、虚拟机环境设置 二、Kubesphere安装 1、安装工具 1)Socat、conntrack、ebtables、ipset 2)Docker 2、下载KubeKey 3、开始安装 参考官网:https://www.kubesphere.io/zh/docs/v3.4/quick-start/all-in-one-on-linux/ 一、虚拟机…

无监督3D场景理解,LLM 在 3D 场景理解中的应用与探索 !

构建能够理解和推理3D场景的模型很难,原因在于缺乏3D监督训练的数据来源和大规模训练策略。 在这项工作中,作者问到:在没有3D预训练的情况下,预训练语言模型中的知识如何被利用来理解和推理3D场景? 本工作的目标是确定…

HTML5有格调的个人介绍网站源码

文章目录 1.设计来源1.1 主界面1.2 个人信息界面1.3 项目统计界面1.4 我的相册界面1.5 朋友评价界面1.6 保持联系界面 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板,程序开发,在线开发,在线沟通 作者:xcLeigh 文章地址&a…

JAVA后端框架--【Mybatis】

框架 框架就是对技术的封装,将基础的技术进行封装,让程序员快速使用,提高开发效率 java后端框架 mybatis 对jdbc进行封装 背景介绍 mybatis是apache下面的一个开源项目,名为ibatis,2010年开发团队转移到谷歌旗下…

unity3d拼图__附带资源

要达到吸附效果则需要每个拼图上挂载碰撞体 达到整张图片的替换效果需要选中所有拼图部件把材质球拖上去 、 制作材料球 脚本挂载到随便一个空物体上 using System.Collections; using System.Collections.Generic; using UnityEngine;public class PinTu : MonoBehaviour …

Qt编写贪吃蛇小游戏完整项目

文章目录 前言一、Qt环境准备二、编写思路三、编写代码1、开始游戏界面代码1.1、绘制界面1.2、界面基本配置 2、选择难度界面代码3、游戏房间界面制作3.1、界面基础配置3.2、提前配置类中的成员变量3.2.1、QRectF 3.3、检测游戏是否结束的方法3.4、蛇移动的实现3.4.1、蛇向上移…

智慧农业——生成式人工智能如何改变农业

在数字化转型时代,农业不再仅仅与土壤、水和阳光有关。随着生成式人工智能的出现,农业正变得更加智能、高效,并且越来越以数据为主导。从以前所未有的准确度预测作物产量到开发抗病植物品种,生成式人工智能使农民能够做出精确的决…

c语言个人笔记

linux嵌入式C语言 课程链接: [史上最强最细腻的linux嵌入式C语言学习教程李慧芹老师] 0. gcc与vim的使用 gcc 指令 -Wall:显示所有警告 gcc默认的警告包括真正的错误:error和 告警warning 执行过程 c源代码.c -> 预处理(E) -> 编译(S) -> 汇编©.o…

Clickhouse集群化(五)clickhouse语法学习

1. 基础 1.1. 建表建库 CREATE DATABASE IF NOT EXISTS helloworld use default; CREATE TABLE IF NOT EXISTS system_cpu_info (uuid String, -- 主机的唯一标识符source String, -- 数据来源标识resource_pool Strin…

011_IO体系

Java的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出源抽象表述为"流"。 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称…

代码随想录 刷题记录-18 动态规划(1)基本理论及习题

一、基本理论 什么是动态规划 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。 所以动态规划中每一个状态一定是由上一个状态推导出来的,这一点就区分…

码云 云片滑块 分析

声明: 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 有相关问题请第一时间头像私信联系我…

小乌龟运动控制-3两只小乌龟

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…

【自动驾驶】决策规划算法 | 数学基础(一)五次多项式详解

写在前面: 🌟 欢迎光临 清流君 的博客小天地,这里是我分享技术与心得的温馨角落。📝 个人主页:清流君_CSDN博客,期待与您一同探索 移动机器人 领域的无限可能。 🔍 本文系 清流君 原创之作&…

Mysql系列—3.体系架构

目录 Mysql体系结构 Connectors: 连接池和线程管理: SQL Interface: Parser(查询解析器): Optimizer(优化器): Caches(缓存): …

Clickhouse集群化(四)使用clickhouse-operator部署clickhouse集群

clickhouse operator实际下就是帮助我们自动化的生产一些clickhouse配置文件信息,在目录/etc/clickhouse-server/的config.d conf.d users.d 1.1. 部署clickhouse operateor 下载clickhouse-operator.yaml文件 wget https://raw.githubusercontent.com/Altinity/…

Vue3 前端导出Excel表格 Xlsx格式

介绍 xlsx 是一个用于处理 Excel 文件的流行库。可以你读取、生成和操作 Excel 文件(.xlsx 格式),提供了强大的功能来处理工作表和单元格数据。可以轻松地将 JSON 数据转换为 Excel 表格,也可以从 Excel 文件中读取数据。 安装 …

【Linux篇】网络请求和下载与端口

目录 1. 网络请求和下载 1.1 ping命令 1.2 wget命令 1.3 curl命令 2. 端口 2.1 查看端口占用 使用nmap命令,安装nmap:yum -y install nmap 可以通过netstat命令,查看指定端口的占用情况。 3. 进程管理 3.1 进程 3.2 查看进程 3.3 …

Llama 4B剪枝蒸馏实战

大型语言模型 (LLM) 因其有效性和多功能性,如今已成为自然语言处理和理解领域的主导力量。LLM(例如 Llama 3.1 405B 和 NVIDIA Nemotron-4 340B)在许多具有挑战性的任务中表现出色,包括编码、推理和数学。然而,它们的部…

异步编程之std::future(二): std::future和std::promise原理

目录 1.引言 2.源码分析 2.1.std::promise的源码实现 2.2.std::future的源码实现 2.3.关联状态对象的代码实现 3.整个类图 4.future和promise之间的并发安全和线程同步 5.总结 1.引言 异步编程之std::future(一): 使用-CSDN博客 在std::future(一)中详…