【控制篇 / 分流】(7.4) ❀ 03. 对国内和国际IP网段访问进行分流 ❀ FortiGate 防火墙

  【简介】公司有两条宽带用来上网,一条电信,一条IPLS国际专线,由于IPLS仅有2M,且价格昂贵,领导要求,访问国内IP走电信,国际IP走IPLS,那么应该怎么做?


 国内IP地址组

  我们已经知道可以创建地址对象和地址组,然后利用路由进行分流。

  ① 浏览器打开网站 https://ispip.clang.cn ,可以看到国内所有IP地址有5452条。

  ② 选择并复制所有5452条数据。

  ③ 新建Execl,将所有数据粘贴到Excel,上一篇文章我们知道每个地址组最多只能是600条数据,为了方便计算和留有空间,我们只将每个地址组包含500条数据。有了Excel最左边的序号,选择500条数据就方便多了。

  ④ 打开批处理工具NimbleText(可在 https://nimbletext.com 下载),取消钩选【Output \n after each row】,复制Excel上第1-500行共500条数据粘贴到NimbleText数据区。

   ⑤ 在模板区输入上图中的命令,第一大段是配置防火墙地址对象,第二大段是配置防火墙地址组。地址组名在第二个500条数据时需要手动修改。

  ⑥ 在结果区点击【Calculate】或钩选【auto】,可以最终在防火墙上执行的命令行。第一大段生成配置防火墙地址对象命令,将在防火墙上生成500条地址对象。

  ⑦ 第二大段命令,将500条自动生成的地址对象,加入地址组China_GRP01。注意这里地址对象都是连接在一起的,中间空格隔开。如果每个地址对象都是独立的一行,后面执行时会报错。

  ⑧ 在NimbleText上选择菜单【File】-【Save result as...】。

  ⑨ 保存类型选择【Text files (*.txt)】,输入文件名,点击【保存】。

  ⑩ 这样就生成了可以在防火墙上执行的脚本文件。文件编码为UTF-8。

  ⑪ 登录FortiGate防火墙,点击右上角管理员旁下拉图标,弹出菜单选择【配置】-【脚本】。

  ⑫ 点击【运行脚本】。

  ⑬ 选择刚才创建的脚本文件,点击【确认】。

  ⑭ 如果显示【脚本运行成功】,那么恭喜你。报红色错误提示,就要排查脚本内容是否不正确了。

  ⑮ 选择菜单【策略&对象】-【地址】,点击【Address Group】,可以看到新创建的地址组China_GRP01,由500条地址对象组成。

  ⑯ 在NimbleText上复制第二个500条数据,修改地址组名,然后保存脚本文件。然后再重复操作,直到所有5452条数据生成共11个脚本文件。

  ⑰ 在防火墙上运行剩余的10个脚本文件,这里都成功了。

  ⑱ 由于创建了11个地址组,引用起来很不方便,因次将11个地址组加入China_GRP这一个地址组,这样就很方便了。如果需要在静态路由中引用,启用【静态路由配置】。

  通过路由分流

  当我们得到国内IP地址组后,就可以通过路由来进行分流了。

  ① 可以创建静态路由,当访问国内IP地址组内的IP时,走电信宽带。

  ② 当访问非国内IP时,不匹配刚创建的静态路由,而是匹配两条宽带的默认路由,只有IPLS宽带的优先级数值最小,才会走IPLS宽出去。

  ③ 所以更推荐使用策略路由,因为策略路由优先于静态路由。创建新的策略路,指定内网接口访问国内IP时走电信宽带上网。

  ④ 再创建一条策略路由,内网接口访问所有内容是走IPLC国际专线。

  ⑤ 策略路由是从上往下匹配,当我们访问百度时,匹配第一条策略路由,走wan1口接口上网。当访问8.8.8.8时,由于不是国内IP,不匹配第一条策略路由,而会匹配第二条策略路由,走wan2接口上网。

  ⑥ 选择菜单【仪表板】-【FortiView】,双击电脑IP,选择【目标地址】,可以看到流量分别走不同宽带接口出去。国内走wan1,其它走wan2。如果看到不目标接口栏,可以在菜单栏鼠标点右键弹出菜单钩选【目标接口】。

  地理地址对象

  除了自己创建国内IP地址对象和地址组外,也可以利用防火墙自带的地理地址对象。

  ① 创建地址对象时,类型选择【地理】,国家/地区选择【China】。

  ② 地理地址对象和其它地址对象、地址组一样,可以在策略和路由中引用。

  ③ 地理地址对象从IP地理位置数据库中获得数据。

  ④ 那数据量和准确性怎么样呢?可以看到最新版本IP地理位置数据库是关于中国的IP地址网段数据有5359条。和我们前面看到的5452条数据差相不大。IP地理位置数据库的更新和防火墙的服务有关,只有在服务期内才能进行更新。

  【总结】批量将IP地址网段在防火墙上创建地址对象和地址组,然后通过路由对访问进行分流,这种操作可控性较强。防火墙新的固件版本可以通过IP地理位置数据库实现对不同国家的访问分流,操作也非常简单。


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

KubeSphere 开源社区 2023 年度回顾与致谢

2023 年结束了,让我们再一次一起回顾一下 KubeSphere 开源社区在过去一年的变化。更重要的是,本篇文章将会对 2023 年所有参与过 KubeSphere 社区贡献的成员致以最诚挚的感谢,快来看看有没有你! 开源项目发展情况 2023 年&#…

黑马 Javaweb - MySQL 精华篇

我是南城余!阿里云开发者平台专家博士证书获得者! 欢迎关注我的博客!一同成长! 一名从事运维开发的worker,记录分享学习。 专注于AI,运维开发,windows Linux 系统领域的分享! 知…

查询数据库表字段具有某些特征的表

目录 引言举例总结 引言 当我们把一个项目做完以后,客户要求我们把系统中所有的电话,证件号等进行加密处理时,我们难道要一个表一表去查看那些字段是电话和证件号码吗? 这种办法有点费劲,下面我们来探索如何找到想要的…

mybatis分页、延迟加载、立即加载、一级缓存、二级缓存

mybatis分页、延迟加载、立即加载、一级缓存、二级缓存 分页延迟加载和立即加载缓存一级缓存二级缓存 分页 分类: 使用Limit,来进行分页;物理分页使用RowBounds集合来保存分页需要数据,来进行分页;逻辑分页;本质是全…

Air780E开发板开发环境搭建

开发板原理图 开发软件 下载网站 https://luatos.com/luatools/download/last 使用教程 烧录教程 - LuatOS 文档 开发流程 首先下载最新版本的Luatools 然后新建一个Luatools文件夹,将下载的exe文件放入其中后,再打开exe文件(会生成目…

《WebKit 技术内幕》之四(2): 资源加载和网络栈

2.Chromium 多进程资源加载 2,1 多进程 资源的实际加载在各个WebKit移植中有不同的实现。Chromium采用的多进程的资源加载机制。 ResourceHandle 类之下的部分是不同移植对获取资源的不同实现,Chromium 中是 多进程资源加载 。主要是多个Renderer进程和Browser进程…

SystemVerilog验证测试平台

2.2定宽数组 相比于 Verilog1995中的一维定宽数组, System verilog提供了更加多样的数组类型,功能上也大大增强。 2.2.1定宽数组的声明和初始化 Verilog要求在声明中必须给出数组的上下界。因为几乎所有数组都使用0作为索引下界,所以 System verilog允许只给出数组宽度的便捷声…

华为DHCP配置

1. 全局地址池和接口地址池的应用场景有什么不同呢? 答:接口地址池适用于当前接口只给DHCP client分配与接口同一网段的IP地址的场景。 全局地址池可以给DHCP Client分配与接口同网段的IP地址,也可以分配不同网段的IP地址(DHCP中…

Python爬虫 - 网易云音乐下载

爬取网易云音乐实战,仅供学习,不可商用,出现问题,概不负责! 分为爬取网易云歌单和排行榜单两部分。 因为网页中,只能显示出歌单的前20首歌曲,所以仅支持下载前20首歌曲(非VIP音乐&…

滑动窗口经典入门题-——长度最小子数组

文章目录 算法原理题目解析暴力枚举法的代码优化第一步初始化第二步right右移第三步left右移 滑动窗口法的代码 算法原理 滑动窗口是一种在序列(例如数组或链表)上解决问题的算法模式。它通常用于解决子数组或子字符串的问题,其中滑动窗口表示…

【Redis】Redis基础

Redis基础 初识Redis 认识NoSQL SQL:结构化查询语言 > 关系型数据库 NoSQL:非关系型数据库 SQL与NoSQL的差异: 数据结构 SQL结构化:表的信息依赖于表的结构NoSQL非结构化:存储的信息为KV形式 数据关联 SQL关联…

Android NDK Crash信息收集捕获和日志异常定位分析(addr2line)

Android NDK 闪退日志收集与分析 我们在开发过程中,Android JNI层Crash问题或者我们引用的第三方.so库文件报错,都是一个比较头疼的问题。相对Java层来说,由于c/c++造成的crash没有输出如同Java的Exception Strace堆栈信息,所以定位问题也是个比较艰难的事情。 Google Br…

Nomogram文献分析:提取数据

前言 今天教大家如何分析Nomogram类型的文章,并使用我们开发的系统零代码提取数据。 系统地址:https://clinicaldata.fun/ 要分析的文章:https://pubmed.ncbi.nlm.nih.gov/36504658/ 。这是一篇典型的mimic-iii数据分析的套路,…

智能小程序开发项目步骤流程

快速开始 在开发小程序之前,请确保电脑上已经安装node运行环境。可前往Node.js官网(opens in a new tab)下载安装。智能小程序环境搭建和面板小程序一致,请参考面板小程序搭建环境指南。 开发小程序的流程: 使用涂鸦开发者 IoT 账号登录 T…

c语言-结构体内存对齐

文章目录 前言一、结构体内存对齐总结 前言 本篇文章介绍结构体内存对齐。 一、结构体内存对齐 定义两个结构体: struct S1 {char c1;int i;char c2; };struct S2 {char c1;char c2;int i; }; //输出结构体大小 int main() {printf("%u\n", sizeof(st…

未来能源转型之路:2023年第十三届中国国际储能大会启示录

在2023年第十三届中国国际储能大会上,全球各地的能源专家、学者和企业代表齐聚一堂,共同探讨了储能技术在推动能源转型中的重要作用。对于我们普通人来说,从这场大会中可以学到什么呢? 一、储能技术是未来能源发展的关键 随着可再…

李沐《动手学深度学习》线性神经网络 softmax回归

系列文章 李沐《动手学深度学习》预备知识 张量操作及数据处理 李沐《动手学深度学习》预备知识 线性代数及微积分 李沐《动手学深度学习》线性神经网络 线性回归 目录 系列文章一、softmax回归(一)问题背景(二)网络架构&#xf…

win11启动docker desktop报错 docker desktop unexpected wsl error

win11启动docker desktop报错 docker desktop unexpected wsl error 解决方式, 第一步:控制面板-启动或关闭windows功能窗口勾选下面两个框框 第二步:执行我下面这些命令,不需要重启电脑

Linux:shell脚本:基础使用(7)《exit和break》

exit是结束脚本,不论在脚本任何地方使用,这个脚本就会立马结束,不会继续执行后面的所有命令 break 是结束循环,break只能在循环中使用,并且只对距离自己最近的循环生效,如果循环嵌套循环那么break在哪个循环…

js菜单隐藏显示

1、树状结构对应的表: 2、生成menulist的SQL语句 select {"id":"MenuID","parent":"ParentID","FirstLvMenu":"FirstLvMenu", "text":"MenuName","url":"MenuUrl",&quo…