我知道 IP 地址是指 NIC 而不是主机,因此单个主机可以拥有与 NIC 一样多的 IP 地址。
但坦南鲍姆说:
它实际上是指一个网络接口,所以如果一个主机在两个网络上,它必须有两个 IP 地址。
有人可以澄清这一点吗?
我知道 IP 地址是指 NIC 而不是主机,因此单个主机可以拥有与 NIC 一样多的 IP 地址。
但坦南鲍姆说:
它实际上是指一个网络接口,所以如果一个主机在两个网络上,它必须有两个 IP 地址。
有人可以澄清这一点吗?
IP地址分配给三层接口(IP是三层协议),可以是物理的,也可以是虚拟的,每个接口可以有多个IP地址。IPv6 甚至需要多个 IP 地址,其中每个接口都有一个本地链路地址和一个或多个全局和/或 ULA 地址。
我会给你一个发生的 IPv4 例子。DHCP 通常仅限于单个 LAN,因为它使用广播(暂时忘记 DHCP 中继,因为并非每个路由器都支持)。这意味着您将需要在您拥有的每个网络上都有一个 DHCP 服务器,但有一些原因您不想这样做。解决此问题的一种方法是通过中继链路连接 DHCP 服务器。DHCP 服务器将具有单个 NIC,但对于通过中继进入的每个网络,它都有一个地址。它可以有许多地址用于由那个 NIC 服务的网络。
Zac67 和 Ron Maupin 简要解释了每个 NIC 的多个 IP 地址是如何工作的,这可能是问题的意图。
在这里,我尝试解释为什么要向主机或网关添加第二个 IP 地址。
在当今的大多数情况下,人们通常会在这些情况下使用多个 VLAN,每个 VLAN 有一个子网。
VLAN 的标准化比以太网晚得多(1998 年用于 IEEE 802.1Q,而 1986 年用于 IEEE 802.3),直到大约 2002 年第 3 层工作组交换机才变得负担得起。直到几年后,分支机构路由器中的 VLAN 功能才成为标准。
因此,将多个 IP 地址绑定到没有 VLAN 的单个 NIC的能力在 Unix 和 Linux 中已经存在很长时间,至少从 NT4 开始在 Windows 中就已经存在。
假设您有一个具有公共 /24(C 类)网络(254 个可用地址)的站点,并且您需要更多。
最简单的扩展方法是向您的 ISP 询问另一个地址块,这些地址块可以通过路由器上的辅助 IP 地址访问 Internet (暂时忽略对防火墙的需求)。
这两个子网在网络上的每个端口都可用,但没有任何其他更改,从子网 B 到子网 A 的所有流量都必须通过路由器,这会降低性能并增加路由器端口的拥塞。
如果随后向服务器添加辅助 IP 地址,子网 B 上的 PC 可以访问服务器而无需通过路由器。
将孤立的站点和新收购的站点互连到公司网络中时(尤其是在 NAT 环境中),通常需要更改所使用的子网。
如原因 1 中所述,您可以通过在新子网中向现场路由器和服务器添加辅助 IP 地址,然后随着时间的推移更改配置(静态 IP 地址、静态 DNS 地址、静态 IP 地址)来简单地做到这一点在应用程序中......),然后再停用旧的子网地址。
注意:DHCP 服务器或转发器可能会在其次要子网上分配 IP 地址时遇到问题 - 最好将新 IP 地址作为主要 IP 地址,将旧 IP 地址作为次要地址。