由于各种原因,例如将不同的服务绑定到不同的 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 地址是 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 地址,如本文所述。