是否可以在同一个 NIC 中配置 VIP 和私有 IP(不同)以及两个都是否启用/可访问?
如果是,是否可以保证这两个 IP 的通信路径确切地相同?
更新:如果可能的话,如果我从特定机器上执行ping
(或),我会traceroute
总是这两个 IP 有相同的路由吗?
答案1
同一物理设备上可以有任意数量的虚拟 IP。在 Linux 上,您可以为 IP 创建虚拟接口(大多数情况下),如下所示:
ifconfig eth0:0 10.10.10.42 netmask 255.255.255.0 up
或通过/etc/network/interfaces
每个 IP 的路由可以独立确定。每个 IP 可以有不同的默认路由。但您可以从每个 IP ping 进出
答案2
NIC 上有多个 IP 根本不是问题。您可以使用常规工具,例如ip addr add 1.2.3.4/24 dev eth0
,配置文件将依赖于分发。
您的网卡所连接的交换机将广播“谁拥有 IP abcd”,并且您的网卡将响应它所拥有的 IP 之一。接收数据包是不是一个问题。
但是,传出的数据包则是另一回事。响应 ping 时,传出的数据包的源 IP 将从路由表 ( ip route show
) 中确定。这很可能基于目标 IP,并且根据被 ping 的 IP,您可能会遇到问题。