CIP即为客户端的IP地址 .
DIR为调度器 .
VIP为虚拟IP地址 .
RIP为真实服务器IP地址 .

假设CIP的mac为A1,ip为B1;DIR只有一个物理网卡mac为A2,IP为B2;RIP的mac为A3,IP为B3。

全部VIP为:100

  1. 客户端请求之前会发送arp广播,请求VIP地址对应的mac地址,那么由于所有的真实服务器都需要配置VIP,DIR上也需要配置VIP(且必须配置),但是为了让请求发送到dir上,我们要设置为不允许真实服务器的VIP进行响应arp请求(抑制真实服务器的arp查询和响应)。
  2. dir响应客户端,接到了请求

数据帧:

src mac dest mac src ip src port dest ip dest port
A1 A2 B1 10023 100 80
  1. DIR根据负载均衡算法选择一台真实服务器,将RIP的mac作为目标mac地址

数据帧:

src mac dest mac src ip src port dest ip dest port
A2 A3 B1 10023 100 80

在这一次封装中,源IP地址,源端口都没有改变,目标IP地址一直都是VIP,但是这次的mac地址转变为真实服务器的mac地址

  1. RIP在局域网中收到该包,拆包后查看目标IP与本机是否匹配,匹配则处理这个报文并通过路由进行回复
src mac dest mac src ip src port dest ip dest port
A3 A1 100 80 B1 10023

注意点:

- dir仅处理入站请求,回复数据包是由真实服务器直接通过路由发往客户端
- 真实服务器的网关不能只想dir,我们有时可能想,dir就是起一个nat的作用,但是那只是,接收请求连接的时候,我们回复请求连接的时候是由真实服务器直接回复客户端的。网关指向网络环境使用的网关即可
- 真实服务器配置VIP,要配置在loopback回环口上,因为具体配置时要针对该接口进行arp抑制,如果配置到真实接口上,会影响其它的网络正常通信

参考文章

LVS | LVS 负载均衡之工作原理说明(DR模式)

lvs 中的DR模式 ,解释的更多相关文章

  1. LVS负载均衡DR模式

    什么是集群? 一组相互独立的计算机,利用高速通信网络组成的一个计算机系统,对于客户机来说像是一个单一服务器,实际上是一组服务器.简而言之,一堆机器协同工作就是集群.集群的基本特点:高性能.高并发.高吞 ...

  2. LVS系列二、LVS集群-DR模式

    一. LVS-DR和LVS-IP TUN集群概述 1.  Direct Routing(直接路由) Director分配请求到不同的real server.real server处理请求后直接回应给用 ...

  3. LVS集群DR模式实例(4)

    LVS集群DR模式实例 1. 实验拓扑图 2. 实验环境 3台CentOS6.4 64bit的服务器. 类型 IP DR eth0:10.20.73.20  VIP eth0:0 10.20.73.3 ...

  4. lvs负载均衡(DR模式)

    lvs负载均衡(DR模式) 系统环境:lvs+keepalivedcentos7.5 ip:192.168.1.157 vip:192.168.1.150(主)centos7.5 ip:192.168 ...

  5. LVS负载均衡DR模式实现

    LVS负载均衡之DR模式配置 DR 模式架构图: 操作步骤 实验环境准备:(centos7平台) 所有服务器上配置 # systemctl stop firewalld //关闭防火墙 # sed - ...

  6. LVS跨网段DR模式并使用ldirectord实现RS高可用性

    DR模型的工作过程: Client向VIP发起请求,请求被路由器接收到,转发给不同网段的Director的VIP,Director再通过私有网络转给RS服务器,RS服务器处理请求并通过自身配置的VIP ...

  7. LVS+keepalived 的DR模式的两种做法

    LVS DR模式搭建 准备工作 三台机器: dr:192.168.13.15 rs1:192.168.13.16 rs2: 192.168.13.17 vip:192.168.13.100 修改DR上 ...

  8. 借助LVS+Keepalived通过DR模式实现负载均衡

    1.测试环境4台server,全部初始化一下,该关的关了 # vim /etc/hosts 192.168.1.101 lvs-master DIP 192.168.1.102 lvs-slave D ...

  9. LVS负载均衡DR模式部署

    目录: 1. 拓扑图 2. 搭建环境 3. LVS服务器部署 4. 测试 1. 拓扑图     LVS-DR模式采的IP地址全部为外网IP.    本例中IP的设置全部采用临时设置IP的方式,重启后会 ...

随机推荐

  1. thymeleaf中double/float格式化,四舍五入显示两位小数

    private Float balance; 代码: <span class="A124_balance_num" th:text="${#numbers.form ...

  2. Redis键通知机制

    Redis键通知机制 一.概念 自从redis2.8.0以后出了一个新特性,Keyspace Notifications 称为“键空间通知”. 这个特性大概是,凡是实现了Redis的Pub/Sub的客 ...

  3. Java使用Apache Commons Net的FtpClient进行下载时会宕掉的一种优化方法

    在使用FtpClient进行下载测试的时候,会发现一个问题,就是我如果一直重复下载一批文件,那么经常会宕掉. 也就是说程序一直停在那里一动不动了. 每个人的情况都不一样,我的情况是因为我在本地之前就有 ...

  4. Java测试当前应用所占用的内存示例

    package test; import java.util.HashMap; import java.util.Map; public class TestMemory { public stati ...

  5. Unity接入九游SDK学习与踩坑

    学习之路漫漫,应修之期远兮.持之以恒,方得始终. 这几日接入九游SDK,于浑浑噩噩中成长. 下面是步骤: 一:下载九游SDK 二:打开Android Studio新建一个工程,并且新建一个Androi ...

  6. QT信号槽连接

    一:信号槽是什么? Qt的信号和槽机制是Qt的一大特点,实际上这是和MFC中的消息映射机制相似的东西,要完成的事情也差不多,就是发送一个消息然后让其它窗口响应,当然,这里的消息是广义的说法,简单点说就 ...

  7. K8S从入门到放弃系列-(11)kubernetes集群网络Calico部署

    摘要: 前面几个篇幅,已经介绍master与node节点集群组件部署,由于K8S本身不支持网络,当 node 全部启动后,由于网络组件(CNI)未安装会显示为 NotReady 状态,需要借助第三方网 ...

  8. ftp操作命令

    原文:https://www.cnblogs.com/tssc/p/9593614.html 1.登陆ftp服务器 ftp [IP] [PORT] # 登陆ftp服务器,本机登陆可以不写IP实例演示: ...

  9. laravel6.0路由

    1.基本路由路由定义在routes目录下,路由执行是在控制器之前,路由路径 routes目录下api.php 关于接口路由定义文件包含的路由位于 api 中间件组约束之内,支持频率限制功能,这些路由是 ...

  10. Python split()方法分割字符串

    Python 中,除了可以使用一些内建函数获取字符串的相关信息外(例如 len() 函数获取字符串长度),字符串类型本身也拥有一些方法供我们使用. 注意,这里所说的方法,指的是字符串类型 str 本身 ...