NAT模式
    NAT模式通过修改数据包的目的IP地址为RealServer的IP地址,让流量直接到达应用服务器RealServer,这样做的好处是数据包的目的IP就是应用服务器RealServer的IP,因此不需要在RealServer上配置LVS VIP。

lvs 无法转发流量 lvs转发模式_lvs 无法转发流量

· Client发送request到LVS的VIP上
· LVS按照调度算法选择后端RealServer,然后修改Client的request的目的IP地址为RealServer的地址,将请求转发给RealServer
· RealServer收到request包后,发现目的IP是自己的IP,于是处理请求,然后发送reply给LVS
· LVS收到replay包,查询NAT转化表,将replay包发送给客户端;

    LVS的NAT模式下,RealServer服务器最后如果想将数据包回复给客户端,则必须将数据包发往LVS,由LVS经过 SNAT 转化,重新封装数据包,再将数据包发送回客户端。如果后端RealServer服务器回复给客户端的数据包,不经过LVS的NAT转化就直接发送到客户端的话,客户端会直接丢弃,因为响应的数据包源目IP与请求的数据包源目IP并不对应。为了让后台RealServer服务器回程包经过LVS,RealServer服务器需要将网关地址配置为LVS的地址,也就是说RealServer服务器要和LVS在同一个局域网内。

模式

优势

劣势


NAT

1.RealServer服务器直接可获取用户客户端IP;

2.RealServer服务器无需配置LVS的VIP地址;

1.RealServer服务器要和LVS在同一个局域网内;

2.回程经过LVS,转发性能偏低;

DR模式
    DR模式通过修改数据包的目的MAC地址来让流量经过二层转发到达应用服务器RealServer,RealServer直接将应答发给客户端,不在经过LVS,性能比较好。

lvs 无法转发流量 lvs转发模式_网络_02

·  Client发送请求到LVS的VIP上 
·  LVS按照调度算法选择后端RealServer,然后将请求报文的目标MAC地址改为RealServer服务器的MAC地址,
   将请求转发给RealServer
·  RealServer服务器收到报文后,直接将replay包直接发送给Client

    LVS的DR模式下,后端RealServer服务器可以通过三层网络直接将请求发送回客户端,不需要经过LVS,这就最大限度的提供了性能。但是因为LVS在将数据包转发给后端RealServer服务器的时候仅改写了MAC地址,通过mac直接将数据包转发到后端RealServer服务器上,这就要求后端RealServer服务器和LVS服务器要在同个局域网内,否则无法获取MAC地址实现转发。

模式

优势

劣势


DR

1.RealServer服务器直接可获取用户客户端IP;

2.性能高,回程流量不走LVS;

1.LVS必须和RealServer服务器在一个二层网络;

2.RealServer服务器必须配置LVS的VIP;

TUNNEL模式
    TUNNEL隧道模式是LVS和后端RealServer服务器组之间使用IP隧道技术可以将带有源和目标IP地址的数据报文使用新的源和目标IP进行二次封装(即[DIP:RIP]CIP:VIP)。

lvs 无法转发流量 lvs转发模式_IP_03

· Client发送request包到LVS的VIP上
· LVS按照调度算法选择后端RealServer,然后将Client的request包封装到一个新的IP包里,新IP包的目的IP是RealServer的IP,
  然后转发给RealServer
· RealServer收到包后,解封装,取出Client的request包,发现他的目的地址是VIP,而RealServer发现自己配置了VIP这个地址,
  于是处理Client请求,然后将relpy包直接发给Client

    LVS的TUNNEL模式会通过建立隧道来转发数据包,当LVS将请求发送给后端RealServer服务器的时候,会多封装一层IP头部信息,再将数据包发送给后端RealServer服务器,RealServer服务器接收到数据包之后,拆开第一层IP头部报文之后再将请求直接发送回客户端。在这种模式下,后端服务器可以和LVS不在一个网段,可以跨网段通信,这种模式的转发效率虽然没DR模式高,但是隧道模式下,RealServer服务器的扩展能力和冗余性却大大提高了。

模式

优势

劣势



TUNNEL

1.RealServer服务器直接可获取用户客户端IP;

2.LVS和RealServer服务器可以跨域通信,三层可达即可;

3.性能高,回程流量不走LVS;

1.RealServer服务器需要支持IP隧道;

2.RealServer服务器必须配置LVS的VIP;

3.因为多封装一层,转发性能不如DR模式;

FULLNAT模式
    FULLNAT模式是在NAT模式的基础上做一次源地址转换(即SNAT),LVS会修改数据包的源目ip和mac,做SNAT的好处是实现了LVS和RealServer间可以跨 VLAN 通讯,无需像NAT模式那样要求RealServer服务器要和LVS在同一个局域网内。

lvs 无法转发流量 lvs转发模式_网络_04

· Client发送request报文到LVS的VIP上
· LVS通过调度算法选择RealServer,然后修改Client的request报文的目的IP地址为RealServer的地址,
  修改源地址为LVS的LocalIp地址,将请求转发给RealServer
· RealServer收到request包后,发现目的IP是自己的IP,于是处理请求,然后发送reply给LVS
· LVS收到reply包后,修改reply包的的源地址为VIP,修改目的地址为客户端Ip,发送给Client

    FULLNAT模式缺点是由于做了SNAT,应用服务器RealServer会丢失客户端的真实IP地址,如果RealServer服务器需要获取Client IP,需要安装TOA模块。并且FULLNAT比NAT模式多做了一次SNAT,因此性能相较于NAT模式有10%左右的下降。

模式

优势

劣势

FULLNAT

1.RealServer服务器不需特殊配置,与LVS三层可达即可

1.丢失源IP信息

2.转发性能差