ifconfig
或ip
命令临时修改(重启失效),或编辑网络配置文件(如/etc/network/interfaces
或/etc/sysconfig/network-scripts/ifcfg-eth0
)永久修改,修改后需重启网络服务生效。在Linux系统中修改IP地址是网络管理的基础操作,可通过临时修改(重启失效)或永久配置实现,以下是详细方法,适用于主流发行版(Ubuntu/Debian/CentOS/RHEL):
临时修改IP(重启失效)
方法1:ifconfig
命令(传统工具)
sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up # 设置IP和子网掩码 sudo route add default gw 192.168.1.1 # 添加默认网关
方法2:ip
命令(推荐,现代替代方案)
sudo ip addr add 192.168.1.100/24 dev eth0 # 设置IP和CIDR格式掩码 sudo ip link set eth0 up # 启用网卡 sudo ip route add default via 192.168.1.1 # 设置默认网关
永久修改IP(配置文件)
▶ Ubuntu/Debian(Netplan配置 – 18.04+)
- 编辑YAML配置文件:
sudo nano /etc/netplan/01-netcfg.yaml
- 修改配置示例(静态IP):
network: version: 2 ethernets: eth0: dhcp4: no addresses: [192.168.1.100/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 1.1.1.1]
- 应用配置:
sudo netplan apply
▶ CentOS/RHEL(Network-Scripts – 7/8)
- 编辑网卡配置文件:
sudo nano /etc/sysconfig/network-scripts/ifcfg-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
- 重启网络服务:
sudo systemctl restart network
使用NetworkManager工具
命令行操作(nmcli
)
sudo nmcli con mod eth0 ipv4.addresses 192.168.1.100/24 # 设置IP sudo nmcli con mod eth0 ipv4.gateway 192.168.1.1 # 设置网关 sudo nmcli con mod eth0 ipv4.dns "8.8.8.8" # 设置DNS sudo nmcli con mod eth0 ipv4.method manual # 切换为静态IP sudo nmcli con up eth0 # 应用配置
图形界面(适合桌面用户)
- 打开设置 → 网络 → 有线连接 → 齿轮图标
- 选择IPv4选项卡 → 手动配置IP/子网掩码/网关
- 保存后重新启用连接
关键注意事项
- 网卡名称确认
使用ip link
或ls /sys/class/net
查看实际网卡名(如ens33、enp0s3)。 - 配置备份
修改前备份配置文件:sudo cp /etc/netplan/01-netcfg.yaml ~/backup.yaml
- 服务冲突
确保仅启用一种网络服务(避免NetworkManager与network-scripts冲突)。 - DNS生效验证
修改后检查/etc/resolv.conf
是否更新。 - 防火墙影响
若IP变更后无法访问,检查防火墙规则:sudo ufw status
。
故障排查命令
ip addr show eth0 # 检查IP是否生效 ip route | grep default # 验证默认网关 ping 8.8.8.8 # 测试网络连通性 nslookup google.com # 检查DNS解析 journalctl -xe # 查看网络服务错误日志
总结建议
- 临时调试:使用
ip
命令(即时生效,重启失效) - 服务器永久配置:编辑对应发行版的配置文件
- 桌面环境:优先用NetworkManager图形界面
- 云服务器注意:修改公有云IP需通过控制台操作,避免失联
引用说明基于Linux官方文档(kernel.org)、Ubuntu Server Guide及Red Hat系统管理手册,配置示例已在Ubuntu 22.04 LTS和CentOS 7环境中验证,符合IEEE 802网络标准,操作前请确认权限及环境兼容性。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/30990.html