我需要在我的 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
可能完全不起作用,并且ens3
NetworkManager 使用其默认设置(即使用 DHCP)来配置主接口。
ens4
将明确引用 PCIe 热插拔插槽 #4 中的 NIC,ens3
同样引用 PCIe 热插拔插槽 #3。因此,如果插槽 #4 中没有 NIC,这就是为什么
allow-hotplug ens4
iface ens4 inet dhcp
线路被忽略。