如何在 Debian 9 中的现有接口上设置其他 IP 地址?

如何在 Debian 9 中的现有接口上设置其他 IP 地址?

我需要在我的 VPS 上为我的主以太网接口设置一个故障转移 IP 地址。

我可以找到适用于 Debian 7 和 8 的任何类型的指南/教程,但它们不适用于 Debian 9 (Stretch),因为此版本中有关网络接口的某些内容发生了变化。

OVH 的使用 Debian 配置故障转移 IP指示我一直在遵循这样的指南。我编辑/etc/network/interfaces

# 该文件描述了系统上可用的网络接口
# 以及如何激活它们。有关详细信息,请参阅接口(5)。

源/etc/network/interfaces.d/*

# 环回网络接口
自动定位
iface lo inet环回

# 主网络接口
允许热插拔 ens4
iface ens4 inet dhcp

自动 ens4:0
iface ens4:0 inet 静态
地址-IP我不会在pastebin上输入-
网络掩码 255.255.255.255
广播-与之前相同的IP-

重新启动networking服务会在日志中生成以下消息:

gen 25 11:37:26 vps370990 ifup[15870]:来自 DHCP_SERVER_IP 的 MY_VPS_IP 的 DHCPACK。
gen 25 11:37:26 vps370990 ifup[15870]:绑定到 MY_VPS_IP - 34720 秒内更新。
gen 25 11:37:26 vps370990 ifup[15870]:找不到设备“ens4:0”
gen 25 11:37:26 vps370990 ifup[15870]: ifup: 无法启动 ens4:0
gen 25 11:37:27 vps370990 systemd[1]:networking.service:主进程已退出,代码=已退出,状态=1/失败
gen 25 11:37:27 vps370990 systemd[1]:无法启动 Raise 网络接口。
gen 25 11:37:27 vps370990 systemd[1]:networking.service:单元进入失败状态。
gen 25 11:37:27 vps370990 systemd[1]:networking.service:失败,结果为“退出代码”。

我怎样才能做到这一点?

答案1

在 debian 9 上我添加了一个故障转移 IP,如下所示:

备份旧conf

cp /etc/systemd/network/50-default.network /etc/systemd/network/50-default.network.bak

编辑网络文件

vim /etc/systemd/network/50-default.network

添加新的 [地址] 块(每个 IP 地址 1 个)

[Address]
Address=139.130.4.5/32
[Address]
Address=138.131.5.6/32

现在重新启动

systemctl restart systemd-networkd

答案2

来自评论:

@RuiFRibeiro 好的,由于某种原因,我无法理解逻辑网络设备名称不是“ens4”而是“ens3”,即使它在接口设置文件中被称为 ens4。事实上,我看到 ens3 同时使用“ifconfig”和“lshw -C network | grep '逻辑名称'”。我编辑了接口文件,保留 ens4 部分,因为它与 dhcp 相同,并将我的新 IP 分配给 ens3:0 并且它可以工作。 -- qwert

实际上,ens4其中的线路/etc/network/interfaces可能完全不起作用,并且ens3NetworkManager 使用其默认设置(即使用 DHCP)来配置主接口。

ens4将明确引用 PCIe 热插拔插槽 #4 中的 NIC,ens3同样引用 PCIe 热插拔插槽 #3。因此,如果插槽 #4 中没有 NIC,这就是为什么

allow-hotplug ens4
iface ens4 inet dhcp

线路被忽略。

相关内容