图解 lvs 工作原理

blob.png

blob.png

blob.png

一.lvs 基本工作流程介绍

 如图1,ipvsadm定义lvs服务监听的ip和port,并发送给ipvs,而ipvs是工作在netfilter的input钩子上的程序,当input链中有目标ip属于lvs服务的请求报文时,ipvs就会修改该报文的链路,使其不进入用户空间而直接转到postrouting链上,并转发给其中一台real server,转发的方式由下文详述。

二.lvs 4种工作模式介绍

  • lvs-nat:

    多目标nat

    转发方式:如图2.1,Director将请求报文的目标IP修改RIP(步骤②),响应报文的源IP修改为VIP(步骤④)

    • 步骤③④中Director将响应报文源IP修改为VIP,所以RS网关需指向到DIP

    • 请求报文、响应报文都由Director转发,所以Director易成为性能瓶颈

  • lvs-dr

    direct routing(常用)

    转发方式:如图2.2,Director仅为请求报文 新封装一个MAC首部(步骤②),目标MAC为RIP的MAC,故DIP与RIP需要在同一物理网络以实现arp通信;并且RS的本地回环接口lo配置VIP,响应报文从lo的VIP发出,所以IP首部中的源IP就会是VIP

    • RS、Director都有VIP,所以需要确保请求报文只发到Director,常见方法为修改RS的内核参数arp_ignore、arp_announce设为1,使RS不响应其他主机的ARP通信

  • lvs-tun

    tunnel

    转发方式:如图2.3,Director在请求报文的原有IP上再封装一个IP首部,响应报文不经由Director,直接发到CIP,故多个RS可不在同一网络

    • 当RS不在同一网络时,很难保持会话一致性

  • lvs-fullnat

    转发方式:如图2.4,Director同时修改请求报文、响应报文的源IP和目标IP,

    • 请求报文修改后源IP是DIP,故DIP与RIP可以不在同一网络

原创文章,作者:N24_lizi1,如若转载,请注明出处:http://www.178linux.com/55919

(0)
N24_lizi1N24_lizi1
上一篇 2016-10-30
下一篇 2016-10-30

相关推荐

  • 马哥教育网络班21期-第六周课程练习

    第六周作业 请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@qq tmp]# cp /etc/rc.d/rc.sysinit /tmp [root@qq&nbsp…

    Linux干货 2016-08-02
  • 细数Linux发行版

    什么是Linux 广义上讲:Linux内核+应用程序狭义上讲:Linux内核  > Linux内核指的是我们通常所说的Kernel,主要用于负责系统调用、进程管理、内存管理、文件系统管理等功能。  应用程序指的是由GNU组织提供的开源的、通用的应用程序,如gcc、glibc、vi等。 我们平常所说的Linux,通常指广义层面上的Li…

    Linux干货 2017-08-30
  • 网络中多网卡和多ip中的高可用

    一、虚拟网卡实现一个网卡多个地址 1、单个网卡实现多个ipv4地址,只需要在该网卡的配置文件的目录新增网卡配置文件即可。进入网卡"eth0"的目录下 2、新增网卡配置文件"ifcfg-eth0:0"和"ifcfg-eth0:1" 3、关掉NetworkManager服务 4、重启网卡,让系统重读配置…

    Linux干货 2016-09-10
  • 第二周作业

    linux 文件管理命令 rm、mv、cp rm rm命令:remove rm [OPTION]… FILE… 常用选项: -i:interactive (默认rm是‘rm -i’的别名) -f:force -r: recursive        &nb…

    Linux干货 2016-12-08
  • RAID介绍及软RAID实现

    RAID RAID:Redundant Arrays of Inexpensive(Independent)Disks1988年由加利福尼亚大学伯克利分校(University of California-Berkeley)“A Case for Redundant Arrays of Inexpensive Disks”。多个磁盘合成一个“阵列”来提供更好…

    Linux干货 2016-09-02
  • SELinux详解及其优缺点

    SELinux简介:        SELinux:Secure Enahanced Linux 安全增强的Linux SELinux是2.6版本的Linux内核中提供的强制访问控制(MAC)系统。对于目前可用的Linux安全模块来说,SELinux是功能最全面,而且测试最充分的…

    Linux干货 2017-05-21

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-02 16:00

    内容格式把握得很好,原理部分可以加入一些自己的理解,加油!