Linux服务器手动修改IP
约 1389 字大约 5 分钟
2025-11-14
操作前准备
以 root 用户登录,或在所有命令前加
sudo。先确认当前网卡名称和 IP:
ip addr常见网卡名如:
eth0、ens33、enp0s3等。修改前建议备份配置文件,方便回滚。
提示
本文以下示例均以网卡名 ens33、新 IP 192.168.1.20/24、网关 192.168.1.1 为例,请按实际情况替换。
临时修改 IP(重启后失效,所有发行版通用)
提示
只临时测试新 IP,可使用此方法。
查看当前 IP:
ip addr show dev ens33删除旧 IP(示例:旧 IP 为 192.168.1.10/24):
ip addr del 192.168.1.10/24 dev ens33添加新 IP(示例:新 IP 为 192.168.1.20/24):
ip addr add 192.168.1.20/24 dev ens33如需设置默认网关(示例:网关 192.168.1.1),先删除旧网关(如有):
ip route ip route del default via 192.168.1.1添加新网关:
ip route add default via 192.168.1.1检查结果:
ip addr show dev ens33 ip route ping -c 4 114.114.114.114
永久修改 IP(常见发行版)
配置文件路径:/etc/sysconfig/network-scripts/ifcfg-网卡名
确认网卡名:
ip addr备份原配置:
cd /etc/sysconfig/network-scripts/ cp ifcfg-ens33 ifcfg-ens33.bak编辑配置文件:
vi ifcfg-ens33参考配置(静态 IP 示例):
TYPE=Ethernet BOOTPROTO=static NAME=ens33 DEVICE=ens33 ONBOOT=yes IPADDR=192.168.1.20 PREFIX=24 GATEWAY=192.168.1.1 DNS1=114.114.114.114 DNS2=8.8.8.8配置项说明
IPADDR:新 IPPREFIX:子网掩码位数(24 对应 255.255.255.0)GATEWAY:默认网关DNS1/DNS2:DNS 服务器
重启网络服务:
# CentOS 7 systemctl restart network # CentOS 6 service network restart检查:
ip addr show dev ens33 ip route ping -c 4 114.114.114.114 ping -c 4 www.baidu.com
查看连接名称(不是网卡名):
nmcli connection show记住对应的
NAME,如:System ens33或ens33。查看当前配置:
nmcli connection show "ens33"修改为静态 IP(示例:IP 192.168.1.20/24,网关 192.168.1.1):
nmcli connection modify "ens33" ipv4.addresses 192.168.1.20/24 nmcli connection modify "ens33" ipv4.gateway 192.168.1.1 nmcli connection modify "ens33" ipv4.dns "114.114.114.114 8.8.8.8" nmcli connection modify "ens33" ipv4.method manual重新启用连接:
nmcli connection down "ens33" nmcli connection up "ens33"检查:
ip addr show dev ens33 ip route ping -c 4 www.baidu.com
配置文件路径:/etc/netplan/*.yaml
列出 netplan 文件:
ls /etc/netplan/常见如:
01-netcfg.yaml、50-cloud-init.yaml等。备份配置:
cd /etc/netplan/ cp 01-netcfg.yaml 01-netcfg.yaml.bak编辑配置文件:
vi 01-netcfg.yaml示例配置(静态 IP):
network: version: 2 renderer: networkd ethernets: ens33: dhcp4: no addresses: - 192.168.1.20/24 gateway4: 192.168.1.1 nameservers: addresses: [114.114.114.114, 8.8.8.8]注意
- 缩进必须使用空格,不能用 Tab。
ens33替换为实际网卡名。- IP、网关、DNS 按实际情况修改。
应用配置:
netplan apply检查:
ip addr show dev ens33 ip route ping -c 4 114.114.114.114 ping -c 4 www.baidu.com
备份配置文件:
cp /etc/network/interfaces /etc/network/interfaces.bak编辑配置:
vi /etc/network/interfaces示例配置(静态 IP):
auto ens33 iface ens33 inet static address 192.168.1.20 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 114.114.114.114 8.8.8.8根据实际网卡名和 IP 修改。
重启网络服务:
systemctl restart networking # 或 service networking restart检查:
ip addr show dev ens33 ip route ping -c 4 www.baidu.com
修改 IP 时的通用检查步骤
查看 IP 是否生效:
ip addr show dev ens33查看路由和网关是否正确:
ip route应存在类似:
default via 192.168.1.1 dev ens33测试外网连通性:
ping -c 4 114.114.114.114 ping -c 4 www.baidu.com如果是服务器,通过控制台(云厂商提供的 VNC/控制台)再次确认,以防 SSH 连接中断后无法登录。
常见问题与排查思路
修改 IP 后 SSH 断开且无法连接
检查以下几项:
- 新 IP 是否和服务器所在网段一致。
- 是否配置了正确的网关和掩码。
- 云服务器安全组、防火墙是否放通 22 端口。
能 ping 通网关,但不能访问外网
检查以下几项:
ip route是否有默认路由default via 网关。DNS 是否配置正确,可尝试:
ping -c 4 8.8.8.8能 ping IP 但不能 ping 域名,则问题在 DNS。
DNS 配置位置(部分系统)
常见文件:
/etc/resolv.conf示例内容:
nameserver 114.114.114.114 nameserver 8.8.8.8
resolv.conf 重启后被自动重置
手动改了 /etc/resolv.conf,重启或网络服务重启后又被改回去,是因为该文件由网络管理服务(NetworkManager / netplan / cloud-init / dhclient)自动生成。正确做法是把 DNS 写进它的来源配置,而不是直接改 resolv.conf:
- CentOS(ifcfg):写
DNS1=、DNS2=,见上文示例。 - CentOS 8+ / Rocky(nmcli):
nmcli connection modify "ens33" ipv4.dns "...",见上文示例。 - Ubuntu(netplan):写
nameservers:段,见上文示例。 - Debian(interfaces):写
dns-nameservers(需安装 resolvconf 包)。
应急兜底
来源配置改不了时,可 sudo chattr +i /etc/resolv.conf 锁定文件禁止改写;这是临时手段,日后要变更 DNS 时记得先 chattr -i 解锁。
子网掩码错误导致无法通信
- 典型示例:实际网段是 192.168.1.0/24,却配置为 255.255.0.0 或其它。
- 一般家用或中小企业局域网掩码为
255.255.255.0(即/24)。
恢复到修改前状态
直接用之前的备份文件覆盖:
cp ifcfg-ens33.bak ifcfg-ens33
# 或
cp 01-netcfg.yaml.bak 01-netcfg.yaml
# 然后重启网络服务或 netplan apply简要操作流程总结
确认网卡名:
ip addr修改对应配置文件或使用
nmcli/netplan。重启网络服务或应用配置:
- CentOS:
systemctl restart network或nmcli connection down/up - Ubuntu:
netplan apply或systemctl restart networking
- CentOS:
检查:
ip addr ip route ping -c 4 114.114.114.114 ping -c 4 www.baidu.com
提示
注:文档部分内容可能由 AI 生成,如果有发现错误,请反馈我们。
