Tum模式

Tum模式

Server1 

[root@server1 ~]# modprobe ipip

[root@server1 ~]# ip addr add 172.25.77.100/24 dev tunl0

[root@server1 ~]# ip link set up tunl0

[root@server1 ~]# ipvsadm -C

[root@server1 ~]# ipvsadm -A -t 172.25.177.100:80 -s rr

[root@server1 ~]# ipvsadm -C

[root@server1 ~]# ipvsadm -l

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn

[root@server1 ~]# ipvsadm -A -t 172.25.77.100:80 -s rr

[root@server1 ~]# ipvsadm -a -t 172.25.77.100:80 -r 172.25.77.2:80 -i

[root@server1 ~]# ipvsadm -a -t 172.25.77.100:80 -r 172.25.77.3:80 -i

[root@server1 ~]# ipvsadm -l

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  172.25.77.100:http rr

  -> server2:http                 Tunnel  1      0          0         

  -> server3:http                 Tunnel  1      0          0

 

[root@server1 ~]# route add -host 172.25.77.100 dev tunl0

 

 

Server2

 

 

[root@server2 ~]# modprobe ipip

[root@server2 ~]# ip link set up tunl0

[root@server2 ~]# ip addr add 172.25.77.100/24 dev tunl0

[root@server2 ~]# route add -host 172.25.77.100 dev tunl0

[root@server2 ~]# sysctl -a | grep rp_filter

net.ipv4.conf.all.rp_filter = 0

net.ipv4.conf.all.arp_filter = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.arp_filter = 0

net.ipv4.conf.lo.rp_filter = 1

net.ipv4.conf.lo.arp_filter = 0

net.ipv4.conf.eth0.rp_filter = 1

net.ipv4.conf.eth0.arp_filter = 0

net.ipv4.conf.tunl0.rp_filter = 1

net.ipv4.conf.tunl0.arp_filter = 0

 

[root@server2 ~]# /etc/init.d/arptables_jf start

[root@server2 ~]# /etc/init.d/httpd start

[root@server2 ~]# vim /etc/sysctl.conf

[root@server2 ~]# echo '0' > /proc/sys/net/ipv4/ip_forward

[root@server2 ~]# sysctl -p

[root@server2 ~]# sysctl -a | grep rp_filter

net.ipv4.conf.all.rp_filter = 0

net.ipv4.conf.all.arp_filter = 0

net.ipv4.conf.default.rp_filter = 0

net.ipv4.conf.default.arp_filter = 0

net.ipv4.conf.lo.rp_filter = 0

net.ipv4.conf.lo.arp_filter = 0

net.ipv4.conf.eth0.rp_filter = 0

net.ipv4.conf.eth0.arp_filter = 0

net.ipv4.conf.tunl0.rp_filter = 0

net.ipv4.conf.tunl0.arp_filter = 0

写入配置文件

[root@server2 ~]# arptables -L

Chain IN (policy ACCEPT)

target     source-ip            destination-ip       source-hw          destination-hw     hlen   op         hrd        pro       

DROP       anywhere             172.25.77.100        anywhere           anywhere           any    any        any        any       

DROP       anywhere             172.25.77.100        anywhere           anywhere           any    any        any        any       

 

Chain OUT (policy ACCEPT)

target     source-ip            destination-ip       source-hw          destination-hw     hlen   op         hrd        pro       

mangle     172.25.77.100        anywhere             anywhere           anywhere           any    any        any        any       --mangle-ip-s server2 

mangle     172.25.77.100        anywhere             anywhere           anywhere           any    any        any        any       --mangle-ip-s server2 

 

Chain FORWARD (policy ACCEPT)

target     source-ip            destination-ip       source-hw          destination-hw     hlen   op         hrd        pro       

 

 

 

 

Server3 同理

[root@server3 ~]# sysctl -p

[root@server3 ~]# arptables -L

Chain IN (policy ACCEPT)

target     source-ip            destination-ip       source-hw          destination-hw     hlen   op         hrd        pro       

DROP       anywhere             172.25.77.100        anywhere           anywhere           any    any        any        any       

DROP       anywhere             172.25.77.100        anywhere           anywhere           any    any        any        any       

 

Chain OUT (policy ACCEPT)

target     source-ip            destination-ip       source-hw          destination-hw     hlen   op         hrd        pro       

mangle     172.25.77.100        anywhere             anywhere           anywhere           any    any        any        any       --mangle-ip-s server2 

mangle     172.25.77.100        anywhere             anywhere           anywhere           any    any        any        any       --mangle-ip-s www.westos.org 

 

Chain FORWARD (policy ACCEPT)

target     source-ip            destination-ip       source-hw          destination-hw     hlen   op         hrd        pro       

 

 

 

 

客户端

 

[root@foundation77 ~]# curl 172.25.77.100

www.westos.org - server2

[root@foundation77 ~]# curl 172.25.77.100

www.westos.org - server 3

 

 

 

 

 

 

 

NAT/DR/IPIP比较

模式与特点

NAT模式

IPIP模式

 DR模式

对服务器的要求

服务节点可以使任何操作系统

必须支持IP隧道,目前只有Linux系统支持

服务器节点支持虚拟网卡设备,能够禁用设备的ARP响应

网络要求

拥有私有IP地址的局域网络

拥有合法IP地址的局域,网或广域网

拥有合法IP地址的局域,服务器节点与负载均衡器必须在同一个网段

通常支持节点数量

10到20个,根据负载均衡器的处理能力而定

较高,可以支持100个服务节点

较高,可以支持100个服务节点

网关

负载均衡器为服务器节点网关

服务器的节点同自己的网关或者路由器连接,不经过负载均衡器

服务节点同自己的网关或者路由器连接,不经过负载均衡器

服务节点安全性

较好,采用内部IP,服务节点隐蔽

较差,采用公用IP地址,节点安全暴露

较差,采用公用IP地址,节点安全暴露

IP要求

仅需要一个合法的IP地址作为VIP地址

除了VIPO地址外,每个服务器界定啊需要拥有合法的IP地址,可以直接从路由到客户端

除了VIP外,每个服务节点需拥有合法的IP地址,可以直接从路由到客户端

特点

地址转换

封装IP

修改MAC地址

配置复杂度

简单

复杂

复杂

TUN模式的概述与工作原理

TUN模式服务概述:

     IP Tunneling(IP隧道) --可以在不同地域,不同网段

     Director分配请求到不同的real server。real server处理请求后直接回应给用户,这样director负载均衡器仅处理客户机与服务器的一半连接。IP Tunneling技术极大地提高了director的调度处理能力,同时也极大地提高了系统能容纳的最大节点数,可以超过100个节点。real server可以在任何LAN或WAN上运行,这意味着允许地理上的分布,这在灾难恢复中有重要意丿。服务器必须拥有正式的公网IP地址用于不客户机直接通信,并且所有服务器必须支持IP隧道协议。 

 

LVS DR 模式工作原理: 封装IP

virtual server via ip tunneling模式:采用NAT模式时,由于请求和响应的报文必须通过调度器地址重写,当客户请求越来越多时,调度器处理能力将成为瓶颈。为了解决这个问题,调度器把请求的报文通过IP隧道广播转发到真实的服务器。真实的服务器将响应处理后的数据直接返回给客户端。这样调度器就只处理请求入站报文,由于一般网络服务应答数据比请求报文大很多,采用VS/TUN模式后,集群系统的最大吞吐量可以提高10倍。
VS/TUN 的工作流程图如下所示,它和NAT模式不同的是,它在LB和RS之间的传输不用改写IP地址。而是把客户请求包封装在一个IP tunnel里面,然后发送给RS节点服务器,节点服务器接收到之后解开IP tunnel后,进行响应处理。并且直接把包通过自己的外网地址发送给客户不用经过LB服务器。
Tunnel原理流程图:

   DR方式是通过MAC,规模是一个交换网络。而TUN方式,是通过给数据包加上新的IP头部来实现

一:实验目标

1:正确理解TUN的工作原理  

2:使用LVS+TUN搭建集群实现负载均衡

3:使用webbench测试LVS-TUN集群性能 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值