从现在开始,我使用apache2的虚拟主机function将多个域绑定到一个公共和静态ip。
现在我正在build立一个带4个IP的XEN主机,还有几个VM,其中两个是纯Web服务器。 这两个虚拟机可能共享一个公共IP? 每个人都会在同一个公共IP上有一组虚拟主机。

编辑:好的,基于主机的redirect呢? 
如果您只关心提供http,则很可能需要安装像Pound这样的软件负载均衡器/反向代理。 Xen主机上的configuration会(再次 – 很可能)看起来像
ListenHTTP Address xx.xx.xx.xx Port 80 Service BackEnd Address ip.of.webserver.1 Port 80 End BackEnd Address ip.of.webserver.2 Port 80 End End End
您还需要在Xen主机上设置转发和iptables规则; 它可能已经为此设置。
如果他们是相同的IP,我不认为你将能够分裂到两个服务器的请求?
为什么你需要把它们设置在同一个IP上?
好的图虽然
作为半径和其他人说,我不相信有可能只是通过给服务器相同的IP(他们会抱怨重复的地址,其中一个将最终减lessIP),或者相同的次要IP(如上所述,但难以排除故障)。
一个更好的select是循环DNS,在这里您可以将每个networking服务器的IP添加到相同的“A”logging,并且针对该“A”logging的查询将每次返回不同的地址,或者地址供您的客户select。 另一个select是在两个Web服务器前添加某种负载平衡应用程序,以便将stream量均衡地路由到每个Web服务器(或者只是一个,另一个作为失败者)您可以使用mod_proxy的另一个Apache实例安装。
你想要使用哪一个取决于你为什么要这样做 – 我们在谈论某种高可用性/集群的事情吗?
两台计算机上不能同时拥有一个IP,但可以在两台计算机之间快速移动。
看来你是在一个负载平衡/高可用性解决scheme之后。
我build议你看看Linux-Ha-Heartbeat [1]。
它基本上是一个守护进程,可以在Webserver 1和Webserver 2这两台机器上运行,并且只要在规定的时间内没有收到信号,另一个节点就被认为是死的(或使用STONITH [2]设备造成死亡),主动节点将所有事情都解决了。
您也可以手动select主动/被动节点。 从心跳v2开始,可以在资源级监控节点,虽然configuration是基于XML的,而且很复杂,如果你打算研究它,我build议使用heartbeat-gui来configuration它(Ubuntu有一个包[ 3])
Novell有一个很好的免费电子书关于这个东西[4]。
[2] http://www.linux-ha.org/STONITH
根据您的编辑,您可以使用反向代理。 Apache可以做到这一点。 英镑是另一个解决scheme已经提到
我不相信有人提出两个具有相同IP的虚拟机。 我同意你的答复。 你不能有两台机器在同一个子网上共享一个IP,就像你有一个ARP表问题一样。
这样做的唯一原因是负载平衡和灾难恢复,如果一个虚拟机发生故障,stream量继续stream向另一个虚拟机; 但是,如果物理硬件失败,那么两个虚拟机都closures,所以我不确定这里的值或负载平衡。 我的意思是你将在同一物理硬件上的两个虚拟机之间进行负载平衡。 这里的目标是什么?
不,你不能拥有两台IP地址相同的服务器。 每个虚拟机至less需要一个公有IP,或者做某种NAT,但是如果你要从这些虚拟机提供网页,那么你肯定需要单独的IP