当前位置: 首页 > news >正文

策略路由实现多ISP接入Internet

组网需求:

企业分别从ISP1和ISP2租用了一条链路

  • PC3用户上网访问Server1时走ISP1
  • PC4用户上网访问Server1时走ISP2

拓扑图 

一、ISP1 运营商 R1路由器
<Huawei>sys
[Huawei]sys R1
[R1]un in en[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip addr 2.2.2.2 24
[R1-GigabitEthernet0/0/0]quit[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]ip addr 10.2.2.2 24
[R1-GigabitEthernet0/0/1]quit# 配置OSPF
[R1]ospf 1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 10.2.2.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 2.2.2.0 0.0.0.255
 二、ISP2 运营商 R2路由器
<Huawei>sys
[Huawei]sys R2
[R2]un in en[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip addr 3.3.3.3 24
[R2-GigabitEthernet0/0/0]quit[R2]
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]ip addr 10.3.3.3 24
[R2-GigabitEthernet0/0/1]quit# 配置OSPF
[R2]ospf 1
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 10.3.3.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 3.3.3.0 0.0.0.255
三、R6路由器
<Huawei>sys
[Huawei]sys R6
[R6]un in en[R6]int g0/0/0
[R6-GigabitEthernet0/0/0]ip addr 10.2.2.1 24
[R6-GigabitEthernet0/0/0]quit[R6]int g0/0/1
[R6-GigabitEthernet0/0/1]ip addr 10.3.3.1 24
[R6-GigabitEthernet0/0/1]quit[R6]int g0/0/2
[R6-GigabitEthernet0/0/2]ip addr 10.1.1.1 24
[R6-GigabitEthernet0/0/2]quit# 配置OSPF
[R6]ospf 1
[R6-ospf-1]area 0
[R6-ospf-1-area-0.0.0.0]network 10.1.1.0 0.0.0.255
[R6-ospf-1-area-0.0.0.0]network 10.2.2.0 0.0.0.255
[R6-ospf-1-area-0.0.0.0]network 10.3.3.0 0.0.0.255
四、防火墙

1、配置接口IP并加入相应的安全区域

<USG6000V1>sys
[USG6000V1]sys FW1
[FW1]un in en
[FW1]dhcp enable# 桥接本地环回网卡,实现登陆WEB管理页面
[FW1]int g0/0/0
[FW1-GigabitEthernet0/0/0]undo ip addr 192.168.0.1 24
[FW1-GigabitEthernet0/0/0]ip addr 192.168.137.10 24
[FW1-GigabitEthernet0/0/0]service-manage all permit
[FW1-GigabitEthernet0/0/0]quit[FW1]int g1/0/0
[FW1-GigabitEthernet1/0/0]ip addr 2.2.2.1 24
[FW1-GigabitEthernet1/0/0]service-manage all permit
[FW1-GigabitEthernet1/0/0]quit[FW1]int g1/0/1
[FW1-GigabitEthernet1/0/1]ip addr 3.3.3.1 24
[FW1-GigabitEthernet1/0/1]service-manage all permit
[FW1-GigabitEthernet1/0/1]quit[FW1]firewall zone untrust
[FW1-zone-untrust]add int g1/0/0
[FW1-zone-untrust]add int g1/0/1
[FW1-zone-untrust]quit[FW1]int g1/0/2
[FW1-GigabitEthernet1/0/2]ip addr 172.16.1.1 24
[FW1-GigabitEthernet1/0/2]service-manage all permit
[FW1-GigabitEthernet1/0/2]dhcp select int
[FW1-GigabitEthernet1/0/2]quit[FW1]int g1/0/3
[FW1-GigabitEthernet1/0/3]ip addr 172.16.2.1 24
[FW1-GigabitEthernet1/0/3]service-manage all permit
[FW1-GigabitEthernet1/0/3]dhcp select int
[FW1-GigabitEthernet1/0/3]quit[FW1]firewall zone trust
[FW1-zone-trust]add int g1/0/2
[FW1-zone-trust]add int g1/0/3
[FW1-zone-trust]quit

2、创建地址列表

[FW1]ip address-set 172.16.1.* type object
[FW1-object-address-set-172.16.1.*]address 0 172.16.1.0 mask 24
[FW1-object-address-set-172.16.1.*]ip address-set 172.16.2.* type object
[FW1-object-address-set-172.16.2.*]address 0 172.16.2.0 mask 24
[FW1-object-address-set-172.16.2.*]quit

3、配置安全策略

[FW1]security-policy
[FW1-policy-security]rule name "untrust to local"
[FW1-policy-security-rule-untrust to local]source-zone untrust
[FW1-policy-security-rule-untrust to local]destination-zone local
[FW1-policy-security-rule-untrust to local]action permit[FW1-policy-security-rule-untrust to local]rule name "local to untrust"
[FW1-policy-security-rule-local to untrust]source-zone local
[FW1-policy-security-rule-local to untrust]destination-zone untrust
[FW1-policy-security-rule-local to untrust]action permit[FW1-policy-security-rule-local to untrust]rule name "trust to untrust"
[FW1-policy-security-rule-trust to untrust]source-zone trust
[FW1-policy-security-rule-trust to untrust]destination-zone untrust
[FW1-policy-security-rule-trust to untrust]source-address address-set 172.16.1.*
[FW1-policy-security-rule-trust to untrust]source-address address-set 172.16.2.*
[FW1-policy-security-rule-trust to untrust]action permit
[FW1-policy-security-rule-trust to untrust]quit

4、配置NAT策略

[FW1-policy-security]nat-policy[FW1-policy-nat]rule name "snat 1"
[FW1-policy-nat-rule-snat 1]source-zone trust
[FW1-policy-nat-rule-snat 1]egress-interface GigabitEthernet1/0/0
[FW1-policy-nat-rule-snat 1]source-address address-set 172.16.1.*
[FW1-policy-nat-rule-snat 1]action source-nat easy-ip[FW1-policy-nat-rule-snat 1]rule name "snat 2"
[FW1-policy-nat-rule-snat 2]source-zone trust
[FW1-policy-nat-rule-snat 2]egress-interface GigabitEthernet1/0/1
[FW1-policy-nat-rule-snat 2]source-address address-set 172.16.2.*
[FW1-policy-nat-rule-snat 2]action source-nat easy-ip
[FW1-policy-nat-rule-snat 2]quit

5、配置策略路由

[FW1]policy-based-route
[FW1-policy-pbr]rule name "no policy route 1" 3
[FW1-policy-pbr-rule-no policy route 1]ingress-interface GigabitEthernet1/0/2
[FW1-policy-pbr-rule-no policy route 1]source-address address-set 172.16.1.*
[FW1-policy-pbr-rule-no policy route 1]destination-address address-set 172.16.2.*
[FW1-policy-pbr-rule-no policy route 1]action no-pbr[FW1-policy-pbr]rule name "no policy route 2" 4
[FW1-policy-pbr-rule-no policy route 2]ingress-interface GigabitEthernet1/0/3
[FW1-policy-pbr-rule-no policy route 2]source-address address-set 172.16.2.*
[FW1-policy-pbr-rule-no policy route 2]destination-address address-set 172.16.1.*
[FW1-policy-pbr-rule-no policy route 2]action no-pbr[FW1-policy-pbr-rule-no policy route 2]rule name "policy route 1" 1
[FW1-policy-pbr-rule-policy route 1]ingress-interface GigabitEthernet1/0/2
[FW1-policy-pbr-rule-policy route 1]source-address address-set 172.16.1.*
[FW1-policy-pbr-rule-policy route 1]action pbr egress-interface GigabitEthernet1/0/0 next-hop 2.2.2.2[FW1-policy-pbr-rule-policy route 1]rule name "policy route 2" 2
[FW1-policy-pbr-rule-policy route 2]ingress-interface GigabitEthernet1/0/3
[FW1-policy-pbr-rule-policy route 2]source-address address-set 172.16.2.*
[FW1-policy-pbr-rule-policy route 2]action pbr egress-interface GigabitEthernet1/0/1 next-hop 3.3.3.3
[FW1-policy-pbr-rule-policy route 2]quit

6、配置OSPF

[FW1-policy-nat]ospf 1
[FW1-ospf-1]area 0
[FW1-ospf-1-area-0.0.0.0]network 2.2.2.0 0.0.0.255
[FW1-ospf-1-area-0.0.0.0]network 3.3.3.0 0.0.0.255
[FW1-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255
[FW1-ospf-1-area-0.0.0.0]network 172.16.2.0 0.0.0.255
五、WEB 端查看

1、接口列表

2、安全策略

(1)untrust to local

(2)local to untrust

(3)trust to untrust

3、NAT策略

(1)snat 1

(2)snat 2 

4、地址表

5、策略路由

(1)policy route 1


(2)policy route 2

 

(3)no policy route 1

 

(4)no policy route 4

 

六、测试

1、PC3 访问 Server1

PC4 访问 Server1 

通过上图分析得知,PC3 所在的172.16.1.0网段 访问 10.1.1.2 时出接口为 GE1/0/0。PC4 所在的172.16.2.0网段 访问 10.1.1.2 时出接口为 GE1/0/1

2、我们拿 PC3 访问 PC4,看下内网是否正常

PC3>ping 172.16.2.81Ping 172.16.2.81: 32 data bytes, Press Ctrl_C to break
From 172.16.2.81: bytes=32 seq=1 ttl=127 time=63 ms
From 172.16.2.81: bytes=32 seq=2 ttl=127 time=62 ms
From 172.16.2.81: bytes=32 seq=3 ttl=127 time=63 ms
From 172.16.2.81: bytes=32 seq=4 ttl=127 time=46 ms
From 172.16.2.81: bytes=32 seq=5 ttl=127 time=47 ms--- 172.16.2.81 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 46/56/63 ms

我们发现是互通的,这里要注意一下,因为我已经在上面配置了 no pbr 不做策略路由,否则是不通的。 如果你的环境有 IPSecVPN 也需要做 no pbr

相关文章:

策略路由实现多ISP接入Internet

组网需求&#xff1a; 企业分别从ISP1和ISP2租用了一条链路 PC3用户上网访问Server1时走ISP1PC4用户上网访问Server1时走ISP2 拓扑图 一、ISP1 运营商 R1路由器 <Huawei>sys [Huawei]sys R1 [R1]un in en[R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ip addr 2.2.2.2 2…...

Socket本质、实战演示两个进程建立TCP连接通信的过程

文章目录 Socket是什么引入面试题, 使你更深刻的理解四元组 Socket网络通信大体流程实战演示TCP连接建立过程需要用到的linux 查看网络的一些命令测试的程序一些准备工作启动服务端, 并没有调用accept启动客户端开启服务accept Socket是什么 通俗来说,Socket是套接字,是一种编…...

java学习路程之篇四、进阶知识、石头迷阵游戏、绘制界面、打乱石头方块、移动业务、游戏判定胜利、统计步数、重新游戏

文章目录 1、绘制界面2、打乱石头方块3、移动业务4、游戏判定胜利5、统计步数6、重新游戏7、完整代码 1、绘制界面 2、打乱石头方块 3、移动业务 4、游戏判定胜利 5、统计步数 6、重新游戏 7、完整代码 java之石头迷阵单击游戏、继承、接口、窗体、事件、组件、按钮、图片...

Git全栈体系(三)

第六章 GitHub 操作 一、创建远程仓库 二、远程仓库操作 命令名称作用git remote -v查看当前所有远程地址别名git remote add 别名 远程地址起别名git push 别名 分支推送本地分支上的内容到远程仓库git clone 远程地址将远程仓库的内容克隆到本地git pull 远程库地址别名 远…...

JMeter发送get请求并分析返回结果

在实际工作的过程中&#xff0c;我们通常需要模拟接口&#xff0c;来进行接口测试&#xff0c;我们可以通过JMeter、postman等多种工具来进行接口测试&#xff0c;但是工具的如何使用对于我们来说并不是最重要的部分&#xff0c;最重要的是设计接口测试用例的思路与分析结果的能…...

HTML笔记(1)

介绍 浏览器中内置了HTML的解析引擎&#xff0c;通过解析标记语言来展现网页&#xff1b;HTML标签都是预定义好的&#xff1b;Java工程师&#xff1a;后台代码的编写&#xff0c;和数据库打交道&#xff0c;把数据给网页前端的工程师&#xff1b;网页前端工程师&#xff1a;写H…...

重新审视MHA与Transformer

本文将基于PyTorch源码重新审视MultiheadAttention与Transformer。事实上&#xff0c;早在一年前博主就已经分别介绍了两者&#xff1a;各种注意力机制的PyTorch实现、从零开始手写一个Transformer&#xff0c;但当时的实现大部分是基于d2l教程的&#xff0c;这次将基于PyTorch…...

Docker 全栈体系(七)

Docker 体系&#xff08;高级篇&#xff09; 五、Docker-compose容器编排 1. 是什么 Compose 是 Docker 公司推出的一个工具软件&#xff0c;可以管理多个 Docker 容器组成一个应用。你需要定义一个 YAML 格式的配置文件docker-compose.yml&#xff0c;写好多个容器之间的调…...

【编程范式】聊聊什么是数据类型和范式的本质

什么是编程范式 范式其实就是做事的方式&#xff0c;编程范式可以理解为如何编程&#xff0c;按照什么样的模式或者风格进行编程。 编程范式包含哪些 泛型编程函数式编程面向对象编程编程本质和逻辑编程 虽然有不同的编程范式&#xff0c;但是对于目的来说都是为了解决同一…...

2023-08-01 python根据x轴、y轴坐标(数组)在坐标轴里画出曲线图,python 会调用鼎鼎大名的matlib,用来分析dac 数据

一、python 源码如下 import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt#x[0 ,1,2,3,5,6,10] #y[0,0,3,4,5,7,8]# { 0 , 1 , 0x0003 },// 0 # { 0XFFFF * 1 / 10 , 3006 , 0x0a6b },// 1 # { 0XFFFF * 2 / 10 , 599…...

小研究 - 主动式微服务细粒度弹性缩放算法研究(四)

微服务架构已成为云数据中心的基本服务架构。但目前关于微服务系统弹性缩放的研究大多是基于服务或实例级别的水平缩放&#xff0c;忽略了能够充分利用单台服务器资源的细粒度垂直缩放&#xff0c;从而导致资源浪费。为此&#xff0c;本文设计了主动式微服务细粒度弹性缩放算法…...

机器学习深度学习——softmax回归的简洁实现

&#x1f468;‍&#x1f393;作者简介&#xff1a;一位即将上大四&#xff0c;正专攻机器学习的保研er &#x1f30c;上期文章&#xff1a;机器学习&&深度学习——softmax回归从零开始实现 &#x1f4da;订阅专栏&#xff1a;机器学习&&深度学习 希望文章对你…...

CPU利用率过高解决思路

文章目录 问题场景问题定位问题解决 本文参考&#xff1a; Linux服务器之CPU过高解决思路_linux cpu温度过高_Jeremy_Lee123的博客-CSDN博客 Java程序员必备&#xff1a;jstack命令解析 - 掘金 (juejin.cn) 重点问题&#xff01;CPU利用率过高排查思路&#xff5c;原创 (qq.…...

Redis(三)—— Redis基本的事务操作、Redis实现乐观锁

一、Redis基本的事务操作 首先声明&#xff1a; redis的单条命令是保证原子性的&#xff08;回想一下setnx k1 v1 k5 v5命令如果k1已经存在&#xff0c;那么k5也会设置失败&#xff09;但是redis的事务不保证原子性&#xff01;见下面“1.2 某条命令有错怎么办&#xff1f;”…...

SQLI_LABS攻击

目录 Less1 首先来爆字段 联合注入 判断注入点 爆数据库名 爆破表名 information_schema information_schmea.tables group_concat() 爆破列名 information_schema.columns 爆值 SQLMAP Less-2 -4 Less -5 布尔 数据库 表名 字段名 爆破值 SQLMAP Less-6 …...

如何查看 Chrome 网站有没有前端 JavaScript 报错?

您可以按照以下步骤在Chrome中查看网站是否存在前端JavaScript报错&#xff1a; 步骤1&#xff1a;打开Chrome浏览器并访问网站 首先&#xff0c;打开Chrome浏览器并访问您想要检查JavaScript报错的网站。 步骤2&#xff1a;打开开发者工具 在Chrome浏览器中&#xff0c;按…...

JS前端读取本地上传的File文件对象内容(包括Base64、text、JSON、Blob、ArrayBuffer等类型文件)

读取base64图片File file2Base64Image(file, cb) {const reader new FileReader();reader.readAsDataURL(file);reader.onload function (e) {cb && cb(e.target.result);//即为base64结果}; }, 读取text、JSON文件File readText(file, { onloadend } {}) {const re…...

【项目方案】OpenAI流式请求实现方案

文章目录 实现目的效果比对非stream模式stream模式实现方案方案思路总体描述前端方案对比event-source-polyfill代码示例前端实现遇到的问题与解决方法后端参考资料时序图关键代码示例后端实现时遇到的问题与解决方法实现目的 stream是OpenAI API中的一个参数,用于控制请求的…...

华为数通HCIP-IP组播基础

点到点业务&#xff1a;比如FTP&#xff0c;WEB业务&#xff0c;此类业务主要特点是不同的用户有不同的需求&#xff0c;比如用户A需要下载资料A&#xff0c;用户B需要下载资料B。此类业务一般由单播承载&#xff0c;服务器对于不同用户发送不同的点到点数据流。 ospf、isis…...

STM32 SPI学习

SPI 串行外设设备接口&#xff08;Serial Peripheral Interface&#xff09;&#xff0c;是一种高速的&#xff0c;全双工&#xff0c;同步的通信总线。 SCK时钟信号由主机发出。 SPI接口主要应用在存储芯片。 SPI相关引脚&#xff1a;MOSI&#xff08;输出数据线&#xff…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式&#xff08;Singleton Pattern&#…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中&#xff0c;损失函数的选择对模型性能具有决定性影响。均方误差&#xff08;MSE&#xff09;作为经典的损失函数&#xff0c;在处理干净数据时表现优异&#xff0c;但在面对包含异常值的噪声数据时&#xff0c;其对大误差的二次惩罚机制往往导致模型参数…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...