HSRP热备份路由协议(VRRP虚拟路由冗余协议)配置以及实现负载均衡

1、相关原理

在网络中,如果一台作为默认网关的三层交换机或者路由器损坏,所有使用该网关为下一跳的主机通信必然中断,即使配置多个默认网关,在不重启终端的情况下,也不能彻底换到新网关。Cisco提出了HSRP热备份路由协议,VRRP虚拟路由冗余协议一样,他们采用主备模式,将一个协议组内的多个路由设备映射为一个虚拟路由设备,当其中任意一个发生故障时,组内其它设备顶替损坏设备担任主路由设备。(本文采用的是HSRP协议配置方式,VRRP相关配置命令一致)

一个HSRP组中只有一台主控设备,可以有一台或者多台处于备份角色的设备,HSRP使用选择策略从该组中选择一个作为主控,负责ARP响应和IP数据包转发,备份设备处于待命状态。

比如说路由器,我们只需要在一个路由器上配置虚拟路由号和虚拟IP地址,同时会产生一个虚拟MAC地址,这样,就在网络中添加了一个虚拟路由器。

2、搭建网络

3、配置主机和服务器

规划主机IP地址

单击PC主机,选择桌面,单击IP配置,输入规划好的主机IP和默认网关,子网掩码会自动生成

对PC2-PC4做相同配置

服务器IP地址进行一样的操作

4、配置交换机

配置交换机1,创建vlan10、20、30、40,vlan10和vlan20用于接入主机,交换方式设置为access

vlan30和vlan40用于连接路由器,交换方式设置为trunk

vlan相关配置完成后,接下来配置OSPF动态路由协议,将路由器划分到OSPF area 123 

Switch>en
Switch#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#vlan 10
Switch(config-vlan)#name vlan10
Switch(config-vlan)#exit
Switch(config)#vlan 20
Switch(config-vlan)#name vlan20
Switch(config-vlan)#exit
Switch(config)#vlan 30
Switch(config-vlan)#name vlan30
Switch(config-vlan)#exit
Switch(config)#vlan 40
Switch(config-vlan)#name vlan40
Switch(config-vlan)#exitSwitch(config)#int f0/1
Switch(config-if)#switchport access vlan 10
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#int f0/2
Switch(config-if)#switchport access vlan 20
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#int f0/3
Switch(config-if)#switchport access vlan 10
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#int f0/4
Switch(config-if)#switchport access vlan 20
Switch(config-if)#no shutdown
Switch(config-if)#exitSwitch(config)#int f0/5
Switch(config-if)#switchport trunk all vlan 30
Switch(config-if)#switchport trunk all vlan add 10
Switch(config-if)#switchport trunk all vlan add 20
Switch(config-if)#no shutdown
Switch(config-if)#exitSwitch(config)#int f0/6
Switch(config-if)#switchport trunk all vlan 40
Switch(config-if)#switchport trunk all vlan add 10
Switch(config-if)#switchport trunk all vlan add 20
Switch(config-if)#no shutdown
Switch(config-if)#exitSwitch(config)#int vlan10
Switch(config-if)#ip address 192.168.1.1 255.255.255.0
Switch(config-if)#exitSwitch(config)#int vlan 20
Switch(config-if)#ip address 192.168.2.1 255.255.255.0
Switch(config-if)#exitSwitch(config)#int vlan 30
Switch(config-if)#ip address 192.168.3.1 255.255.255.0
Switch(config-if)#exitSwitch(config)#int vlan 40
Switch(config-if)#ip address 192.168.4.1 255.255.255.0
Switch(config-if)#exitSwitch(config)#ip routing
Switch(config)#router ospf 1
Switch(config-router)#network 192.168.1.0 0.0.0.255 area 123
Switch(config-router)#network 192.168.2.0 0.0.0.255 area 123
Switch(config-router)#network 192.168.3.0 0.0.0.255 area 123
Switch(config-router)#network 192.168.4.0 0.0.0.255 area 123
Switch(config-router)#end

配置交换机2,创建vlan50、60、70,vlan 50用于连接服务器和交换机,交换方式也是access,vlan 60和vlan 70用于连接路由器和交换机,交换方式trunk,此处创建vlan以及vlan接入方式同上文。

Switch>enable 
Switch#configure terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#hostname Switch2Switch2(config)#vlan 50
Switch2(config-vlan)#name vlan50
Switch2(config-vlan)#exitSwitch2(config)#vlan 60
Switch2(config-vlan)#name vlan60
Switch2(config-vlan)#exitSwitch2(config)#vlan 70
Switch2(config-vlan)#name vlan70
Switch2(config-vlan)#exitSwitch2(config)#int f0/1
Switch2(config-if)#switchport access vlan 50
Switch2(config-if)#no shutdown
Switch2(config-if)#exitSwitch2(config)#int f0/2
Switch2(config-if)#no shutdown
Switch2(config-if)#switchport trunk all vlan 60
Switch2(config-if)#switchport trunk all vlan add 50
Switch2(config-if)#switchport trunk all vlan add 70
Switch2(config-if)#exitSwitch2(config)#int f0/3
Switch2(config-if)#no shutdown
Switch2(config-if)#switchport trunk all vlan 70
Switch2(config-if)#switchport trunk all vlan add 50
Switch2(config-if)#switchport trunk all vlan add 60
Switch2(config-if)#exitSwitch2(config)#int vlan 50
Switch2(config-if)#ip address 8.8.8.254 255.0.0.0
Switch2(config-if)#exitSwitch2(config)#int vlan 60
Switch2(config-if)#ip address 192.168.6.1 255.255.255.0
Switch2(config-if)#exitSwitch2(config)#int vlan 70
Switch2(config-if)#ip address 192.168.7.1 255.255.255.0
Switch2(config-if)#exitSwitch2(config)#ip routing
Switch2(config)#router ospf 1
Switch2(config-router)#network 8.0.0.0 255.255.255.0 area 123
Switch2(config-router)#network 192.168.6.0 0.0.0.255 area 123
Switch2(config-router)#network 192.168.7.0 0.0.0.255 area 123
Switch2(config-router)#exit

 

5、配置路由器

配置端口g0/0/0,设置该端口的IP地址,设置两个子接口192.168.1.10和192.168.2.10,每个子接口划分成组,配置虚拟网关,是否抢占,优先级

//进入全局配置模式,并修改路由器名称R1
Router>enable 
Router#configure terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#hostname R1//配置子接口1,IP以及虚拟ip网关
R1(config)#int g0/0/0.1
R1(config-subif)#encapsulation dot1q 10
R1(config-subif)#ip address 192.168.1.1 255.255.255.0    //子接口IP地址
R1(config-subif)#standby 1 ip 192.168.1.10        //vlan10的虚拟网关
R1(config-subif)#standby 1 preempt            //设置为抢占模式
R1(config-subif)#standby 1 priority 200       //设置优先级为200
R1(config-subif)#exit//配置子接口2,IP以及虚拟ip网关
R1(config)#int g0/0/0.2
R1(config-subif)#encapsulation dot1q 20
R1(config-subif)#ip address 192.168.2.1 255.255.255.0
R1(config-subif)#standby 2 ip 192.168.2.10
R1(config-subif)#standby 2 preempt
R1(config-subif)#standby 2 priority 150
R1(config-subif)#exit//配置接口
R1(config)#int gigabitEthernet 0/0/1
R1(config-if)#ip address 192.168.6.2 255.255.255.0//ospf视图下发布直连路由
R1(config)#router ospf 1
R1(config-router)#network 192.168.3.0 0.0.0.255 area 123
R1(config-router)#network 192.168.6.0 0.0.0.255 area 123
R1(config-router)#exit

配置后查看路由表

(另一台路由器做相同配置,注意划分网段和IP)

Router>enable 
Router#configure  terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#hostname R2R2(config)#int g0/0/0.1
R2(config-subif)#encapsulation dot1q 10
R2(config-subif)#ip address 192.168.1.1 255.255.255.0
R2(config-subif)#standby 1 ip 192.168.1.10
R2(config-subif)#standby 1 preempt
R2(config-subif)#standby 1 priority 150
R2(config-subif)#exitR2(config)#int g0/0/0.2R2(config-subif)#encapsulation dot1q 20
R2(config-subif)#ip address 192.168.2.1 255.255.255.0
R2(config-subif)#standby 2 ip 192.168.2.10
R2(config-subif)#standby 2 preempt
R2(config-subif)#standby 2 priority 200
R2(config-subif)#exitR2(config)#int g0/0/0
R2(config-if)#no shutdown
R2(config-if)#ip address 192.168.4.2 255.255.255.0
R2(config-if)#exitR2(config)#int g0/0/1
R2(config-if)#no shutdown
R2(config-if)#ip address 192.168.7.1 255.255.255.0
R2(config-if)#exitR2(config)#router ospf 1
R2(config-router)#network 192.168.7.0 0.0.0.255 area 123
R2(config-router)#network 192.168.4.0 0.0.0.255 area 123
R2(config-router)#exit

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

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

相关文章

运算符重载详解(完全版)

1.运算符重载 C为了增强代码的可读性引入了运算符重载,运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字和参数列表,其返回值类型与参数列表都与普通的函数类似 函数名:关键字operator后面接需要重载的…

Interview preparation--Elasticsearch写入原理与调优

ES的写入过程 ES支持的写操作 create: create操作不同于put操作,put操作的时候如果当前put的数据存在则会被覆盖,如果put操作的时候加上操作类型create,如果数据存在则会返回失败,比如:PUT /pruduct/_cre…

Ubuntu20.04安装python2和python3及版本配置

Ubuntu20.04安装python2和python3及版本配置_ubuntu 20.04 python3-CSDN博客https://blog.csdn.net/pangc2014/article/details/117407413 >>>ubuntu 安装源码python2_mob649e8161c39d的技术博客_51CTO博客https://blog.51cto.com/u_16175489/7327966

大厂薪资福利篇第四弹:字节跳动

欢迎来到绝命Coding! 今天继续更新大家最关心的 大厂薪资福利系列! 往期分享: 福利开水喝不完?大厂薪资福利篇!美团 职场文化发源地?大厂薪资福利篇!阿里巴巴 给这么多!还能带宠物上…

MFC案例:自制工具条(Toolbar)按钮的小程序

程序目标:在基于对话框的MFC项目中,自制三个 Toolbar 按钮(用颜色区分,分别为红、绿、蓝);程序运行时,单击红色按钮显示一个红色的填充椭圆;再单击绿色按钮则进行清屏;最…

[hive] posexplode生成从去年一月一号,到本月的月时间表

生成从去年一月一号,到本月的月时间表 posexplode用法: lateral view 表别名 as 序号列名,数组中的元素的名 1、生成序列 SELECT time_stamp_fist_day_of_last_year,--去年第一天的时间戳numfrom(SELECTsplit(repeat_o,,) o_array,time_stamp_fist_da…

用英文介绍纽约:NEW YORK, USA‘s MEGACITY

NEW YORK, USA’s MEGACITY | America’s Largest City Link: https://www.youtube.com/watch?vdzjQ-akB3BI&listPLmSQiOQJmbZ7TU39cyx7gizM9i8nOuZXy&index24 The story of New York City, America’s megalopolis. Summary Paragraph 1: The Historical Developm…

Chrome插件:​Vue.js Devtools 高效地开发和调试

在现代前端开发中,Vue.js因其灵活性和性能优势,受到越来越多开发者的青睐。然而,随着项目规模的扩大,调试和优化变得愈发复杂。幸运的是,Vue.js Devtools的出现,为开发者提供了一套强大的工具集&#xff0c…

vue大屏适配方案

前言 开发过大屏的铁汁们应该知道,前期最头疼的就是大屏适配,由于大屏项目需要在市面上不是很常见的显示器上进行展示,所以要根据不同的尺寸进行适配,今天我将为大家分享的我使用的大屏适配方案,话不多说,直…

Matlab|风光及负荷多场景随机生成与缩减

目录 1 主要内容 计算模型 场景生成与聚类方法应用 2 部分程序 3 程序结果 4 下载链接 1 主要内容 该程序方法复现了《融合多场景分析的交直流混合微电网多时间尺度随机优化调度策略》3.1节基于多场景技术的随机性建模部分,该部分是随机优化调度的重要组成部分…

轻松掌握:工科生如何高效阅读国际期刊和撰写论文(下)

⭐️我叫忆_恒心,一名喜欢书写博客的研究生👨‍🎓。 如果觉得本文能帮到您,麻烦点个赞👍呗! 近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三连支…

透明屏幕的魅力:为何它如此受欢迎

在科技日新月异的今天,透明屏幕技术以其独特的魅力和广泛的应用前景,逐渐成为了科技领域的一颗璀璨明星。从智能手机、平板电脑到大型显示屏,透明屏幕技术以其前所未有的视觉体验和实用性,赢得了广大消费者的喜爱。 一、透明屏幕的…

docker 镜像突然拉取不了,教你解决

最近我们可以发现,在Linux系统里拉取不了镜像了,翻墙也拉取不了,这时候我们可以有一个新的docker 镜像同步网站来解决这个问题 一、首先打开镜像官网(需要翻墙) https://hub.docker.com/ 然后搜索一个镜像 搜索最新…

Nginx实战:简单登录验证配置(基于openssl)

本文提供的是基于openssl创建的密码文件,对nginx指定的location访问。进行登录验证的配置方式。 1、验证页面配置 我的nginx实验环境是直接yum安装的,如果是自己编译安装的那么对应目录就是自己安装配置的目录。 先在/usr/share/nginx/html下创建一个usertest.html,里面添加…

Spring Cache常见问题解决

目录 一 报错:Null key returned for cache operation 二 报错:类型转换异常 三 取出的数据为null 一 报错:Null key returned for cache operation 这里报错有两种情况: 第一,如果你在新增的方法上使用Cacheable注解,那么肯定是…

绝望中迎来曙光,阿里大模型算法岗 Offer 突然来了!

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、算法项目落地经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 总结链接如…

用定时器T1中断控制两个LED以不同周期闪烁

#include<reg51.h> // 包含51单片机寄存器定义的头文件 sbit D1P2^0; //将D1位定义为P2.0引脚 sbit D2P2^1; //将D2位定义为P2.1引脚 unsigned char Countor1; //设置全局变量&#xff0c;储存定时器T1中断次数 unsigned char Countor2; //设置全局变量&#xff0c;储…

virutalBox安装debian并配置docker环境

下载镜像 https://gemmei.ftp.acc.umu.se/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso 虚拟机安装 如何在Virtual Box 上安装Debian系统_virtual box debian iso netinst-CSDN博客 启动命令行模式 如何设置Debian图形启动或命令行界面启动&#xff1…

什么是Cookie?有什么用?如何清除浏览器中的Cookie?

互联网上的每一次点击和每一个选择都可能被一种名为Cookie的技术记录下来。但Cookie是什么&#xff1f;我们在网站上登录时&#xff0c;为什么经常会被问及是否接受Cookie&#xff1f;接受Cookie登录会不会影响我们的在线隐私&#xff1f; Cookie是什么&#xff1f; Cookie是一…

S-Clustr(影子集群)V3 高并发,去中心化,多节点控制

S-Clustr 项目地址:https://github.com/MartinxMax/S-Clustr/releases/tag/S-Clustr-V3.0 Maptnh Не ограничивайте свои действия виртуальным миром. GitHub: Maptnh Jay Steinberg Man kann die Menschen, die man hasst, in d…