LVS的NAT模式

回复 收藏

准备3台机器,分别为 dr  rs1 rs2 其中dr双网卡其中eth0使用虚拟机nat模式,dr的eth1使用桥接模式

dr     eth0 192.168.1.10       eth1  192.168.0.106 [桥接自动获取的]rs1    

eth0 192.168.1.20rs2    eth0 192.168.1.30

把dr的 eth1看成公网ip

三台eth0内网ip

dr安装ipvsadm   yum install ipvsadm -y

写个脚本 vim /usr/local/sbin/lvs_nat.sh

#!/bin/bash#director服务器开启路由转发功能

echo 1 > /proc/sys/net/ipv4/ip_forward

#关闭icmp的重定向echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/eth1/send_redirects

#director设置NAT防火墙iptables -t nat -Fiptables -t nat -Xiptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE

#director设置

ipvsadmipvsadm='/sbin/ipvsadm

'$ipvsadm -C$ipvsadm -A -t 192.168.0.106:80 -s rr

$ipvsadm -a -t 192.168.0.106:80 -r 192.168.1.20:80 -m

$ipvsadm -a -t 192.168.0.106:80 -r 192.168.1.30:80 -m

执行脚本 然后

[root@dir ~]# ipvsadm -lnIP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddressort Scheduler Flags  -> RemoteAddressort           Forward Weight ActiveConn InActConnTCP  192.168.0.106:80 wrr 

 -> 192.168.1.20:80              Masq    2      0          0          

 -> 192.168.1.30:80              Masq    1      0          0  

可以得到 rs1和rs2的ip此时我们去配置rs1和rs22台机器的网关都要改成dr的eth0的ip

然后重启网卡 ifdown eth0; ifup eth0

因为2台rs我之前都装过nginx,所以直接启动nginx

[root@rs1 ~]# curl localhostrs11111111111111

[root@rs2 ~]# curl localhostrs222222222222222222222

curl第一次rs1第二次rs2,

浏览器的话可能有缓存不好测试,curl还是很好的

[root@dir ~]# curl 192.168.0.106

rs11111111111111

[root@dir ~]# curl 192.168.0.106

rs222222222222222222222

curl第一次rs1第二次rs2,

浏览器的话可能有缓存不好测试,curl还是很好的

如果我们想他2次rs1   1次rs2的话改下dr的脚本

$ipvsadm -A -t 192.168.0.106:80 -s wrr

$ipvsadm -a -t 192.168.0.106:80 -r 192.168.1.20:80 -m -w 2

$ipvsadm -a -t 192.168.0.106:80 -r 192.168.1.30:80 -m -w 1

测试[root@dir ~]# curl 192.168.0.106rs11111111111111

[root@dir ~]# curl 192.168.0.106rs11111111111111

[root@dir ~]# curl 192.168.0.106rs222222222222222222222

[root@dir ~]# curl 192.168.0.106rs11111111111111

[root@dir ~]# curl 192.168.0.106rs11111111111111

[root@dir ~]# curl 192.168.0.106rs222222222222222222222    

2016-09-26 18:56 举报
已邀请:

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: