以 root 用户登录,或在所有命令前加 sudo。
先确认当前网卡名称和 IP:常见网卡名如:eth0、ens33、enp0s3 等。
修改前建议备份配置文件,方便回滚。
提示:只临时测试新 IP,可使用此方法。
查看当前 IP:将 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
#3.1 CentOS 6/7(使用 ifcfg 配置文件)
配置文件路径:/etc/sysconfig/network-scripts/ifcfg-网卡名
1.确认网卡名:2.备份原配置:cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33.bak
将 ens33 换成实际网卡名。
3.编辑配置文件:4.参考配置(静态 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:新 IP
PREFIX:子网掩码位数(24 对应 255.255.255.0)
GATEWAY:默认网关
DNS1/DNS2:DNS 服务器
5.重启网络服务:
CentOS 7:systemctl restart network
CentOS 6:6.检查:ip addr show dev ens33
ip route
ping -c 4 114.114.114.114
ping -c 4 www.baidu.com
#3.2 CentOS 8 / Rocky / AlmaLinux(使用 NetworkManager + nmcli)
1.查看连接名称(不是网卡名):记住对应的 NAME,如:System ens33 或 ens33。
2.查看当前配置:nmcli connection show "ens33"
3.修改为静态 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
4.重新启用连接:nmcli connection down "ens33"
nmcli connection up "ens33"
5.检查:ip addr show dev ens33
ip route
ping -c 4 www.baidu.com
#3.3 Ubuntu 18.04 及以上(使用 netplan)
配置文件路径:/etc/netplan/*.yaml
1.列出 netplan 文件:常见如:01-netcfg.yaml、50-cloud-init.yaml 等。
2.备份配置:cd /etc/netplan/
cp 01-netcfg.yaml 01-netcfg.yaml.bak
3.编辑配置文件:4.示例配置(静态 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 按实际情况修改。
5.应用配置:6.检查:ip addr show dev ens33
ip route
ping -c 4 114.114.114.114
ping -c 4 www.baidu.com
#3.4 Ubuntu 16.04 / Debian(使用 /etc/network/interfaces)
1.备份配置文件:cp /etc/network/interfaces /etc/network/interfaces.bak
2.编辑配置:vi /etc/network/interfaces
3.示例配置(静态 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 修改。
5.重启网络服务:systemctl restart networking
或service networking restart
6.检查:ip addr show dev ens33
ip route
ping -c 4 www.baidu.com
1.查看 IP 是否生效:2.查看路由和网关是否正确:应存在类似:default via 192.168.1.1 dev ens33
3.测试外网连通性:ping -c 4 114.114.114.114
ping -c 4 www.baidu.com
4.如果是服务器,通过控制台(云厂商提供的 VNC/控制台)再次确认,以防 SSH 连接中断后无法登录。
1.修改 IP 后 SSH 断开且无法连接
检查:
- 新 IP 是否和服务器所在网段一致。
- 是否配置了正确的网关和掩码。
- 云服务器安全组、防火墙是否放通 22 端口。
- 能 ping 通网关,但不能访问外网
检查:
- ip route 是否有默认路由 default via 网关。
- DNS 是否配置正确,可尝试:
能 ping IP 但不能 ping 域名,则问题在 DNS。
3.DNS 配置位置(部分系统)
- 示例内容:
nameserver 114.114.114.114
nameserver 8.8.8.8
4.子网掩码错误导致无法通信
- 典型示例:实际网段是 192.168.1.0/24,却配置为 255.255.0.0 或其它。
- 一般家用或中小企业局域网掩码为 255.255.255.0(即 /24)。
5.恢复到修改前状态
cp ifcfg-ens33.bak ifcfg-ens33
# 或
cp 01-netcfg.yaml.bak 01-netcfg.yaml
# 然后重启网络服务或 netplan apply
1.确认网卡名:
2.修改对应配置文件或使用 nmcli / netplan。
3.重启网络服务或应用配置:
- CentOS:systemctl restart network 或 nmcli connection down/up
- Ubuntu:netplan apply 或 systemctl restart networking
4.检查:ip addr
ip route
ping -c 4 114.114.114.114
ping -c 4 www.baidu.com
|