DR模式都说不能跨网段,到底是啥意思,是说lvs服务器不能跟realserver跨网段,还是说vip跟realserver跨网段到底,有人能告诉我吗?
另外为啥lvs和realserver部署在不同的虚机上,当虚机跨物理机的时候,就根本LVS无法转发到realserver,这到底是为什么呢,有没有有经验的。
香胖
周四, 2015-11-12 15:50
Permalink
理解数据包流向就明白了。 DR模式下: 用户请求为客户端IP到调度器的虚拟IP,(CIP-VIP)---->LVS调度器DIRECTOR,在此处调度器会将报文的目的地MAC地址改写成为一台RS的MAC,数据包还是CIP-VIP,只是VIP的MAC变成了一台RIP的MAC地址--->用户请求到达RS,RS响应后直接通过网关发回给客户端。RS会在本地LO回环接口上绑定VIP别名并抑制ARP相应,因此RS发送到客户端的数据包是VIP-CIP,不会是RIP-CIP。 DR模式下RS不一定需要外网IP,理论上只需要能出网即可。 DR模式下的完整数据流向:数据包经客户端到调度器,调度器改写MAC抵达REALSERVER,REALSERVER相应后直接返回客户端,不再经过调度器。 此模式调度器压力最小,因此是最常用的工作模式。
NAT模式下: 用户请求为客户端IP到调度器的虚拟IP,(CIP-VIP)---->LVS调度器DIRECTOR,在此处调度器会将报文再次封装一个RS的IP头,即此时的数据包是((CIP-VIP)+RIP),调度器将再次封装后的数据发到RS,--->用户请求到达RS,RS解包数据相应处理再发回调度器,由调度器返回客户端。此阶段RS也会在本地LO回环接口上绑定VIP别名并抑制ARP相应,因此RS发送到调度器DIRECTOR的数据包是VIP-CIP,不会是RIP-CIP。 NAT模式下,RS响应后的数据包封装成(VIP-CIP),为什么调度器能收到?是因为NAT模式下,调度器DIP必须是RS的网关,RS响应后的数据包必须通过调度器返回客户端。该模式调度器负载较大,一般不用。
那么,为什么DR必须是同一物理网段,而NAT可以跨机房? 因为,DR模式改写MAC地址,属于ARP协议范畴,ARP协议只能工作在内网!NAT模式重新封装增加一个IP头,IP是不需要内网环境的。
floristt
周五, 2015-12-18 06:58
请教一下大侠 在DR模式下,client与director是否真正建立连接了呢?例如tcp服务 还是说client与最前方的director并未建立连接,而是后面的real server才与client建立连接? 我在director上面配置好了之后用netstate查看发现director并未监听(listen)指定端口。请问ipvsadm会在director开启相应的端口监听吗? 如果不开启的话tcp三次握手如何能够建立呢?
周日, 2015-12-20 15:46
搞复杂了你 搞清楚数据流向就明白了 注意 LVS是转发!
周一, 2015-12-21 01:50
其实我的理解也是这样。 至少在DR模式下,是链路层的frame转发了,而不是上升到传输层去检验端口的 意思是收到链路层的frame之后直接转发了,所以Director Server监听相关端口没有是正常的,请问大侠是这样的么?
周日, 2015-12-20 15:47
搞复杂了你 LVS是转发!
There are currently 0 users online.
香胖
周四, 2015-11-12 15:50
Permalink
理解数据包流向就明
理解数据包流向就明白了。
DR模式下:
用户请求为客户端IP到调度器的虚拟IP,(CIP-VIP)---->LVS调度器DIRECTOR,在此处调度器会将报文的目的地MAC地址改写成为一台RS的MAC,数据包还是CIP-VIP,只是VIP的MAC变成了一台RIP的MAC地址--->用户请求到达RS,RS响应后直接通过网关发回给客户端。RS会在本地LO回环接口上绑定VIP别名并抑制ARP相应,因此RS发送到客户端的数据包是VIP-CIP,不会是RIP-CIP。
DR模式下RS不一定需要外网IP,理论上只需要能出网即可。
DR模式下的完整数据流向:数据包经客户端到调度器,调度器改写MAC抵达REALSERVER,REALSERVER相应后直接返回客户端,不再经过调度器。
此模式调度器压力最小,因此是最常用的工作模式。
NAT模式下:
用户请求为客户端IP到调度器的虚拟IP,(CIP-VIP)---->LVS调度器DIRECTOR,在此处调度器会将报文再次封装一个RS的IP头,即此时的数据包是((CIP-VIP)+RIP),调度器将再次封装后的数据发到RS,--->用户请求到达RS,RS解包数据相应处理再发回调度器,由调度器返回客户端。此阶段RS也会在本地LO回环接口上绑定VIP别名并抑制ARP相应,因此RS发送到调度器DIRECTOR的数据包是VIP-CIP,不会是RIP-CIP。
NAT模式下,RS响应后的数据包封装成(VIP-CIP),为什么调度器能收到?是因为NAT模式下,调度器DIP必须是RS的网关,RS响应后的数据包必须通过调度器返回客户端。该模式调度器负载较大,一般不用。
那么,为什么DR必须是同一物理网段,而NAT可以跨机房?
因为,DR模式改写MAC地址,属于ARP协议范畴,ARP协议只能工作在内网!NAT模式重新封装增加一个IP头,IP是不需要内网环境的。
floristt
周五, 2015-12-18 06:58
Permalink
请教一下大侠 在DR模
请教一下大侠
在DR模式下,client与director是否真正建立连接了呢?例如tcp服务
还是说client与最前方的director并未建立连接,而是后面的real server才与client建立连接?
我在director上面配置好了之后用netstate查看发现director并未监听(listen)指定端口。请问ipvsadm会在director开启相应的端口监听吗?
如果不开启的话tcp三次握手如何能够建立呢?
香胖
周日, 2015-12-20 15:46
Permalink
搞复杂了你 搞清楚数
搞复杂了你
搞清楚数据流向就明白了
注意 LVS是转发!
floristt
周一, 2015-12-21 01:50
Permalink
其实我的理解也是这
其实我的理解也是这样。
至少在DR模式下,是链路层的frame转发了,而不是上升到传输层去检验端口的
意思是收到链路层的frame之后直接转发了,所以Director Server监听相关端口没有是正常的,请问大侠是这样的么?
香胖
周日, 2015-12-20 15:47
Permalink
搞复杂了你 LVS是转发
搞复杂了你
LVS是转发!