请教,LVS/DR中是否要求VIP(虚拟服务器地址)和RIP(真实服务器地址)必须在同一个网段内?

如题,如果真是这样的话,用什么方法才能使得用户只能访问VIP而不能访问RIP呢?用路由器或者防火墙的话这本身就是一个瓶颈

Forums:

未必是这样的。VIP和RIP不一定是一个网段的。

我们可以手册中的通过直接路由实现虚拟服务器(VS/DR)的图片。负载调度器只要有一个网口和真实服务器是通过不分段的网络连接起来就可以。真实服务器可以通过自己的路由器将响应报文发送给客户。

非常感谢章博士!我的LVS/DR已经初步建立起来了(在VMware虚拟平台上)
拓扑:

|
|----LB
|
|
|
|----RS1
|
|
|
|----RS2
|
|
|
|----CLIENT
|

以下是我的配置,供大家参考:
LB:
eth0-->192.168.100.1/24
lo:1-->192.168.200.1/32
#echo 1 >/proc/sys/net/ipv4/conf/all/send_redirects
#echo 1 >/proc/sys/net/ipv4/conf/default/send_redirects
#echo 1 >/proc/sys/net/ipv4/conf/eth0/send_redirects
#echo 1 >/proc/sys/net/ipv4/conf/lo/send_redirects
#echo 0 > /proc/sys/net/ipv4/ip_forward
#ipvsadm -A -t 192.168.200.1:80
#ipvsadm -a -t 192.168.200.1:80 -r 192.168.100.3:80 -g
#ipvsadm -a -t 192.168.200.1:80 -r 192.168.100.4:80 -g
RS1:
eth0-->192.168.100.3/24
lo:1-->192.168.200.1/32
#echo 1 > /proc/sys/net/ipv4/conf/all/hidden
#echo 1 > /proc/sys/net/ipv4/conf/default/hidden
#echo 1 > /proc/sys/net/ipv4/conf/eth0/hidden
#echo 1 > /proc/sys/net/ipv4/conf/lo/hidden
#echo 0 > /proc/sys/net/ipv4/ip_forward
#route add default eth0
RS2:
eth0-->192.168.100.4/24
lo:1-->192.168.200.1/32
#echo 1 > /proc/sys/net/ipv4/conf/all/hidden
#echo 1 > /proc/sys/net/ipv4/conf/default/hidden
#echo 1 > /proc/sys/net/ipv4/conf/eth0/hidden
#echo 1 > /proc/sys/net/ipv4/conf/lo/hidden
#echo 0 > /proc/sys/net/ipv4/ip_forward
#route add default eth0
CLIENT:
eth0-->192.168.200.254/24
gw-->192.168.200.1

其他说明:
1.这个实验环境是在VMware上建立起来的,下一步还要在真实环境下进一步验证;
2.这个系统中没有HA,下一步试验HA;
3.相关软件
Linux Kernel
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.10.tar.bz2
Arp hidden 补丁(patch 到上面这个Kernel)
http://www.ssi.bg/~ja/hidden-2.6.9-1.diff
IPVSADM
http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
请大家多多指教!

这样的话,如果输出数据过大,会不会导致出口路由成为瓶颈.

Of the panoply of website I've pored over this has the most vearticy.

Great aritlce, thank you again for writing.

如此畸形的拓扑都不知道你想干啥...LVS/DR的最大优势是什么好好想想

randomness