在 Linux 网络配置中,ip addr 命令用于临时设置 IP 地址,而配置 IP 库(如 /etc/network/interfaces 或 /etc/sysconfig/network-scripts/ifcfg-eth0)则是让这些配置持久化的唯一方法,本文详细讲解 ip addr 配置ip 的操作步骤,并介绍配置 IP 库的完整流程。参考2
ip addr 配置ip 怎么设置?详细命令教程
ip addr 属于 iproute2 工具集,是现代 Linux 系统网络配置的标准工具,操作直观且支持丰富选项。
添加和删除 IP 地址
- 添加 IP 地址:
ip addr add 192.168.1.100/24 dev eth0 - 删除 IP 地址:
ip addr del 192.168.1.100/24 dev eth0 - 查看所有 IP 地址:
ip addr show
这些命令会立即生效,但不会保存到配置文件,如果你需要临时配置一个 IP 进行测试,用 ip addr 非常方便。
配置多个 IP 地址
一个网卡可以绑定多个 IP 地址,只需重复使用 add 命令:
ip addr add 192.168.1.101/24 dev eth0ip addr add 192.168.1.102/24 dev eth0
使用 ip addr show 可以查看所有配置的地址,每个地址会显示独立的作用域。
ip addr 常用选项详解
- label:为地址添加标签,便于管理,
ip addr add 192.168.1.100/24 dev eth0 label eth0:0 - scope:设置地址范围,
scope link用于仅链路通信,scope global用于全局可达 - broadcast:指定广播地址,如
broadcast 192.168.1.255
这些选项在复杂网络场景中非常实用,可以更精细地控制 IP 地址行为。
ip addr 配置ip 与 ifconfig 区别
很多老用户习惯用 ifconfig,但 ip addr 在功能和性能上更胜一筹。
| 对比项 | ip addr | ifconfig |
|---|---|---|
| 所属包 | iproute2 | net-tools |
| 协议支持 | IPv4/IPv6 完美支持 | IPv6 支持较弱 |
| 路由配置 | 可同时配置路由 | 需额外命令 |
| 现代性 | 推荐使用 | 已逐渐淘汰 |
行业共识认为,iproute2 是未来 Linux 网络配置的标准,建议新配置时优先使用 ip addr 命令。
centos ip addr 配置ip 示例
在 CentOS 7 及以上版本中,ip addr 命令同样适用,临时配置 eth0 接口的 IP:
ip addr add 10.0.0.200/24 dev eth0ip addr show dev eth0
但注意,CentOS 的永久配置库文件位于 /etc/sysconfig/network-scripts/ifcfg-eth0,我们会在下一部分详细说明。
配置IP库 永久生效的配置方法
配置 IP 库,就是指将 IP 地址写入系统的网络配置文件,确保重启后配置依然存在,不同 Linux 发行版有不同的配置库文件。
配置IP库 文件位置
- Debian/Ubuntu:
/etc/network/interfaces - CentOS/RHEL:
/etc/sysconfig/network-scripts/ifcfg- - Ubuntu 18.04+:
/etc/netplan/.yaml
配置IP库 格式示例
Debian/Ubuntu 格式:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
CentOS/RHEL 格式:
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
ONBOOT=yes
Netplan 格式(Ubuntu 18.04+):

network:
version: 2
ethernets:
eth0:
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8]
配置IP库 后重新加载网络
编辑完配置文件后,需要重启网络服务使其生效:
- Debian/Ubuntu:
systemctl restart networking或ifdown eth0 && ifup eth0 - CentOS/RHEL:
systemctl restart network或ifdown eth0; ifup eth0 - Netplan:
netplan apply
配置IP库 常见错误解决
- 语法错误:配置文件格式错误会导致网络服务重启失败,检查每一行,注意空格和缩进,Netplan 对 YAML 语法敏感。
- 接口名冲突:确保配置中的接口名称与实际设备一致,检查
/sys/class/net/下的接口名。 - IP 冲突:局域网内 IP 重复会导致连通性问题,配置前先用
ping测试目标 IP 是否被占用。
综合场景:临时配置与永久配置的结合
场景:临时测试新 IP 配置
在生产环境中,需要在不影响现有服务的情况下测试新 IP,步骤如下:
- 使用
ip addr add 192.168.1.200/24 dev eth0临时添加 IP。 - 使用
ping -c 4 192.168.1.1测试网关连通性。 - 确认无误后,将配置写入配置IP库文件。
- 重启网络服务,确保永久生效。
配置IP库 自动化脚本示例
运维人员可以编写脚本,通过 ip addr 临时配置,同时更新配置文件,CentOS 下的简化脚本:
#!/bin/bash IP="192.168.1.200" DEV="eth0" # 临时配置 ip addr add $IP/24 dev $DEV # 写入配置库 echo "IPADDR=$IP" >> /etc/sysconfig/network-scripts/ifcfg-$DEV systemctl restart network
这样既保证了即时生效,又实现了持久化,适合批量部署场景。
配置IP库 与 DHCP 结合
有些场景下,一个接口使用 DHCP,另一个接口使用静态 IP,配置方法如下:参考2
- 在 Debian/Ubuntu 中,配置文件中可以同时包含 auto eth0 和 iface eth0 inet dhcp,以及 static 部分。
- 在 CentOS 中,
BOOTPROTO=dhcp与静态参数不能混用,建议为不同接口单独配置。
ip addr 配置ip 与配置IP库 常见问题解答
问题1:ip addr 配置ip 后怎么保存?
ip addr 命令配置的 IP 地址只在当前运行状态下有效,重启后消失,要永久保存,必须将配置写入系统对应的配置IP库文件(如 /etc/network/interfaces 或 ifcfg 文件),然后重启网络服务使配置生效。
问题2:配置IP库 文件在哪里?
配置IP库文件位置因发行版而异:Debian/Ubuntu 在 /etc/network/interfaces;CentOS/RHEL 在 /etc/sysconfig/network-scripts/ifcfg-;Ubuntu 18.04 以上使用 /etc/netplan/.yaml,可以通过 man interfaces 或发行版文档确认具体路径。
问题3:ip addr 配置ip 和 ifconfig 配置ip 有什么区别?
ip addr 是 iproute2 包的命令,功能更强大,支持 IPv6、策略路由、标签管理等高级特性;ifconfig 来自 net-tools,已停止维护且功能有限,在脚本编写和永久配置配合方面,ip addr 更加灵活,是未来网络配置的主流工具。
无论是临时调试还是永久部署,掌握 ip addr 命令和配置 IP 库的方法,都是 Linux 网络管理的核心技能,通过本文的实操讲解,你应该能够独立完成 IP 地址的临时配置和持久化设置。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/532198.html


