LVS两种模式NAT/DR的网络数据走向

在开始整理之前,需要准备几个知识点:

一:LVS的组成

       1.IPVS:运行在内核间netfilter上input链的框架;通过对数据进行检测.满足规则后通过钩子强制转发的功能

       2.IPVSADM:运行在用户空间,用于编写IPVS框架规则的工具;

二:netfilter的五链与iptables的功能作用;

************************************************************************************************************************************

vs-nat模式(运行第三层):

        1.客户端发送请求,由于目的IP地址为VIP(LVS外网IP地址).所以请求数据包进入调度服务器(LVS);

        2.进入服务器后,由于服务器通过netfilter框架来管理网络数据,故数据包会被系统分到netfilter框架的第一个链:PREROUTING;

        3.进入PREROUTING链后,判断是否目标IP地址是否为本机,如果是,则转入INPUT链;

           此时数据包的目标IP为:DIP,目标MAC为:DIP-MAC,源IP为:CIP,源MAC为:CIP-MAC

        4.在INPUT上有LVS的IPVS框架针对数据进行检测,当满足了IPVSADM制定的规则后,通过调度算法,将数据包中的目标IP地址修改为RIP;

           此时数据包的目标IP为:RIP,目标MAC为:RIP-MAC,源IP为:CIP,源MAC为:CIP-MAC

        5.将修改后的数据包转入POSTROUTING.经由路由转发到真实服务器;

        6.真实服务器接到请求后,处理完请求的内容后,由于真实服务器的网关为调度器内网的IP地址,所以真实服务器将响应数据发往调度服务器.

            此时数据包的目标IP地址为:CIP,目标MAC为:CIP-MAC,源IP地址为RIP,源IP地址为:RIP,源MAC地址为:RIP-MAC;

       7.数据到达调度服务器后,进入PREROUTING链,通过判断发现目标IP不是为本机IP,于是进入FORWORD链---->POSTROUTING链,进入网络,最终到达客户端;

************************************************************************************************************************************

       通过以上步骤,可以抽象出搭建过程中所需的步骤:

       1.必须安装IPVSADM工具:yum -y install ipvsadm

       2.调度服务器必须是双网卡配置,其中一张网卡的IP地址必须为真实服务器的网关;

       3.必须开启调度服务器的路由转发功能;

************************************************************************************************************************************

      VS-DR模式(运行第二层):

        1.当客户端的请求进入服务器所在的网络时,交换机发广播咨询VIP的MAC地址,此时调度服务器响应该ARP请求.交换机缓存该响应到自身ARP表;并转发访问数据;

        3.访问数据进入服务器后,由于服务器通过netfilter框架来管理网络数据,故数据包会被系统分到netfilter框架的第一个链:PREROUTING;

        4.进入PREROUTING链后,判断是否目标IP地址是否为本机,通过检查发现为本机的VIP.则转入INPUT链;

           此时数据包的目标IP为:VIP,目标MAC为:DIP-MAC,源IP为:CIP,源MAC为:CIP-MAC

        5.在INPUT上有LVS的IPVS框架针对数据进行检测,当满足了IPVSADM制定的规则后,通过调度算法,发送arp请求,等待RIP的MAC地址;

        6.RIP的服务器响应ARP请求,并回应自身的MAC地址;

        7.等到得到目标RIP的MAC地址;将修改后的数据包转入POSTROUTING.

           此时数据包的目标IP为:VIP,目标MAC为:RIP-MAC,源IP为:CIP,源MAC为:DIP-MAC

       8.RS接到请求后,处理完请求的内容后,通过lo接口传送给出口网卡,发送数据回客户端;

            此时数据包的目标IP地址为:CIP,目标MAC为:CIP-MAC,源IP地址为VIP,源MAC地址为:VIP-MAC;

************************************************************************************************************************************

       总结:DR模式是为了解决NAT调度服务器瓶颈的优化方案,所以在响应客户端数据的时候,不再经过调度服务器,而是由真实服务器直接将数据发送给客户,但是这样存在一个问题,会将真实服务器暴露出去(不安全).所以从DS到RS的网段必须维护同一个VIP(对外的服务器IP地址).即DS跟RS都必须通过回环lo设置VIP;

          但是这里存在一个问题:所有的服务器都拥有VIP,当局域网中发起关于该VIP的ARP请求的时候,所有服务器都会响应,故此时需要设置只有调度服务器才能响应客户端的ARP请求;即屏蔽掉真实主机关于该IP的ARP响应;

          另外,当数据往客户端发送数据时,必须通过eth0网卡对外发送,但是存在问题,RS不知道客户端的MAC地址,需要发送ARP请求,如果用VIP地址发送请求的话,会更新掉客户端所在的ARP表,导致DS失效.所以需要将ARP请求让出口网卡发出,并得到响应后再更新本身ARP表.最后再封装发送响应数据;(对arp机制不是很了解,这段描述有问题,待完善)

         综上所述,DR模式搭建过程中,需要注意的是

        1.需要配置ARP抑制;

        2.DS跟RS必须在同一个物理网络中,因为是双方是通过数据链路层来进行数据传输的.

************************************************************************************************************************************

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值