实验环境:4台虚拟机,安装CentOS6.5系统。实验前注意要将各虚拟机的防火墙规则都改为Permissive,关闭selinux,时间同步。模拟时,DIP和RIP在同一个网段,与VIP不在同一个网段。

实验用拓扑图:

LVS DR模型的实现模拟

先说一下自己的实验中的感受:在实际的应用中,如果这种应用确实可行的话,实验中的Director和Router两个设备实际上应该是一个设备,很多时候会是一个多接口的防火墙设备,可以配置多个公网IP地址同时具有多个内网接口,用于与内网的不同网段之间的主机通信使用。

设备配置,(各虚拟机的网络连接方式都使用的hostonly,且每个主机都只有一个网卡):

Router:配置IP:eth0:172.16.103.2(作为外网路由IP使用),eth0:0:192.168.0.1(作为内网两台RealServer的网关);

Director:eth0:192.168.0.4(DIP),172.16.103.10(VIP);
RS1:eth0:192.168.0.2(RIP),172.16.103.10(VIP);
RS2:eth0:192.168.0.3(RIP),172.16.103.10(VIP);


Router的配置:

# ifconfig eth0 172.16.103.2/16 up
# ifconfig eth0:0 192.168.0.1/24 up
# echo 1 > /proc/sys/net/ipv4/ip_forward


Director的配置:

# ifconfig eth0 192.168.0.4/24 up
# ifconfig eth0:0 172.16.103.10/16 up
# echo 1 > /proc/sys/net/ipv4/ip_forward
# yum -y install ipvsadm
# ipvsadm -A -t 172.16.103.10:80 -s rr
# ipvsadm -a -t 172.16.103.10:80 -r 192.168.0.2 -g
# ipvsadm -a -t 172.16.103.10:80 -r 192.168.0.3 -g


RS1的配置:

# ifconfig eth0 192.168.0.2/24 up
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
# ifconfig lo:0 172.16.103.10 netmask 255.255.255.255 broadcast 172.16.103.10 up
# route add -host 172.16.103.10 dev lo:0
# route add default gw 192.168.0.1   #将路由的内网接口作为网关,转发数据报文使用
# yum -y install httpd
# cd /var/www/html
# vim index.html  ;编辑一个html默认首页,文件内容,内容为<h1>node1</h1>测试使用
# service httpd start


RS2的配置:

# ifconfig eth0 192.168.0.3/24 up
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
# ifconfig lo:0 172.16.103.10 netmask 255.255.255.255 broadcast 172.16.103.10 up
# route add -host 172.16.103.10 dev lo:0
# route add default gw 192.168.0.1   #将路由的内网接口作为网关,转发数据报文使用
# yum -y install httpd
# cd /var/www/html
# vim index.html  ;编辑一个html默认首页,文件内容,内容为<h1>node1</h1>测试使用,与RS1配置的页面内容不一致,在测试时可以测试负载均衡的效果。
# service httpd start


实验测试:

使用一台安装windows操作系统的客户机,配置IP地址与Router的外网地址在同一网段内,比如172.16.0.3,在浏览器内测试效果如下:

LVS DR模型的实现模拟刷新之后,显示的页面会显示为:

LVS DR模型的实现模拟