LVS-NAT模型:
工作原理:将内部地址转化为Internets上可用的外部地址。NAT的工作原理是报文头(目标地址、源地址和端口等)被正确改写后,客户相信它们连接一个IP地址,而不同IP地址的服务器组也认为它们是与客户直接相连的。由此,可以用NAT方法将不同IP地址的并行网络服务变成在一个IP地址上的一个虚拟服务。
实验环境:3台虚拟机,其中一台做Director Server配备2个网卡,另外2台是Real Server
操作步骤:
一:在Real Server上:
1:RIP1:# ifconfig eth0 172.16.100.101/24 --->配置Real Server 1的IP地址
2:RIP1:# route add default gw 172.16.100.100 -->指定默认网关为Director Server的DIP
3:RIP1:# vim /var/www/html/index.html
4:RIP1:# service httpd start ---> 启动http服务。
5:RIP2:# ifconfig eth0 172.16.100.102/24
6:RIP2:# route add default gw 172.16.100.100
7:RI2:# vim /var/www/html/index.html
8:RIP2:# service httpd start
二:在Director Server上:
1:# yum -y install ipvsadm --->安装ipvs的rpm包
1:# ifconfig eth1 172.16.100.100/24 --->配置DIP
2:# ifconfig eth0 192.168.0.109/24 --->配置VIP
3:# vim /etc/sysctl.conf --->启动路由转发功能
4:# sysctl -p --->让修改的路由转发立即生效
5:# ipvsadm -A -t 192.168.100.100:80 -s rr --->添加集群服务
6:# ipvsadm -a -t 192.168.0.109:80 -r 172.16.100.101 -m --->把两个主机添加到集群服务
7:# ipvsadm -a -t 192.168.0.109:80 -r 172.16.100.102 -m
验证:
1:LVS-DR模型之
工作原理:调度器根据各个服务器的负载情况,动态地选择一台服务器,不修改也不封装IP报文,而是将数据帧的MAC地址改为选出服务器的MAC地址,再将修改后的数据帧在与服务器组的局域网上发送。因为数据帧的MAC地址是选出的服务器,所以服务器肯定可以收到这个数据帧,从中可以获得该IP报文。当服务器发现报文的目标地址VIP是在本地的网络设备上,服务器处理这个报文,然后根据路由表将响应报文直接返回给客户。
(1)DIP、VIP、RIP、处于同一网段:
拓扑图:
实验环境:3台虚拟机,其中一台做Director Server配备2个网卡,另外2台是Real Server
Director Server:配置:
# ifconfig eth0:0 192.168.2.100/24 --->配置VIP # vim /etc/sysctl.conf --->配置转发 net.ipv4.ip_forward = 1 # sysctl -p
Real Server的配置:
修改2个内核参数: # echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore # echo 1 > /proc/sys/net/ipv4/conf/etho/arp_ignore # echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce # echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce 配置VIP 禁止广播,禁止响应 # ifconfig lo:0 192.168.2.100 netmask 255.255.255.255 broadcast 192.168.2.100 up 配置转发接口 # route add -host 192.168.2.100 dev lo:0 开启httpd服务,并提供测试页面 # service httpd start # vim /var/www/html/index.html <h1>This is web1 </h1>
验证:
三:LVS-TUN:
工作原理:是将一个IP报文封装在另一个IP报文的技术,这可以使得目标为一个IP地址的数据报文能被封装和转发到另一个IP地址。IP隧道技术亦称为IP封装技术
实验拓扑:
Real Server
修改内核参数:
[[email protected] ~]# cat /proc/sys/net/ipv4/conf/all/arp_ignore 1 [[email protected] ~]# cat /proc/sys/net/ipv4/conf/eth0/arp_ignore 1 [[email protected] ~]# cat /proc/sys/net/ipv4/conf/eth0/arp_announce 2 [[email protected] ~]# cat /proc/sys/net/ipv4/conf/all/arp_announce 2
指定默认网关:
[[email protected] ~]# route add default gw 172.16.20.13 [[email protected] ~]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface link-local * 255.255.0.0 U 1002 0 0 eth0 172.16.0.0 * 255.255.0.0 U 0 0 0 eth0 default 172.16.20.13 0.0.0.0 UG 0 0 0 eth0
配置VIP并指定转发机制:
[[email protected] ~]# ifconfig lo:0 192.168.2.200 netmask 255.255.255.255 broadcast 192.168.2.200 up [[email protected] ~]# route add -host 192.168.2.200 dev lo:0
开启httpd服务,提供测试页面并测试
Director Servver配置:
# yum -y install ipvsadm # ipvsadm start # echo 1 > /proc/sys/net/ipv4/ip_forward # ifconfig eth0:0 192.168.2.200/24 up # ipvsadm -A -t 192.168.2.200:80 -s rr # ipvsadm -a -t 192.168.2.200:80 -r 172.16.20.11 -i # ipvsadm -a -t 192.168.2.200:80 -r 172.16.20.12 -i # ipvsadm -L -n