配置故障转移 IP
本指南说明如何在 Linux VPS 上配置故障转移 IP。请选择与您的发行版及其网络管理器相对应的章节。
先决条件
- SSH root 或 sudo 访问权限
- 分配给您的 VPS 的故障转移 IP
- Linux 系统(Debian、Ubuntu、AlmaLinux、Rocky Linux、Fedora…)
使用 ifupdown 配置(/etc/network/interfaces)
这是 Debian 和旧版 Ubuntu 使用的传统方法。如果您的系统使用 Netplan(Ubuntu 18.04+),请参阅下一节。
-
禁用自动网络配置:
sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg添加此行:
network: {config: disabled} -
配置虚拟接口:
sudo nano /etc/network/interfaces.d/50-cloud-init添加这些行:
# 故障转移 IP 接口auto eth0:1iface eth0:1 inet staticaddress YOUR_FAILOVER_IPnetmask 255.255.255.255 -
重启网络服务:
sudo systemctl restart networking
使用 Netplan 配置(Ubuntu 18.04+)
在较新的基于 Ubuntu 的系统上,网络由 Netplan 管理,而不是 /etc/network/interfaces。请使用此方法代替上一节。
-
确定您的网络接口名称:
ip a(例如
eth0、ens3或enp1s0) -
编辑 Netplan 配置文件:
sudo nano /etc/netplan/50-cloud-init.yaml将故障转移 IP 添加到您的接口,保留现有配置(注意 YAML 缩进,2 个空格):
network:version: 2ethernets:eth0:addresses:- YOUR_FAILOVER_IP/32 -
应用配置:
sudo netplan apply
提示: 使用
sudo netplan try而不是netplan apply进行测试;如果您不确认,配置将在 120 秒后自动回滚,从而避免在出错时丢失 SSH 访问。
使用 network-scripts 配置(AlmaLinux / Rocky Linux 8 和 9)
在基于 RHEL 的发行版(AlmaLinux、Rocky Linux 8 和 9)上,为虚拟接口创建专用的配置文件。
-
确定您的网络接口名称:
ip a(例如
eth0或ens3) -
创建别名配置文件:
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0:1添加这些行:
DEVICE=eth0:1BOOTPROTO=staticIPADDR=YOUR_FAILOVER_IPNETMASK=255.255.255.255ONBOOT=yes -
重启网络服务:
sudo systemctl restart NetworkManager
使用 NetworkManager 配置(Fedora、AlmaLinux、Rocky Linux)
在 Fedora 以及较新版本的 AlmaLinux 和 Rocky Linux 上 ,网络直接通过 NetworkManager 连接文件管理。
-
确定您的接口连接文件:
ls /etc/NetworkManager/system-connections/ -
编辑相应的连接文件(例如
cloud-init-eth0.nmconnection):sudo nano /etc/NetworkManager/system-connections/cloud-init-eth0.nmconnection在
[ipv4]部分中,添加故障转移 IP:[ipv4]method=autoaddress1=YOUR_FAILOVER_IP/32 -
重启 NetworkManager:
sudo systemctl restart NetworkManager
验证
-
验证 IP 是否正确配置:
ip addr show -
测试连接性:
ping -I YOUR_FAILOVER_IP 8.8.8.8
最佳实践
- 记录您的网络配置
- 在任何生产部署 之前测试配置
- 保留配置文件的备份
- 在连接丢失的情况下配置警报
故障排除
- 检查系统日志:
sudo journalctl -xe - 检查网络配置:
sudo networkctl status - 确保 IP 正确分配给您的 VPS
- 验证没有 IP 冲突
- 作为最后手段,以 rescue 模式启动您的服务器并即时添加 IP:
ip addr add YOUR_FAILOVER_IP/32 dev eth0
重要说明
- 故障转移 IP 必须使用网络掩码 255.255.255.255 进行配置
- 某些服务可能需要重新配置以使用新 IP
- 配置可能因您的 Linux 发行版而异