当一台机器通过两个接口连接到同一个网络时,如何分配 IP?

当一台机器通过两个接口连接到同一个网络时,如何分配 IP?

我有一台 Ubuntu 14.04 机器,通过两个不同的接口wlan0和连接到同一个子网eth0。该机器仅用于正常浏览互联网。我要手动为两个网络连接分配 IP 地址。

即使两个接口都是物理连接的,为两个网络连接分配相同的 IP 可以吗?我可以节省我宝贵的 IPv4 地址,避免为一台机器分配两个 IP。

或者我们应该为两个接口提供不同的 IP 以避免 IP 冲突?

如果答案是“否”。请告诉我为什么会这样。我似乎无法理解的是,运行 Google Chrome(例如)的层不会介意它如何获取数据(IP 层),只要它获取了数据即可。

答案1

为两个网络连接分配相同的 IP 可以吗?

不,无论如何,这都是不对的。这很可能会引起问题。

...假设每次只使用一个连接

好吧,如果它确实每次只使用一个(即每次只有一个接口处于开启状态),那么你不应该看到任何问题。这类似于一台机器断开 WiFi 连接,然后你的路由器将相同的 IP 重新分配给一台新机器;这种情况一直都在发生。

  • 您可以使用以下命令列出您的 NIC:ifconfig
  • 您可以关闭某个接口:ifdown eth0
  • 您可以打开一个接口:ifup eth0

所以,我猜答案在于你的 LAN 上的 IPv4 地址到底有多珍贵,是否应该做一些不推荐的事情,以及你每天如何使用你的计算机。


从技术上讲,在同一 IP 上安装两个 NIC 是可行的,但设置起来并不容易。您可以使用绑定或 LACP 来执行以下两项操作之一:

  1. 增加可用带宽(粘合
  2. 有一个默认接口,如果主接口发生故障(故障转移),可以回退到另一个接口

假设您使用典型设置(不同的 IP/dhcp)

不同的应用程序可能会根据您切换 IP 而采取不同的行动。它非常特定于客户端,但chromium-browser如果您更改 IP(只要您在切换 IP/NIC 时不加载页面),浏览器(例如)应该不会遇到任何问题。浏览器通常会快速建立和关闭连接,这使得它们能够适应这些变化。

某些客户端(例如)ssd可能会出现故障或断开连接,但在 NAT 路由器后面,您可能不会看到太多问题。在流式传输或保持恒定连接的应用程序上更改 IP/NIC 更有可能导致问题。


假设你每次使用一个网卡,使用同一个 IP

请注意,某些硬件会学习到不同机器的路径(路由),如果到 IP 的路由发生变化(即:您在两个不同的 NIC 上使用相同的 IP),则需要时间或重置。这可能会导致额外的问题,如果您在两个 NIC 上只是进行了正常的 dhcp 设置,则不会看到这些问题。


你如何使用你的电脑?

您是待在一个局域网下,还是带着您的机器旅行?如果您待在一个局域网下,您可能能够让同一个 IP 在两个网卡上工作,但这些设置在您旅行时可能会造成问题。


IPv4短缺

如今的路由器似乎使用 192.168.1.0/24 (255.255.255.000) 子网。这为您提供了 256 个地址。这通常足以满足家庭环境的需求。

如果您有 256 台以上的机器,那么您可以选择创建多个子网并享受在多个子网之间路由的乐趣。您可以使用 192.168.2.0/24,这将为您提供 256 个额外的地址。或者您可以使用 192.168.0.0/16 (255.255.000.000),这将为您提供多达 65,536 个地址。

确实,世界上的 IPv4 地址已经所剩无几,但私有网络保留,应该可以满足您的需要。

相关内容