在Linux系统中修改IP地址是常见的网络管理任务,适用于服务器配置、网络调试等场景,以下是详细方法,涵盖临时修改与永久配置,确保操作安全可靠,操作前请备份重要数据,并确保具备管理员权限(使用sudo
或root
用户)。
- 查看当前网络信息
使用以下命令获取网卡名称、现有IP、网关和DNS:ip addr show # 查看网卡名称(如eth0、ens33) ip route # 查看网关(default via后接的IP) cat /etc/resolv.conf # 查看DNS
- 记录关键参数
- 目标IP地址、子网掩码(如
255.255.0
或CIDR格式/24
) - 网关地址(如
168.1.1
) - DNS服务器(如
8.8.8
)
- 目标IP地址、子网掩码(如
临时修改IP(重启失效)
方法1:使用ip
命令(推荐)
sudo ip addr add <新IP>/<子网掩码位数> dev <网卡名> # 添加新IP sudo ip addr del <旧IP>/<子网掩码位数> dev <网卡名> # 删除旧IP(可选) sudo ip route add default via <网关IP> dev <网卡名> # 设置默认网关
示例:
sudo ip addr add 192.168.1.100/24 dev eth0 sudo ip route add default via 192.168.1.1 dev eth0
方法2:使用ifconfig
(旧版工具)
sudo ifconfig <网卡名> <新IP> netmask <子网掩码> sudo route add default gw <网关IP> <网卡名>
示例:
sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 sudo route add default gw 192.168.1.1 eth0
⚠️ 注意:临时修改仅当前会话有效,重启网络或系统后恢复原配置。
永久修改IP(不同发行版方法)
Ubuntu/Debian(使用Netplan)
- 编辑Netplan配置文件(路径可能不同):
sudo nano /etc/netplan/01-netcfg.yaml
- (使用YAML语法):
network: version: 2 renderer: networkd ethernets: eth0: # 网卡名 addresses: [192.168.1.100/24] gateway4: 192.168.1.1 # IPv4网关 nameservers: addresses: [8.8.8.8, 1.1.1.1] # DNS
- 应用配置:
sudo netplan apply
CentOS/RHEL 7+(使用NetworkManager)
- 修改网卡配置文件:
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
- 更新以下参数:
BOOTPROTO=static # 静态IP IPADDR=192.168.1.100 NETMASK=255.255.255.0 # 或PREFIX=24 GATEWAY=192.168.1.1 DNS1=8.8.8.8 DNS2=1.1.1.1 ONBOOT=yes # 开机自启
- 重启网络服务:
sudo systemctl restart NetworkManager
openSUSE(使用Yast或配置文件)
- 命令行修改:
sudo yast2 network # 图形化工具
- 或手动编辑:
sudo nano /etc/sysconfig/network/ifcfg-eth0
设置参数:
BOOTPROTO='static' IPADDR='192.168.1.100/24' GATEWAY='192.168.1.1' DNS_SERVERS='8.8.8.8'
验证修改结果
- 检查IP与网关:
ip addr show eth0 # 确认新IP生效 ip route # 检查网关 ping google.com # 测试网络连通性
- 验证DNS解析:
nslookup google.com # 或使用 dig
常见问题解决
- 网卡未启动:
执行sudo ip link set eth0 up
启用网卡。 - IP冲突:
确保新IP未被其他设备占用(使用arp-scan
检测)。 - 配置未生效:
检查配置文件语法(如YAML缩进)、重启网络服务或系统。 - DNS失效:
确认/etc/resolv.conf
是否更新,或检查DNS配置位置(部分系统由NetworkManager管理)。
安全提示
- 远程操作风险:
修改IP可能导致SSH连接断开,建议通过控制台(如KVM)操作。 - 备份配置文件:
执行cp /etc/netplan/01-netcfg.yaml ~/backup.yaml
避免配置错误。 - 防火墙设置:
若启用防火墙(如ufw
或firewalld
),需更新规则允许新IP通信。
修改Linux IP需区分临时与永久需求,不同发行版配置文件路径和工具各异,建议优先使用ip
命令和发行版官方推荐工具(如Netplan),掌握基础网络命令(ip
, ping
, nslookup
)能有效排查问题,对于生产环境,建议在非高峰时段操作并提前测试。
引用说明:本文参考Linux官方文档(kernel.org)、Ubuntu Netplan指南、Red Hat网络配置手册及NetworkManager开发者文档,确保内容符合技术规范,操作命令已在Ubuntu 22.04、CentOS 8和openSUSE Leap 15.4验证。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7294.html