温馨提示×

Centos如何替换默认网关

小樊
60
2026-08-19 14:45:09
栏目: 智能运维

在 CentOS 中替换(修改)默认网关,方法取决于你使用的是 CentOS 7/8 的 NetworkManager 还是 传统 network 服务,以及是临时生效还是永久生效。下面按常见场景说明。


一、临时替换默认网关(立即生效,重启失效)

1️⃣ 查看当前默认网关

ip route

route -n

示例:

default via 192.168.1.1 dev eth0

2️⃣ 删除旧默认网关

ip route del default

如果有多个默认路由,可指定删除:

ip route del default via 192.168.1.1

3️⃣ 添加新默认网关

ip route add default via 192.168.2.1 dev eth0

✅ 立即生效
❌ 重启网络或系统后失效


二、永久替换默认网关(推荐)

✅ CentOS 7 / 8(使用 NetworkManager)

方法一:使用 nmcli(推荐)

1️⃣ 查看连接名
nmcli connection show
2️⃣ 修改网关(假设连接名为 eth0)
nmcli connection modify eth0 ipv4.gateway 192.168.2.1
3️⃣ 重新激活连接
nmcli connection down eth0
nmcli connection up eth0

✅ 永久生效
✅ 重启后保留


✅ CentOS 6 / 旧版本(network 服务)

修改网卡配置文件

vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改或添加:

GATEWAY=192.168.2.1

如果是多网卡,建议统一写在

vi /etc/sysconfig/network
GATEWAY=192.168.2.1

然后重启网络:

service network restart

三、多默认网关(高级场景)

查看路由表

ip route

添加带 metric 的网关(优先级)

ip route add default via 192.168.2.1 dev eth1 metric 100

metric 越小,优先级越高。


四、验证是否生效

ip route | grep default

或测试外网:

ping -c 3 8.8.8.8

五、常见问题

❓ 修改后不生效?

  • 是否多网卡冲突
  • NetworkManager 是否接管网络
  • 是否被 DHCP 覆盖(建议改为 static)

❓ DHCP 环境下如何改?

nmcli connection modify eth0 ipv4.ignore-auto-routes yes
nmcli connection modify eth0 ipv4.gateway 192.168.2.1

六、总结

方式 是否永久 适用
ip route 临时调试
nmcli CentOS 7/8
ifcfg-* 传统方式

如果你愿意,可以告诉我:

  • ✅ CentOS 版本
  • ✅ 是否 DHCP
  • ✅ 单网卡还是多网卡

我可以给你精确命令

0