临时配置缺省路由(立即生效,重启失效)
方法1:使用 ip route 命令(推荐)
sudo ip route add default via <网关IP> dev <网卡名称> # 示例:网关IP为192.168.1.1,网卡为eth0 sudo ip route add default via 192.168.1.1 dev eth0
方法2:使用传统 route 命令
sudo route add default gw <网关IP> dev <网卡名称> # 示例 sudo route add default gw 192.168.1.1 eth0
验证配置:
ip route show | grep default # 或 route -n
永久配置缺省路由(重启生效)
不同Linux发行版的配置文件路径不同:

Debian/Ubuntu(使用 /etc/network/interfaces)
编辑网卡配置文件:
sudo nano /etc/network/interfaces
在目标网卡配置段(如 eth0)添加 gateway 行:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1 # 缺省路由配置
CentOS/RHEL 7+(使用 ifcfg 文件)
编辑网卡配置文件:

sudo nano /etc/sysconfig/network-scripts/ifcfg-<网卡名> # 如 ifcfg-ens192
添加或修改:
GATEWAY=<网关IP> # 示例 GATEWAY=192.168.1.1
通用方法(所有发行版):使用 netplan (Ubuntu 18.04+)
编辑YAML配置文件(如 /etc/netplan/01-netcfg.yaml):
network:
version: 2
ethernets:
eth0:
addresses: [192.168.1.100/24]
routes:
- to: default
via: 192.168.1.1 # 缺省路由
nameservers:
addresses: [8.8.8.8]
通过 /etc/sysconfig/network 全局设置(CentOS 6)
sudo nano /etc/sysconfig/network
添加:

GATEWAY=<网关IP>
应用配置
- Debian/Ubuntu:
sudo systemctl restart networking # 或重启网卡:sudo ifdown eth0 && sudo ifup eth0
- CentOS/RHEL:
sudo systemctl restart network
- Netplan (Ubuntu):
sudo netplan apply
验证路由
ip route show # 查看是否包含 "default via <网关IP>" ping 8.8.8.8 # 测试外部连通性
常见问题解决
- 多网卡冲突:
确保只有一个缺省路由,删除多余网关:sudo ip route del default via <旧网关IP>
- 网关不可达:
检查网关IP是否与服务器在同一子网(使用ip addr查看网卡IP)。 - 配置未生效:
- 确认配置文件无语法错误。
- 重启网络服务或服务器。
| 场景 | 命令/配置文件 | 示例 |
|---|---|---|
| 临时设置 | ip route add default via <IP> dev eth0 |
ip route add default via 192.168.1.1 dev eth0 |
| Debian/Ubuntu 永久 | /etc/network/interfaces |
gateway 192.168.1.1 |
| CentOS/RHEL 永久 | /etc/sysconfig/network-scripts/ifcfg-eth0 |
GATEWAY=192.168.1.1 |
| Netplan (Ubuntu) | YAML 文件中的 via 字段 |
via: 192.168.1.1 |
⚠️ 注意:操作前备份配置文件,避免网络中断导致失联!
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/285663.html

