LVS-NAT模式
NAT模式工作原理
1、客户端发送请求访问web主机,先将请求发送到同处于公网的LVS的10.0.0.5上,此时sip就是10.0.0.9,dip就是10.0.0.5
2、LVS调度器接收到来自客户端的请求后,会将,dip10.0.0.5转换成内网的dip172.16.1.7/8,源sip保持不变
3、web服务器接收到客户端的请求后做响应,将数据包发给客户端,此时的源sip就是172.16.1.7,目标ip10.0.0.9
4、LVS接收到返回给客户端的数据包后,将源sip172.16.1.7转换成公网地址10.0.0.5发送数据包给客户端
环境准备
LVS 外网:10.0.0.5/24 内网:172.16.1.5/24
web01:172.16.1.7/24
web02:172.16.1.8/24
client:10.0.0.9
Client客户端
1、配置一条去往内网的静态路由
临时配置,重启即消失
route add -net 172.16.1.0/24 gw 10.0.0.5
永久配置
vim /etc/rc.local
route add -net 172.16.1.0/24 gw 10.0.0.5
web端配置
1、安装httpd
yum -y install httpd
2、定义网页内容
echo web1 > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
3、配置真实服务器的网络出口位置
临时配置
route add -net 10.0.0.0/24 gw 172.16.1.5
永久配置
vim /etc/rc.local
route add -net 10.0.0.0/24 gw 172.16.1.5
LVS调度器配置
1、开启LVS的路由转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward
2、安装ipvsadm
yum -y install ipvsadm
3、配置LVS集群
ipvsadm -C #清空所有规则
ipvsadm -A -t 10.0.0.5:80 -s rr #定义LVS服务,并指定负责均衡策略为rr,即轮询;
ipvsadm -a -t 10.0.0.5:80 -r 172.16.1.7:80 -m #添加一台后端web服务器,作为负载均衡节点,并指定为NAT模式
ipvsadm -a -t 10.0.0.5:80 -r 172.16.1.8:80 -m #添加一台后端web服务器,作为负载均衡节点,并指定为NAT模式
在Client端进行访问测试
[root@Client ~]# elinks --dump http://10.0.0.5
web02
[root@Client ~]# elinks --dump http://10.0.0.5
web01
[root@Client ~]# elinks --dump http://10.0.0.5
web02
[root@Client ~]# elinks --dump http://10.0.0.5
web01
#显示的结果满足轮询策略