如何在 Debian 10 中为单个 NIC 分配多个 IP 地址

由于各种原因,例如将不同的服务绑定到不同的 IP 地址、托管多个 SSL 站点等,可能需要在单个 NIC 上设置多个 IP 地址。这篇文章将向您展示如何为单个 NIC 分配多个 IP 地址在 Debian 系统中。 如果您使用的是 Ubuntu 操作系统,您可以访问我们关于如何在 Ubuntu 中为单个 NIC 分配多个 IP 地址的帖子。

注意:我们将使用 Debian 10 (Buster) 来测试命令和过程。

临时为单个网卡添加多个 IP 地址

我们可以暂时将辅助 IP 地址添加到网络接口。 此方法添加的 IP 地址会一直保留到您重新启动系统。 让我们看看如何添加它:

1、在配置从IP地址前,可以通过以下命令查看系统当前的IP地址:

$ ip a

或者

$ ifconfig

这是我们系统上“ip a”命令的输出:

您可以看到我们系统上的当前或主 IP 地址是 192.168.72.189/24 在网卡上 ens37.

2. 现在,我们要为其分配辅助 IP 地址。

要为 NIC 分配辅助 IP 地址,语法如下:

$ ip adder add <ip-address> dev <interface-name>

例如,分配 10.1.1.10/8 作为 NIC 的辅助 IP ens37,我们将运行以下命令:

$ ip addr add 10.1.1.10/8 dev ens37

3. 现在,运行以下命令来验证是否已将辅助 IP 地址添加到 NIC:

$ ip a

同样,您可以向 NIC 添加更多 IP 地址。 但是,如前所述,这些 IP 地址是临时的,无法在重新启动后继续存在。

从 NIC 中删除多个 IP 地址

有两种方法可以从 NIC 中删除额外的 IP 地址。 第一个是重新启动系统,它会自动从 NIC 中删除临时 IP 地址。 但是,重新启动系统并不是一个实用的解决方案。 另一种正确的方法是使用“ip addr del”命令手动删除 IP 地址。

以下是从系统中删除 IP 地址的命令:

$ sudo ip addr del <ip-address> dev <interface-name>

例如,为了删除 IP 地址, 10.1.1.10/8 添加到 ens37,我们将运行以下命令:

$ sudo ip addr del 10.1.1.10/8 dev ens37

将多个 IP 地址永久添加到单个 NIC

“ip addr”命令临时将辅助 IP 地址分配给 NIC。 您还可以使用永久分配辅助 IP 地址 界面 配置文件,以便即使系统重新启动它也保持持久性。 让我们看看如何做到这一点:

1、在配置从IP地址前,可以通过以下命令查看系统当前的IP地址:

$ ip a

或者

$ ifconfig

这是我们系统上“ip a”命令的输出:

查看当前ip地址

您可以看到我们系统上的当前或主 IP 地址是 192.168.72.189/24 在网卡上 ens37. 现在我们要为其分配辅助 IP 地址。

2. 编辑 网卡 配置文件如下:

$ sudo nano /etc/network/interfaces

这是默认接口配置文件的样子:

接口配置文件

3. 现在,在当前配置行下,使用以下语法为辅助 IP 地址添加一个条目:

iface <interface-name> inet static

address <ip-address>

例如,分配 10.1.1.10/8 作为 NIC 的辅助 IP 地址 ens37,我们将在 /etc/网络/接口 文件:

iface ens37 inet static

address 10.1.1.10/8

接口配置文件

同样,您可以向 NIC 添加更多 IP 地址。 完成配置后,保存并 close 接口配置文件。

4. 现在,为了应用您对接口配置文件所做的配置更改,请重新启动网络服务,如下所示:

$ sudo systemctl restart networking.service

另一方面,您还可以通过关闭和启动网络接口来应用配置更改。

要关闭网络接口,请运行以下命令:

$ sudo ifdown ens37

然后运行以下命令来启动它:

$ sudo ifup ens37

5. 现在,运行以下命令来验证是否已将辅助 IP 地址添加到 NIC:

$ ip a

从 NIC 中删除多个 IP 地址

您还可以删除永久分配给网络接口的 IP 地址。 这是如何做到的:

1. 编辑 接口配置 文件:

$ sudo nano /etc/network.interfaces

2. 现在,删除您添加到 NIC 的附加 IP 地址条目,主 IP 地址除外。 完成后,保存,然后 close 文件。

3. 现在,重新启动网络服务以应用配置更改,如下所示:

$ sudo systemctl restart networking.service

另一方面,您还可以通过关闭和启动网络接口来应用配置更改。

要关闭网络接口,请运行以下命令:

$ sudo ifdown ens37

然后运行以下命令来启动它:

$ sudo ifup ens37

4. 现在,运行以下命令来验证是否已将辅助 IP 地址删除到 NIC:

$ ip a

在这篇文章中,您学习了如何为单个 NIC 分配和删除多个 IP 地址。 根据您的偏好,您可以临时或永久分配多个 IP 地址,如本文所述。