华为防火墙智能选路篇之链路权重(带宽)负载分担

基于链路的权重负载分担(真机演示)

图片

这里博主采用真机演示,模拟器只能配置没办法模拟出效果,真机能够真实的体验出效果,更好的去理解,所以这边采用真机配置了。环境简化了,防火墙内网接了一台测试电脑(博主用的),外网对接了两个线路,上网对接方式都是DHCP,一个宽带是20M,一个宽带是50M,我们来看看基于链路权重如何配置,以及需要注意什么。

需要考虑的问题

如果在实际中遇到这样的需求,需要根据客户的实际环境来进行配置,比如客户那边是DHCP加拨号的组合,或者静态加DHCP等都有可能,而且还需要考虑到链路的有效性,是否出现了故障等。

(1)智能选路中的故障检测只能采用健康检查功能,所以在部署之前需要定义好

(2)健康检查功能是调用在接口上面的,当该检测失效,对应接口直接失效。

(3)如果实际环境中采用的外网对接方式是混合的,比如DHCP+拨号或者拨号加DHCP等方式,要注意默认路由的优先级,一定要保持一致,否则智能选路会出现问题。

(4)智能选路接口需要设置实际宽带的值,这样防火墙才能按照智能选路的策略来进行分配。

(5)健康检查到底需要不需要防火墙放行Local到untrust的流量?

配置相关

(1)基础配置就不在演示了,配置了内外网接口,加入了安全区域,配置了安全策略与NAT策略(允许内网上网即可)

图片

其中192.168.254.254是内网网关,2个外网口分别接的外网用的DHCP模式,都加入了untrust安全区域。

[USG6300E]interface g0/0/9[USG6300E-GigabitEthernet0/0/9]shutdown

图片

G0/0/8接的是20M的宽带,特意把9口关闭测速了下是正常的。

[USG6300E]interface g0/0/9[USG6300E-GigabitEthernet0/0/9]undo shut[USG6300E-GigabitEthernet0/0/9]int g0/0/8[USG6300E-GigabitEthernet0/0/8]shutdown

图片

9口测速下来速度也是正常,50M。​​​​​​​

[USG6300E]interfaceg0/0/8[USG6300E-GigabitEthernet0/0/8]undoshut

在把8口开启

(2)配置健康检查

健康检查跟ip-link一样,需要先定好一个监测点,不变的思路,肯定是找大厂商稳定的测试地址为主,比如114、阿里云DNS、百度云DNS都是可以的,但是ip-link只支持icmp探测,有局限性,但是健康检查支持更多的协议,可以基于TCP、DNS(解析某个网站)、HTTP来GET网页、ICMP,在实际中就有更多的选择,常见的可以用ICMP探测以及DNS解析与TCP,下面博主用DNS以及TCP来演示下。​​​​​​​

[USG6300E]healthcheckenable          //开启健康检查[USG6300E]healthcheckname dx20m            //创建一个名称dx20m[USG6300E-healthcheck-dx20m]destination 223.5.5.5 interface g0/0/8next-hop 192.168.2.254 protocol tcp-simple destination-port 53

    //整体意思是探测223.5.5.5  TCP的53端口号(简单探测),从G0/0/8出去下一跳是192.168.2.254(TCP支持一种,简单探测是不需要三次握手,还一种正常的三次握手的,两种都可以,简单的会更加快些)

图片

当配置完健康检查后,会看到这样的提示,状态已经up了,说明检查成功了。(从Up能够解决第五个问题,健康检测是不需要额外放行安全策略的,也就是不受安全策略控制,在V5版本后)​​​​​​​

[USG6300E]healthcheckname dx50m[USG6300E-healthcheck-dx50m]destination 114.114.114.114 interfaceg0/0/9 next-hop 172.16.1.254 protocol dns这里要注意下,默认情况下DNS解析的是www.huawei.com,可以根据自己来改,比如百度、163等。[USG6300E]healthcheckdomain-name

[USG6300E]interfaceg0/0/8[USG6300E-GigabitEthernet0/0/8]bandwidth ingress 20000 threshold 90[USG6300E-GigabitEthernet0/0/8]bandwidth egress 8000 threshold 90[USG6300E-GigabitEthernet0/0/8]healthcheck dx20m  interfaceGigabitEthernet0/0/9[USG6300E-GigabitEthernet0/0/9]bandwidth ingress 50000 threshold 90[USG6300E-GigabitEthernet0/0/9]bandwidth egress 8000 threshold 90[USG6300E-GigabitEthernet0/0/9]healthcheck dx50m

这里要注意一个“陷阱区“,很多朋友看到ingress跟egress,会把ingress当做上传,egress当做下载,如果从字面意思确实可以这样理解,但并不是,它的参考是数据包的方向,ingress表示进来的数据包,也就是客户端从外网下载回来进入防火墙的包,这个属于下载的速率,而egress是客户端的数据从防火墙发送出去到对方,表示上传,所以在实际输入中一定不要搞错了。(另外这里单位为kb,20000也就是20m)还最重要的一点threshold 90的参数作用,就是在上一篇提到的流量阀值,这里90代表的90%,超过90%就不在进入智能选路,直接切换到空闲的线路。

(4)配置基于权重的负载分担

[USG6300E]multi-interface    (模拟器的命令是multi-linkif,其余都一样,但是这里博主强调一点,真机不管是从V1R1还是V5到V6命令都是multi-interface)

图片

在V6R7中默认的模式就行基于权重的负载分担(不同版本可能存在差异,配置的时候注意下)

​​​​​​​

[USG6300E-multi-inter]add  interface g0/0/8 weight2[USG6300E-multi-inter]add  interface g0/0/9 weight5

weight数值越大表示权重越高,分的的流量就会越多,G0/0/8对应的带宽是20M,而G0/0/9对应的带宽是50M,按2:5分配,也可以1:3,最终就配置完成了,可以实际测试下。

实际测试(现象用WEB看更直观)

图片

在网络---路由---智能选路里面,可以看到WEB界面能够很好的看到接口的占用率情况(这个是5分钟统计一次),接下来下载一个大文件看看效果。

图片

图片

图片

图片

可以看出来流量在2个接口之间还是非常均衡的分配的。剩下的还差一个健康检查功能,来试下当8口的外网出现故障后,会出现什么。

图片

当把20m的模拟故障后,会发现对应的健康检查状态为down了。

图片

图片

虽然路由表还是呈现两条默认路由,但是通过display  interface  g0/0/8 healthcheck,可以看到所在接口的状态为down了。

图片

这个时候速度会降为5.9MB(也就是差不多48M左右)

图片

后台的显示也体现出来了20M的占用越来越少,因为已经故障了,所以不会在去发送流量。(注意这个统计是慢慢消失的,不是一下就直接清除掉)

基于链路带宽负载分担(真机演示)

24篇提到过基于带宽的负载分担与基于权重的很类似,这里顺便演示下,其实非常简单。

​​​​​​​

[USG6300E]multi-interface[USG6300E-multi-inter]modeproportion-of-bandwidthInfo: The memberinterface bandwidth must be configured in bandwidth-based load balancing mode.Otherwise, load balancing is affected.

图片

在配置里面接口之前调用还有一个权重,这个只有在基于链路权重的模式下才能生效,其他模式其实是不生效的,但是为了看起来更加直观,修改下。​​​​​​​

[USG6300E-multi-inter]undoadd interface g0/0/8[USG6300E-multi-inter]undoadd interface g0/0/9 [USG6300E-multi-inter]add  interface g0/0/8[USG6300E-multi-inter]add  interface g0/0/9

图片

在看就直观很多了。这里博主说下智能选路功能配置其实非常简单,4个模式都在multi-interface下完成,只是修改下mode而已,前期工作的难点在于选取监测点做健康检查,接口部分的速率以及调用健康检查相关的配置,这些做好了,然后在multi-interface下配置自己需要的模式即可。

图片

速度跟基于权重的分配还是差不多的

图片

图片

图片

后台的数据来看也差不多,因为本身基于带宽与基于权重的分配原理类似都是按比例来的,只是说权重可能更加的人性化,可以根据客户的要求来定义比例(实际需求中也会存在客户不一定说要两条带宽均匀的分配,它就希望A线路多跑点,B线路少跑点,这个时候就只能采用基于权重的方式来灵活定义了。)

最后总结

基于带宽以及权重的负载分担方式两种比较相似,博主就放到一起讲解完毕了,这次特意用的真机演示就是能够更直观的看到效果,这样前后对比印象更加深刻,这里在强调下几个比较重要的点作为巩固。

(1)在实施之前要了解好客户带宽的速率,这个参数需要写到接口里面的。

(2)定义健康检查要利用大厂出的公有服务地址来进行监测,由于健康检查的功能性很多,比较推荐的采用ICMP、TCP(两种方式都行)以及DNS,另外在V5版本以后是不受安全策略控制的,不需要额外单独放行安全策略。

(3)接口输入带宽参数的时候一定要注意,很容易把ingress当做上传,egress当做下载

图片

在WEB界面的显示也是这样,但是这里入表示下行速率,出方向带宽表示上行速率,一定要注意。

(4)比较容易出现的问题一般在于健康检查,如果选的监测点老出问题会导致某个链路频繁的排除与参与智能选路,造成网络故障。

(5)WEB相关的配置就不在文档暂时了,篇幅太长了,视频还是会讲解到的,购买了的朋友不用担心。

​​​​​​​

扩展思考:如果客户的外网是静态IP加DHCP或者是静态IP加拨号这种方式,在部署时候应该注意什么?

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

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

相关文章

Zookeeper工作机制和特点

1. Zookeeper工作机制 Zookeeper从设计模式角度来理解: 是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的 注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知…

2-3.Android 存储之存储空间(私有空间、公共空间)

一、内部存储与外部存储 内部存储指位于设备的内部存储空间 外部存储指位于设备的外部存储介质,例如,SD 卡 简单理解,内部存储就是存储在手机自身,外部存储就是存储在手机可以外接的东西,好比电脑的硬盘和 U 盘 二、…

Scratch教学案例 —— 制作生日蛋糕

小虎鲸Scratch资源站-免费少儿编程Scratch作品源码,素材,教程分享网站! 简介 在这个教学案例中,我们将使用Scratch制作一个简单而有趣的生日蛋糕动画。通过这个项目,学生可以学习到如何使用Scratch中的基本编程块进行角色控制、造型切换、舞台背景设置以…

CefSharp_Vue交互(Element UI)_WinFormWeb应用---设置应用透明度(含示例代码)

一、界面预览 1.1 设置透明(整个页面透明80%示例) 限制输入值:10-100(数字太小会不好看见) 1.2 vue标题栏 //注册类与js调用 (async function(

如何从 GitHub 上克隆项目

GitHub 是一个广泛使用的代码托管平台,开发者们可以在上面共享和管理他们的代码。如果你想要快速获取一个项目的代码,可以通过克隆(clone)仓库来实现。本文将详细介绍如何从 GitHub 上克隆项目的步骤。更多内容,请查询…

中介者模式:提升代码可维护性的利器

一,介绍 中介者模式(Mediator Pattern)是一种行为设计模式,它定义了一个中介者对象来封装一系列对象之间的交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,可以独立地改变它们之间的交互。 …

CefSharp_Vue交互(Element UI)_WinFormWeb应用(2)---置顶和取消置顶(含示例代码)

一、预览 获取winform的置顶参数,和设置置顶参数 1.1 置顶(默认不置顶) 1.2 示例代码

进程间关系和守护进程

序言 当我们使用指令 ps 查看进程的相关信息时,在以前我们只是关注该进程的 PID(该进程的标识符) , PPID(其父进程的标识符) 以及 STAT(该进程的状态)。  那 PGID 和 SID 又是什么?有什么作用呢? 1. 进程组 1.1 什么是进程组&am…

视频工具EasyDarwin将本地视频生成RTSP给WVP拉流列表

效果 ffmpeg生成rtsp流 EasyDarwin的rtsp端口默认的是10054, 使用ffmpeg将本地视频转到EasyDarwin的rtsp。 F:\rtsp\ffmpeg-7.0.2-essentials_build\bin>ffmpeg -re -i F:\rtsp\123.mp4 -rtsp_transport tcp -vcodec h264 -f rtsp rtsp://127.0.0.1:10054/video11 它的直播…

基于SpringBoot+Vue+MySQL的在线视频教育平台

系统展示 用户前台界面 管理员后台界面 系统背景 随着信息技术的飞速发展和互联网普及率的不断提高,传统教育模式正面临深刻变革。在线视频教育平台作为数字化教育的重要载体,以其灵活性强、资源丰富、覆盖广泛等优势,逐渐成为人们获取知识、…

RS232

What is RS232 Protocol? In RS232, ‘RS’ stands for Recommended Standard. It defines the serial communication using DTE and DCE signals. Here, DTE refers to Data Terminal Equipment and DCE refers to the Data Communication Equipment. Example of DTE device…

1184. 公交站间的距离(24.9.16)

题目 环形公交路线上有n个站,按次序从 0 到n - 1进行编号。已知每一对相邻公交站之间的距离,distance[i]表示编号为i的车站和编号为(i 1) % n的车站之间的距离。环线上的公交车都可以按顺时针和逆时针的方向行驶。要求返回乘客从出发点start到目的地de…

数组学习内容

动态初始化 只给长度,数据类型【】 数组名new 数据类型【数组长度】 内存图

打造最佳自闭症患全寄宿学校:为孩子的未来保驾护航

在广州这座繁华而温暖的城市中,隐藏着一片专为自闭症儿童精心打造的避风港——星贝育园自闭症儿童寄宿制学校。这里,不仅是一所学校,更是无数家庭希望的灯塔,用爱与专业为孩子们铺设了一条通往更加独立自主生活的道路。 一、爱的…

泛读笔记:从Word2Vec到BERT

自然语言处理(NLP)模型的发展历史 1.统计方法时期:使用贝叶斯方法、隐马尔可夫模型、概率模型等传统统计方法 2.机器学习时期:支持向量机(SVM)、决策树模型、随机森林、朴素贝叶斯等传统机器学习方法 3.深度学习革命:各种新的深度学习模型&am…

卸载完mathtype后,删除word加载项中的mathtype

请参考博客“卸载完mathtype后,word加载项中还是有mathtype的解决方法_怎么删除word加载项里的mathtype-CSDN博客”以及 “安装卸载MathType经验解决MathType DLL找不到的问题——超实用_mathtype dll cannot-CSDN博客” 如果在删除.dotm文件时,删不掉…

01 企业成长助力计划

1,企业和军队一个共同点: 必须不断打胜仗,才能持续活下去并活的有力量。 2,从知道到做到,其实非常艰难 3,大道至简,知易行难 4,华为值得大家学习么,哪些值得学习,学习什么,怎么学。 5,企业发展的瓶颈 6,学习什么? 学习华为是怎么学习别人的。 学习华为是如何批…

TCP协议分析《实验报告》

一、实验目的 1、理解TCP协议; 2、掌握TCP协议三次握手建立连接和四次挥手释放连接的过程; 3、理解TELNET协议及工作过程; 4、掌握TCP协议分析方法。 二、实验设备和环境 1、硬件设备:PC机或笔记本电脑; 2、软件…

金融行业中如何利用数据中台的数据来有效的驱动业务决策呢?

前言​ 在金融行业中,利用数据中台的数据来有效驱动业务决策是一个复杂而关键的过程。其实我们的核心就是帮助金融机构最大化数据中台的价值,并推动业务决策的科学性和准确性。本文我从技术的角度来剖析一下这一过程。​ 什么是数据中台?​…

【C++】学完c语言后的c++基础知识补充!(命名空间、输入和输出、缺省函数、函数重载、引用、内联函数代替宏、nullptr代替NULL)

一. 命名空间 1. 定义 出现的意义:解决各种函数、关键词和类的名称冲突问题。 定义方式:namespace 命名空间的名字 { } (注意!}后面不加;) namespace 是关键词命名空间的…