linux如何设置两个网关
- Linux
- 2025-07-22
- 7
Linux系统中设置两个网关,可以通过多种方法实现,以下是几种常见的配置方式及其详细步骤:
使用ip route命令临时添加两个网关
这种方法适用于需要临时配置双网关的场景,重启后配置会失效。
-
查看当前路由表:
ip route show -
添加第一个网关:
sudo ip route add default via <第一个网关IP> -
添加第二个网关:
sudo ip route add default via <第二个网关IP> dev <网卡接口名称>
-
验证配置:
ip route show -
设置优先级(可选):
通过metric参数可以调整网关的优先级,数值越小优先级越高。
sudo ip route change default via <第一个网关IP> metric 100 sudo ip route change default via <第二个网关IP> metric 200
使用route命令临时添加两个网关
-
查看当前网关信息:
route -n
-
添加第一个网关:

-
添加第二个网关:
sudo route add default gw <第二个网关IP> -
编辑/etc/network/interfaces文件:
打开文件并找到对应的网卡配置部分(如eth0),添加以下内容:
up ip route add default via <第一个网关IP> dev eth0 up ip route add default via <第二个网关IP> dev eth0 -
重启网络服务:
sudo service networking restart -
创建网络配置文件:
在/etc/systemd/network/目录下创建一个以网卡命名的.network文件(如eth0.network如下:
[Network] Gateway=<第一个网关IP> Gateway=<第二个网关IP> -
重启网络服务:
sudo systemctl restart systemd-networkd
-
添加路由配置:
在文件中添加以下内容:
GATEWAY0=<第一个网关IP> GATEWAY1=<第二个网关IP>
-
重启网络服务:
配置示例表
步骤 命令或操作 说明 1 ip route show 查看当前路由表 2 sudo ip route add default via 192.168.1.1 添加第一个网关 3 sudo ip route add default via 192.168.2.1 dev eth1 添加第二个网关 4 ip route show 验证配置 5 sudo ip route change default via 192.168.1.1 metric 100 设置优先级 相关问答FAQs
Q1:配置双网关后,如何测试是否生效?
A1:可以使用ping命令测试与两个网关的连通性:
ping <第一个网关IP> ping <第二个网关IP>
如果都能收到响应,说明配置成功,可以尝试访问不同网络的目标地址,观察流量是否按预期分配。
Q2:双网关配置后,如何实现故障自动切换?
A2:可以通过编写脚本监控主网关状态,并在故障时切换到备用网关。
#!/bin/bash MAIN_GW="192.168.1.1" BACKUP_GW="192.168.2.1" if ! ping -c 1 $MAIN_GW; then sudo route del default gw $MAIN_GW sudo route add default gw $BACKUP_GW fi
将脚本设置为定时任务(如每分钟执行一次),
永久配置双网关
编辑网络配置文件
使用systemd-networkd
编辑/etc/sysconfig/network-scripts/ifcfg-<网卡>文件