LVS NAT原理、配置

一、lvs原理:

经典流传的图解
LVS NAT原理、配置
请求流:
cip------>vip|(ipvs将源为cip---vip 更改为 cip---rip) -----rs01_realip
返回包:
rip----->dr(cip--cip, 更替为vip--cip ) -------cip

二、主机配置

dr配置 主机名

hostname lvs01

关闭防火墙
LVS NAT原理、配置

加载内核
modprobe ip_vs
LVS NAT原理、配置

安装ipvsadm的管理工具

yum install ipvsadm

开启路由转发

 vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -p

清除所有ipvs的记录

ipvsadm -C

nat配置

iptables -t nat -F
iptables -t nat -X
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE

主机信息:

lvs01 ip地址为:
外网eth0: 172.17.181.216
内网eth1:  10.0.0.179

rs01 ip地址为:
内网eth1: 10.0.0.180

三、lvs集群配置

1) realserver内网默认路由需要指向dr-server,并且realserver建议是单网卡:
安装httpd

yum install httpd -y && systemctl start httpd

添加rs的路由
LVS NAT原理、配置

2) 创建虚拟服务器,监听tcp端口80,使用轮训模式 rr
[root@lvs01 ~]# ipvsadm -A -t 172.17.181.216:80 -s rr
[root@lvs01 ~]# ipvsadm -Ln
LVS NAT原理、配置

3) 挂载后端rs-server (rs已开启http),正式环境脚本化

ipvsadm -a -t 172.17.181.216:80 -r 10.0.0.180:80 -m

LVS NAT原理、配置
ipvsadm语法:
"-A"表示添加虚拟服务器,
"-a"表示添加真实服务器
"-t"用来指定VIP地址及TCP端口
"-r"用来指定RIP地址及TCP端口
"-s"用来指定负载调度算法——rr(轮询)、wrr(加权轮询)、lc(最少连接)、wlc(加权最少连接)
"-m"表示使用NAT群集模式("-g"是DR模式,"-i"是TUN模式)

四、验证

LVS NAT原理、配置
已有访问产生
LVS NAT原理、配置

五、抓包分析

在dr上抓外网、内网的包,并在c端发起请求:

tcpdump -i eth0 -vnn port 80 -w /root/a.cap
tcpdump -i eth1 -vnn port 80 -w /root/b.cap

依据原理,每次新的请求都伴随cip到rip的改写:
LVS NAT原理、配置

上一篇:再论跳槽的能力


下一篇:Linux/Centos: LVS负载均衡(LVS简介、三种工作模式、十种调度算法)