DR模式的ip地址问题

用DR模式搭建LVS是不是负载均衡器和真实服务器都需要公网的IP啊?

Forums:

这个问题我也想弄清楚,哪位高人解答一下啊

DR模式时,我理解为并不需要real服务器都有各自的公网IP,因为这样肯定行不通,报文返回时,客户端得到的那个数据包和自己请求的来自不同IP,它就DROP掉。

real服务器的IP配置的是和调度器的VIP一样的地址,只是real服务器用于配置这个地址的网络卡是属于Non-ARP类型的。

real服务器的ip配置是和调度器的vip一样,但是那个是lo或者是tun网卡,并不是etho或者eth1啊

我也有一个问题,我现在使用lvs/tun方式搭建集群,每个机器都有公网ip:
director:58.xxx.xxx.xxx
realserver1:202.194.xxx.xxx
realserver2:202.194.xxx.yyy
我现在是在学校里面,我们学院的网关上面为每一个ip绑定mac地址。我申请了一个ip,比如202.xxx.xxx.zzz作为我的vip,网关把这个vip绑定一个mac地址,我就让他绑定了director的mac地址。结果是,我的集群只有局域网内的ip能够访问到它,外网访问不到它了。我想知道,如何设定vip,才能让外网访问到它?????你们的vip是不是没有绑定mac地址,只是使用一个大家没有用的ip就可以??
谢谢你们。

在VS/DR中,请求报文的目标地址为VIP,响应报文的源地址也为VIP,所以响应报文不需要作任何修改,可以直接返回给客户,客户认为得到正常的服务,而不会知道是哪一台服务器处理的。
http://zh.linuxvirtualserver.org/node/28

DR模式下,真实服务器的响应报文直接返回给客户端。那么真实服务器必须具备有将报文返回给互联网上的客户端的能力。所以,真实服务器要么有公网IP(不同于VIP),要么有网关能出去。