LVS NAT模式简介

LVS 简称 Linux Virtual Server,在实际环境中经常作为B/S结构的网络应用中的负载均衡器来使用,工作在7层网络模型中的,网络层,也就是通常说的IP层,由于数据的处理是在Linux内核态完成的,所以性能很高,比起 Apache,Nginx,Haproxy来说,性能不在一个级别。

 

这里我简单画一下LVS在应用时的部署环境:

 

LVS

 

简单解释一下一个用户访问www.opencfg.com的流程:

 

1.用户在浏览器输入http://www.opencfg.com, 用户的电脑通过网络询问DNS,www.opencfg.com域名的IP地址

2.DNS服务器通过用户的地址,在服务器列表里选择一个距离用户最近的LVS虚拟服务IP地址(VIP)

3.用户浏览器通过DNS获得的IP地址,访问LVS服务器

4.这里有三种LVS的使用方法:

(1).NAT模式

(2).DR模式,直接路由

(3).TUN模式,IP隧道

5.如果采用NAT模式,那么会产生步骤5,web服务器将数据返回给LVS

6.如果采用DR/TUN模式,数据将由web服务器直接返回给用户(此时web服务器需要外网IP地址),NAT模式,是web服务器先返回给LVS(这里web服务器不需要外网IP), LVS再返回给用户

 

 

LVS的核心技术在与三种方法的使用,这里先介绍第一种模式,NAT

 

一、传统的NAT模式

 

LVS NAT模式

 

用户访问的步骤如上图,其中LVS NAT模式会根据一张调度列表,选择一个Apache的IP地址,将数据包转发

 

调度列表如下:

 

ProtocolVirtual IP AddressPortReal IP AddressPort
TCP 74.125.71.9980192.168.1.20180
192.168.1.20280

 

 

访问Web服务的报文可能有以下的源地址和目标地址:

source220.181.112.143:3879dest74.125.71.99:80

 

LVS从调度列表中选出一台服务器,例如是192.168.1.201:80。该报文的dest目标地址将会被改写为192.168.1.201:80,并将它发送给选出的Apache Server

source220.181.112.143:3879dest192.168.1.201:80

 

从Apache Server返回到LVS的响应报文如下:

source192.168.1.201:80dest220.181.112.143.3879

 

这里source地址是Apache Server所在的内网地址,响应报文的源地址会被改写为LVS的地址74.125.71.99:80,再将报文发送给用户

source74.125.71.99:80dest220.181.112.143.3879

 

这样,用户认为是从LVS(74.125.71.99:80)得到正确的响应,而不会知道该请求是Apache Server 192.168.1.201还是服务器Apache Server 192.168.1.202处理的,从而完成了内网地址与外网地址的转换。

 

NAT模式的最大的优点在于:

 

1.节省外网IP

    不占用外网IP地址,对于IPV4地址短缺的现状,是个不错的选择。

2.非侵入性

   不需要对Apache Server做任何设置,只需要一个内网IP地址即可,对用户来说,内部的Apache Server是透明的

   还有一点很重要,在NAT模式工作的LVS的Linux系统上不需要修改MTU的大小,完全输入一种非侵入式,轻量级的

   做法。

3.安全性

   NAT的网络结构呈现为一种类似防火墙的私有网结构,通过内部IP地址,将服务结点池

   同互联网隔离开来。服务结点无法和客户端直接通信,不论是请求数据还是应答数据,都需要经过负载均衡器进行IP

   包处理工作,方便一些集中处理操作。

 

NAT模式的缺点在于:

 

要对进入和流出集群的网络包进行改写包头地址的工作,在负荷比较重的时候会影响整个集群的性能,负载均衡器容易成为瓶颈。

 

为了解决NAT模式出现瓶颈,可以使用DR与TUN模式改造,下次有时间再写。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值