########

TUN是IP Tunneling ,IP隧道的简称,它将调度器收到的IP数据包封装在一个新的IP数据包中,转交给应用服务器,然后实际服务器的返回数据会直接返回给用户。

工作原理:

用户请求负载均衡服务器,当IP数据包到达负载均衡服务器后,根据算法选择一台真实的服务器,然后通过IP隧道技术将数据包原封不动再次封装,并发送给真实服务器,当这个数据包到达真实服务器以后,真实服务器进行拆包(拆掉第一层的IP包)拿到里面的IP数据包进行处理,然后将结果直接返回给客户端。

实验配置:

此实验需用到3台虚拟机和一台物理机

server1(directorserver):172.25.8.1

server2(realserver):172.25.8.2

server3(realserver):172.25.8.3

vip:172.25.8.100

server1:

[root@server1 ~]# ifconfig tunl0 172.25.8.100 netmask 255.255.255.255 up        ##创建tunl0 ip,并让其自己独处一个网段

[root@server1 ~]# route add -host 172.25.8.100 dev tunl0
[root@server1 ~]# ipvsadm -C
[root@server1 ~]# ipvsadm -A -t 172.25.8.100:80 -s rr
[root@server1 ~]# ipvsadm -a -t 172.25.8.100:80 -r 172.25.8.2:80 -i
[root@server1 ~]# ipvsadm -a -t 172.25.8.100:80 -r 172.25.8.3:80 -i
[root@server1 ~]# ipvsadm -Ln

ip addr

server2:

yum install httpd

/etc/init.d/httpd start

[root@server2 ~]# ifconfig tunl0 172.25.8.100 netmask 255.255.255.255 up
[root@server2 ~]# route add -host 172.25.8.100 dev tunl0
[root@server2 ~]# echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
[root@server2 ~]# echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
[root@server2 ~]# echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@server2 ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
ip addr

server3:

yum install httpd

/etc/init.d/httpd start

[root@server3 ~]# ifconfig tunl0 172.25.8.100 netmask 255.255.255.255 up
[root@server3 ~]# route add -host 172.25.8.100 dev tunl0
[root@server3 ~]# echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
[root@server3 ~]# echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
[root@server3 ~]#  echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@server3 ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
ip addr

测试:

curl 172.25.8.100
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server2-tun</h1>
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server3-tun</h1>
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server2-tun</h1>
[kiosk@foundation8 Desktop]$ curl 172.25.8.100
<h1>server3-tun</h1>

Lvs Tun隧道模式配置的更多相关文章

  1. LVS三种模式配置及优点缺点比较

    目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种(LVS-DR,LVS-NAT,LVS-TUN)模式的简要配置 LVS是什么: http://www.lin ...

  2. LVS三种模式配置及优点缺点比较 转

    LVS三种模式配置及优点缺点比较   作者:gzh0222,发布于2012-11-12,来源:CSDN   目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种 ...

  3. lvs中dr模式配置脚本

    1 dr模式介绍 1.1 lvs的安装 安装具体解释:http://blog.csdn.net/CleverCode/article/details/50586957. 1.2 lvs模式 lvs有三 ...

  4. LVS+keepalived DR模式配置高可用负载均衡集群

    实验环境 LVS-Master 10.0.100.201 VIP:10.0.100.203 LVS-Slave       10.0.100.204 WEB1-Tomcat 10.0.2.29 gat ...

  5. LVS的DR模式配置

    一.基本规划负载均衡调度器    192.168.1.104    默认网关    192.168.1.1    ip别名    192.168.1.233realserver1    192.168 ...

  6. Lvs Keepalive DR模式高可用配置

    Lvs Keepalive DR模式配置 一.环境 #DIP# eth0:192.168.233.145#VIP# eth0:0 192.168.233.250/32 #RIP1:192.168.23 ...

  7. 虚拟集群LVS及DR模式搭建笔记

    LVS(虚拟集群Linux Virtual Server) LVS-NAT:地址转换,数据包来回都要经过NAT转换,所以Director Server(即LVS服务器)将成为系统瓶颈.使用NAT模式将 ...

  8. LVS负载均衡IP隧道模式原理介绍以及配置实战

    LVS 基本工作原理 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 PREROUTING 链首先会接收到用户请求,判断目标 IP 确定是本机 IP,将数 ...

  9. Linux中级之lvs三个模式的图像补充(nat,dr,tun)

    负载均衡(Load Balance)集群提供了一种廉价.有效.透明的方法,来扩展网络设备和服务器的负载.带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用性. (1)单台计算机无法承受大规 ...

随机推荐

  1. redis的特性

  2. Android禁止程序自动旋转的配置

    在想要禁止的Activity中加入 android:screenOrientation="portrait" 属性,其中,portrait是竖屏,landscape是横屏

  3. zabbix启动web界面提示:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

    问题 zabbix启动web界面提示: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' ( ...

  4. CF 959E Mahmoud and Ehab and the xor-MST

    第一反应是打表找规律……(写了个prim)但是太菜了没找到 于是开始怀疑是不是我的表错了,又写了一个克鲁斯卡尔,然后结果是一样的……(捂脸) 后来从克鲁斯卡尔的算法上发现了一点东西,发现只有2的幂次长 ...

  5. JButton ButtonClickTest

    package com.example.test; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing. ...

  6. lua遍历文件

    看了不少人的,主要还是错误处理有点问题,不多说了 贴代码: require "lfs" function getpathes(rootpath, pathes) pathes = ...

  7. 在ubuntu 14.04 编译android 2.3.1 错误解决办法

    首先必须降低gcc版本: sudo apt-get install gcc-4.4sudo apt-get install g++-4.4sudo rm -rf /usr/bin/gcc /usr/b ...

  8. 在eclipse中使用hadoop插件

    我的配置环境看我的上篇博文. 配置过程: (1)把插件放到eclipse/plugins目录下.(我的版本上一篇也有) )重启eclipse,配置Hadoop installation directo ...

  9. java基础之开发环境配置

    一. 环境变量配置的原理 一.  配置环境变量path 如果我们按照上面的来编译和运行的话未免太过于麻烦了,那么在这里我们可以配置环境变量PATH 1.配置环境变量的步骤 这时可以直接来看效果 如果d ...

  10. js对象的深浅拷贝

    JS数据类型可以分为(ES5,暂时不考虑ES6): 简单数据类型:Number.String.undefined.boolean 复杂数据类型:Object.Array 简单的数据类型,往往是赋值操作 ...