lvs tun模式

LVS/TUN的连接调度和管理与 LVS/NAT 中的一样,只是它的报文转发方法不同。调度器根据各个服务器的负载情况,动态地选择一台服务器,将请求报文封装在另一个IP报文中,再将封装后的IP报文转发给选出的服务器;服务器收到报文后,先将报文解封获得原来目标地址为VIP的报文,服务器发现VIP地址被配置在本地的IP隧道设备上,所以就处理这个请求,然后根据路由表将响应报文直接返回给客户。

以上介绍来自于互联网

看一下我们的测试小案例: 

tun_server:

eth0:192.168.1.241

eth1: 10.0.2.20

vip:192.168.1.204

 

real_server1:

eth0:192.168.1.229

eth1:10.0.2.22

 

real_server2:

eth0:192.168.1.224

eth1:10.0.2.23

 

对vip访问通过点对点的方式传递给realserver,然后由realserver直接返回给客户端

tun_server配置:

XML/HTML代码

  1. # cat lvs_tun.sh   

  2. #!/bin/bash  

  3. vip=192.168.1.204  

  4. RS1=192.168.1.229  

  5. RS2=192.168.1.224  

  6. ifconfig tunl0 $vip broadcast $vip netmask 255.255.255.255  

  7. route add -host $vip dev tunl0  

  8. echo "0" >/proc/sys/net/ipv4/ip_forward  

  9. echo "1" >/proc/sys/net/ipv4/conf/all/send_redirects  

  10. echo "1" >/proc/sys/net/ipv4/conf/default/send_redirects  

  11. echo "1" >/proc/sys/net/ipv4/conf/eth0/send_redirects  

  12. ipvsadm -C  

  13. ipvsadm -A -t $vip:80 -s wlc  

  14. ipvsadm -a -t $vip:80 -r $RS1 -i  

  15. ipvsadm -a -t $vip:80 -r $RS2 -i  

  16. /etc/init.d/ipvsadm save  

  17. /etc/init.d/ipvsadm restart  

real_server配置:

XML/HTML代码

  1. # cat tun.sh   

  2. #!/bin/bash  

  3. vip=192.168.1.204  

  4. ifconfig tunl0 $vip broadcast $vip netmask 255.255.255.255 up  

  5. echo '0' > /proc/sys/net/ipv4/ip_forward  

  6. echo '1' > /proc/sys/net/ipv4/conf/tunl0/arp_ignore  

  7. echo '2' > /proc/sys/net/ipv4/conf/tunl0/arp_announce  

  8. echo '1' > /proc/sys/net/ipv4/conf/all/arp_ignore  

  9. echo '2' > /proc/sys/net/ipv4/conf/all/arp_announce  

  10. echo '0' > /proc/sys/net/ipv4/conf/tunl0/rp_filter  

  11. echo '0' > /proc/sys/net/ipv4/conf/all/rp_filter  

注意,虚拟机上测试时,realserver的防火墙一定要关闭!


你可能感兴趣的:(LVS,TUN)