在网络管理工作中,修改网关是一项基础但至关重要的操作,对于使用CentOS系统的管理员而言,掌握通过命令行修改网关的方法是必备技能,网关,如同网络流量的“交通枢纽”,负责将数据包导向外部网络,一旦设置不当,就会导致网络连接中断,本文将详细介绍在CentOS 7及CentOS 8系统中,修改网关的几种主流且可靠的方法。
理解网关与网络配置基础
在开始操作之前,我们首先需要明确网关的作用,它通常是你所在局域网的路由器地址,当你的服务器需要访问另一个网络(例如互联网)时,所有数据包都会首先发送到网关,由网关进行后续路由。

在CentOS系统中,网络配置经历了从传统到现代的演变,CentOS 7主要支持传统的network.service和逐渐兴起的NetworkManager,而CentOS 8及之后的版本则推荐使用NetworkManager和nmcli命令,我们将分别探讨这两种环境下的操作方法。
使用nmcli命令(推荐用于CentOS 7/8)
nmcli是NetworkManager的命令行工具,它是当前管理CentOS网络配置最灵活和先进的方式,它允许我们动态修改配置并立即生效,同时保证配置在重启后依然持久化。
查看当前网络连接信息
我们需要确定要修改的网络连接名称。
nmcli connection show
此命令会列出所有可用的网络连接,找到你正在使用的那个,ens192 或 Wired connection 1。
修改网关地址

假设我们的连接名是 ens192,新的网关IP是 168.1.1。
sudo nmcli connection modify ens192 ipv4.gateway "192.168.1.1"
这条命令修改了连接配置,但尚未激活。
使配置生效
要使新的网关地址立即生效,我们需要重新激活这个网络连接。
sudo nmcli connection up ens192
或者,你也可以选择先关闭再开启:
sudo nmcli connection down ens192 sudo nmcli connection up ens192
验证网关设置

修改完成后,务必使用以下命令验证网关是否已经成功修改:
ip route show
或者使用传统命令:
netstat -rn
在输出结果中,查找 default via 后面的IP地址,那就是你当前生效的默认网关。
使用nmcli的优势在于,它一次性完成了配置的修改和持久化,无需编辑文件,非常适合脚本化管理和初学者,有效避免了因编辑错误导致的网络故障。
修改网络配置文件(CentOS 7的传统方式)
对于习惯使用传统方式,或者系统仅安装了network.service的环境,可以通过直接编辑网卡配置文件来实现。
定位网卡配置文件
网卡配置文件通常位于 /etc/sysconfig/network-scripts/ 目录下,文件名格式为 ifcfg-<连接名>,ifcfg-ens192。
编辑配置文件
使用文本编辑器(如vim)打开该文件:
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens192
在文件中,找到 GATEWAY 这一行,如果存在,直接修改其值;如果不存在,则在文件末尾添加一行。
GATEWAY=192.168.1.1
请确保 BOOTPROTO 的值为 static 或 none,ONBOOT 的值为 yes,以确保配置在启动时被加载。
重启网络服务
保存文件并退出编辑器后,需要重启网络服务来使更改生效。
sudo systemctl restart network
验证设置
同样,使用 ip route show 命令来确认网关已成功修改。
这种方法虽然直接,但需要管理员对文件格式有一定了解,手动操作存在一定的出错风险,在重启网络服务时,如果配置有误,可能会导致当前SSH连接断开。
使用ip命令(临时性修改)
如果需要临时修改网关进行测试,或者在不中断现有连接的情况下调整路由,ip 命令是理想选择,但请注意,此方法做出的改动在服务器重启后会失效。
删除现有默认路由
需要删除当前的默认网关。
sudo ip route del default
添加新的默认路由
添加新的默认网关,假设网关为 168.1.1,网卡为 ens192。
sudo ip route add default via 192.168.1.1 dev ens192
立即验证
修改后可以立即使用 ip route show 进行验证,这种方式的灵活性非常高,适用于临时故障排查或网络切换场景。
关键要点与故障排查
在修改网关时,有几点核心注意事项:
- 权限:所有修改操作都需要
root权限,记得使用sudo。 - 准确性:确保输入的网关IP地址是正确的、可达的。
- 匹配性:网关地址必须与你服务器IP地址在同一个网段。
如果修改后网络不通,可以按以下思路排查:
- 检查IP地址:确认本机IP地址设置正确。
- 物理连接:确保网线已连接或网络设备正常工作。
- 防火墙:检查本地或网关路由器上的防火墙是否阻断了通信。
- 网关可达性:尝试
ping一下网关地址,看是否能通。
从我个人的运维经验来看,对于新部署的CentOS系统,强烈建议优先学习和使用 nmcli 命令,它不仅是未来的趋势,更能通过其清晰的语法和强大的功能,降低网络配置的管理复杂度,提升工作效率,而 ip route 命令则作为临时调试和高级路由管理的利器,两者结合使用,能应对绝大多数网络配置挑战。
