ip addr add
命令(如ip addr add 192.168.1.100/24 dev eth0
),重启失效;永久配置需编辑网络配置文件(如/etc/network/interfaces
或/etc/sysconfig/network-scripts/ifcfg-eth0:0
),定义静态IP后重启网络服务生效。在Linux系统中配置虚拟IP(也称为辅助IP)是网络管理中的常见任务,常用于高可用集群、负载均衡或服务冗余,以下是详细的操作指南,涵盖多种配置方法及注意事项,确保内容符合专业性和可靠性标准。
虚拟IP的作用
- 高可用性:主服务器故障时,虚拟IP自动漂移到备用节点,保障服务不间断。
- 负载均衡:多个服务共享同一IP,流量分发到不同后端。
- 多服务托管:单台服务器通过不同IP承载多个独立服务。
配置前的准备
- 权限要求:使用
root
用户或sudo
权限。 - 确认网卡信息:
ip addr show # 查看网卡名称(如eth0、ens33)
- IP规划:
- 虚拟IP需与主IP在同一子网,且未被其他设备占用。
- 示例:主IP为
168.1.10/24
,虚拟IP可设为168.1.100/24
。
配置方法(临时生效)
方法1:使用 ip
命令(推荐)
# 添加虚拟IP sudo ip addr add 192.168.1.100/24 dev eth0 label eth0:0 # 验证 ip addr show eth0 | grep "inet"
- 输出示例:
inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0 inet 192.168.1.100/24 scope global secondary eth0:0
方法2:使用 ifconfig
(旧版兼容)
sudo ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0 up
持久化配置(重启后生效)
不同Linux发行版的配置文件路径不同:
CentOS/RHEL (7+)
- 编辑网卡配置文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0:0 ```示例: ```ini DEVICE=eth0:0 BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 ONBOOT=yes
- 重启网络服务:
sudo systemctl restart network
Ubuntu/Debian (Netplan)
- 编辑Netplan配置文件(如
/etc/netplan/01-netcfg.yaml
):network: version: 2 ethernets: eth0: addresses: - 192.168.1.10/24 - 192.168.1.100/24 # 添加虚拟IP
- 应用配置:
sudo netplan apply
通用方法(Systemd-networkd)
创建虚拟网卡配置:
sudo vi /etc/systemd/network/05-virtual-ip.network
[Match] Name=eth0 [Network] Address=192.168.1.100/24
验证配置
- 检查IP是否生效:
ip addr show eth0 | grep "192.168.1.100"
- 测试连通性:
ping -c 4 192.168.1.100 # 从同网络其他设备Ping虚拟IP
常见问题解决
- IP冲突:
ping
测试无响应时,检查IP是否被其他设备占用,使用arp-scan -l
扫描局域网IP。 - 服务未监听:
确保服务绑定到0.0.0
而非特定IP(如Nginx配置listen 0.0.0.0:80
)。 - 虚拟IP消失:
持久化配置未生效时,检查配置文件语法(使用netplan try
或systemctl status network
)。
安全注意事项
- 避免IP冲突:虚拟IP需在DHCP范围外,防止地址分配冲突。
- 防火墙配置:
开放虚拟IP的端口(以Firewalld为例):sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept' --permanent sudo firewall-cmd --reload
- ARP广播限制:
在高可用场景(如Keepalived)中启用arp_ignore
和arp_announce
避免ARP污染。
适用场景建议
- Web服务器集群:通过虚拟IP实现负载均衡。
- 数据库主从切换:主库故障时虚拟IP漂移到从库。
- 服务迁移:更换物理IP时,用户无感知切换。
引用说明
- Linux
ip
命令文档:man ip-address
- Red Hat网络配置指南:官方文档
- Ubuntu Netplan配置:Ubuntu Netplan
- 高可用ARP设置:Linux内核文档
重要提示:操作前备份网络配置文件,生产环境建议在非高峰时段进行,本文内容基于Linux 5.x内核及主流发行版验证,适用于大多数场景。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/22692.html