码迷,mamicode.com
首页 > 其他好文 > 详细

02-LVS集群类型之lvs-dr

时间:2017-06-27 18:42:47      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:管理   directory   接口   二层交换机   封装   工具   内核参数   dir   bsp   

通过修改请求报文的MAC地址实现转发:

请求报文源IP为CIP,目标IP为VIP,到达Directory后,修改源MAC地址为DIP的网卡MAC,目标MAC地址是挑选出来的后端RealServer的RIP接口的MAC地址;

IP首部不会改变,为了能够让RealServer能够接收报文,需要在RealServer的lo的子接口上配置vip地址;

Directory与RealServer在同一网络内,二层交换机通过MAC地址实现报文发送,所以中间不能出现路由器(路由器3层通过IP地址实现);

工作流程:

1>请求报文经过层层路由进入交换机,此时,源地址是CIP,目标地址是VIP。

2>Directory 和 RealServer 是同一物理网络内,且都有vip地址,通过特殊设置,使得RealServer 无法想应ARP广播,因为只有Directory可以相应ARP广播,所以请求报文只能发往Directory,源IP地址目标IP地址不变,帧首部的目标MAC地址为Directory网卡MAC地址,源MAC地址为交换机某接口MAC地址。

  如何禁止本机VIP地址响应ARP广播:

    <1>arptables工具实现

    <2>修改RealServer的内核,并把VIP绑定在本地回环lo接口上

内核参数为arp_ignore、arp_announce

 

3>到达Directory,拆开帧首部,通过查看IP及端口,发现是定义的集群应用,封装帧首部目标MAC地址为某个挑选出来的RealServer 网卡的MAC地址,发送给交换机,此时源IP地址目标IP地址不变,源MAC地址是Directory网卡MAC地址。

4>交换机转发报文给相应的RealServer,RealServer收到请求报文,拆开帧首部,发现目标IP地址是自己,接受请求并响应,响应报文源IP地址为VIP,目标IP为CIP。

补充:

VIP肯定为公网地址,DIP与RIP可以是公网(方便管理)也可以为私网。

RealServer与Directory必须在同一物理网络中,因为两者之间使用MAC地址进行通信。

不支持端口映射

响应报文不经过Directory。

02-LVS集群类型之lvs-dr

标签:管理   directory   接口   二层交换机   封装   工具   内核参数   dir   bsp   

原文地址:http://www.cnblogs.com/carllife/p/7082654.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!