这可能是一个普通的问题,但“浮动 IP”地址和“虚拟 IP”地址之间有什么区别?它们是同义词吗?
答案1
对我来说,这些术语的含义不同。
浮动 IP 地址用于支持高可用性集群中的故障转移。集群配置为只有集群中的活动成员在任何给定时间“拥有”或响应该 IP 地址。如果活动成员发生故障,则浮动 IP 地址的“所有权”将转移到备用成员,以将其提升为新的活动成员。具体而言,要提升的成员会发出免费 ARP,宣布新的 MAC 地址与 IP 地址关联。
虚拟 IP 地址是指虚拟服务器的 IP 地址,是一个比较模糊的术语。使用 F5 负载均衡器,例如,虚拟服务器就是您想要托管的服务(网站等)。
更具体地说,假设您在主动-备用集群中有一对负载均衡器。对于每个接口或 VLAN,负载均衡器将各自具有一个自有 IP 地址,以及两个成员之间共享的浮动 IP 地址。当负载均衡器将传入请求中继到后端节点时,它会使用浮动 IP 地址作为源地址,因此如果负载均衡器死机,其合作伙伴将能够接管并接收响应。负载均衡器上托管的每个网站或其他服务都将拥有自己的 IP 地址,您可以将其称为“虚拟”IP 地址。(您可以说这些虚拟 IP 也是“浮动的”,因为在发生故障转移时,对它们的控制将转移到备用节点。)
答案2
不,两者非常相似,但通常用于不同的语境中。
Virtual IP
(或VIP
)通常用作表示 IP 不属于某个特定物理接口这一事实的术语。从这个意义上讲,VIP
独立于物理接口(在物理学中,缺乏物理表示的粒子称为virtual
。看起来没有物理接口的 IPvirtual
也被称为 )。因此,非虚拟 IP 意味着随其接口上下移动,并且只属于一个单一接口,而VIP
可以通过多种方式摆脱这种情况(它甚至可以同时存在于多个接口上,非常像虚拟粒子可以同时存在于黑洞内部和外部 - 参见https://en.wikipedia.org/wiki/Hawking_radiation)。
Floating IP
(或FIP
)似乎是一些故障转移/虚拟托管解决方案创造的术语,用于命名公共可访问的外部 IP 地址(有些甚至将该术语保留FIP
给来自公共 IP 区域的 IP)。
因此以下是正确的:
- 通常来说, a也是
FIP
aVIP
,但也有例外 - 在某些设置中使用时,a
VIP
可以是 aFIP
- 通常
FIP
意味着不仅仅是一种特殊形式VIP
互换使用这些术语或认为它们是相同的可能并不明智。
FIP
如果您使用虚拟接口上的 IP这个术语,可能会让很多人感到困惑,所以应该坚持VIP
在这里使用它。可能有多个
VIP
s 指代同一个FIP
,例如 externalVIP
(来自公共 IP 区域)和 internal “natted”VIP
(通常来自私有 IP 区域)FIP
。因此,如果您在这里使用该术语VIP
,将造成严重误解。
为了增加困惑,我们来看看维基百科:
https://de.wikipedia.org/wiki/Virtuelle_IP-Adresse
查看具有主动/被动群集的动态 IP 地址,在当前活动的 Primärsystem 地址下
因此,根据德语维基百科,VIP ⊂ FIP
。
https://en.wikipedia.org/wiki/Virtual_IP_address
虚拟 IP 地址 (VIP 或 VIPA) 是不对应于实际物理网络接口 (端口) 的 IP 地址。VIP 的用途包括网络地址转换 (尤其是一对多 NAT)、容错和移动性。
因此,英文维基百科讲述了一个完全不同的故事,即FIP ⊂ VIP
由于两篇文章相互矛盾,请不要陷入这样的陷阱:FIP ≡ VIP
把它们加起来:
Virtual IP
是一个众所周知的技术通用术语,用于不严格绑定到单一接口的 IPFloating IP
通常或多或少是一种营销用语,用来表示一个专门使用的 IP,通常(但并非总是)是一个VIP
。
答案3
是的,它们是一样的。这些是负载平衡配置等中通常使用的术语
答案4
可公开访问的 FIP 可以指向由多个后端共享的 VIP。因此,当一个后端发生故障时,请求可以故障转移到另一个后端,而无需更改 FIP
实际的例子OpenStack 中使用 VIP 和 FIP 的实例