服务器与大带宽专家 · 持牌IDC/CDN/ISP服务商
简米科技官网JIANMI TECH
资讯 2026-11-09 简米科技 3,478 字 8 分钟阅读

服务器能配置两个网关?,双网关具体如何实现与配置

导读服务器完全可以配置两个网关,但前提是必须用路由优先级或策略路由把不同流量区分开,否则两条默认路由会打架,轻则出口绕路,重则业务断网,很多运维朋友把双网卡插上、两个网关地址填进去,发现网不通,问题就出在“默认路由只能有一个最优出口”这个底层规则上,下面从Linux、Windows、云服务器和机房场景拆开讲,给出能……

服务器完全可以配置两个网关,但前提是必须用路由优先级或策略路由把不同流量区分开,否则两条默认路由会打架,轻则出口绕路,重则业务断网。很多运维朋友把双网卡插上、两个网关地址填进去,发现网不通,问题就出在“默认路由只能有一个最优出口”这个底层规则上,下面从Linux、Windows、云服务器和机房场景拆开讲,给出能直接照着敲的命令和排错路径。

服务器双网关配置方法详解:Linux与Windows场景对比

服务器配两个网关,不是把两个网关地址都填进网卡就结束,真正要解决的是“哪些流量走网关A,哪些走网关B”,常见需求有两类:一类是主备冗余,一条线断了切另一条;另一类是多运营商分流,电信流量走电信网关,联通流量走联通网关,两类的配置思路完全不同。

Linux服务器双网关如何设置?CentOS与Ubuntu实操步骤

先看主备模式,假设eth0接电信网关192.168.1.1,eth1接联通网关10.10.10.1,用metric控制优先级,metric小的优先,另一条作为备份。

ip route show
sudo ip route add default via 192.168.1.1 dev eth0 metric 100
sudo ip route add default via 10.10.10.1 dev eth1 metric 200

两条默认路由可以同时存在,内核会选metric更小的,需要持久化时,CentOS系可写route-eth0和route-eth1文件:

echo "default via 192.168.1.1 dev eth0 metric 100" > /etc/sysconfig/network-scripts/route-eth0
echo "default via 10.10.10.1 dev eth1 metric 200" > /etc/sysconfig/network-scripts/route-eth1

Ubuntu用netplan时,在对应网卡下写routes,把metric分别设为100和200,注意网关必须和网卡IP在同一子网,否则路由加不进去,配置完用ip route get 8.8.8.8确认实际出口。

如果要按源地址分流,就要上策略路由,先建一张自定义路由表:

echo "200 isp1" | sudo tee -a /etc/iproute2/rt_tables
sudo ip route add default via 192.168.1.1 dev eth0 table isp1
sudo ip route add 192.168.1.0/24 dev eth0 src 192.168.1.100 table isp1
sudo ip rule add from 192.168.1.100 table isp1

这段配置的意思是:来自192.168.1.100的流量查isp1表,从eth0出去,另一张网卡照同样逻辑建isp2表,缺少本地子网路由是常见坑,回包找不到入口就会失败。

主备切换要不要做健康检查

主备模式只靠metric不会自动切换,主网关断了,内核不会主动把流量切到metric更大的路由,生产环境通常配合Keepalived、脚本探活或网卡bonding,业内专家指出,双网关主备如果没有健康检查,实际可用性还不如单网关加运营商BGP。

双网卡服务器配置两个网关有什么影响?路由冲突与负载均衡分析

影响集中在四个地方,第一,默认路由冲突,两条0.0.0.0/0路由同时存在时,系统只按metric选一条,另一条不参与转发,容易让人误以为“配了双网关就是双活”,第二,非对称路由,请求从eth0出去,回包从eth1进来,防火墙会话跟踪会丢包,第三,DNS出口不一致,域名解析走一个网关,业务流量走另一个网关,CDN调度可能拿到错误地域,第四,ARP flux,双网卡同网段时,内核可能响应ARP时用错网卡,需要在sysctl里关闭arp_ignore和arp_announce的宽松模式。

行业共识认为,双默认网关不等于带宽叠加,想叠加带宽要用ECMP,但ECMP依赖交换机哈希,且同一TCP流仍走同一路径,对多数业务,源地址分流比ECMP更可控。

配置模式 核心手段 适用场景 主要风险
主备冗余 metric优先级 单线主用、备用线路 不自动切换,需探活
源地址分流 策略路由+ip rule 双运营商按源IP分流 规则维护复杂,回包要对称
ECMP负载 多路径路由 同运营商多链路 需网络设备配合哈希

Windows服务器双网关配置步骤

Windows用route命令也能配两个默认网关,先看接口索引:

netsh interface ipv4 show interfaces
route print

假设eth0索引12,eth1索引13,添加永久路由:

route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 10 if 12 -p
route add 0.0.0.0 mask 0.0.0.0 10.10.10.1 metric 20 if 13 -p

PowerShell可改用New-NetRoute,把PolicyStore设为PersistentStore,Windows默认按接口metric和路由metric选路,双默认网关同样只优先生效,需要分流时,Windows没有Linux那么细的ip rule,通常靠多路由表、应用绑定源IP或防火墙策略实现,复杂度更高。

云服务器双网关配置多少钱?先看VPC路由表限制

云服务器和物理服务器不一样,多数云平台一个实例绑定多张弹性网卡时,网关由子网决定,默认路由由VPC路由表控制,实例内部不能随意加两个默认网关,你可以在操作系统里看到两条路由,但云网络侧可能只认一条,或者直接丢弃非预期源地址流量,具体以各云厂商公开文档为准。

费用方面,云服务器双网关配置多少钱?配置动作本身通常不单独收费,钱主要花在弹性公网IP、带宽和多网卡实例规格上,按带宽计费还是按流量计费,成本差别较大,建议在控制台用计费计算器按实际带宽跑一遍。

上海服务器双网关配置方案:多运营商接入的落地思路

上海机房托管场景里,服务器常同时接电信和联通,落地步骤可以这样走:确认两块网卡分别拿到运营商内网地址,两个网关都能ping通;用ip rule按源地址分流;用curl --interface验证出口。

curl --interface 192.168.1.100 ifconfig.me
curl --interface 10.10.10.100 ifconfig.me

两条命令返回不同出口IP,说明分流生效,再检查ip route get和防火墙反向路径过滤,上海地区多线机房通常还会用BGP宣告,让上游自动选路,服务器侧只保留一个默认网关,这种方案维护成本更低。

服务器双网关配置常见问题Q&A

Q1:服务器配置两个网关后上不了网,先查什么?
先看路由表有没有两条默认路由,再ping两个网关确认二层可达,Linux查ip route show和ip rule list,Windows查route print,然后看防火墙和rp_filter,sysctl net.ipv4.conf.all.rp_filter如果为1,非对称回包会被丢,最后确认网关和网卡IP在同一子网。

Q2:双网卡服务器两个网关能同时用吗?
能,但要看“同时用”的定义,主备用是两条都配、只走一条;源地址分流是不同源IP走不同网关;ECMP是多路径同时转发,普通业务不要指望配两个网关就带宽翻倍,多数情况下内核只选最优路由。

Q3:云服务器能配置两个默认网关吗?
多数云平台的VPC网络不允许实例同时使用两个默认网关,因为南北向流量由VPC路由表和NAT网关统一控制,多网卡绑定不同子网时,应在云平台路由表里配置策略,实例内部只保留对应子网的默认路由,具体限制以云厂商文档为准,操作系统里能加路由不等于云网络会转发。

分享本文
本文为 简米科技官网 原创,已由运维技术专家审核。转载请注明来源:原文链接
售前咨询 服务热线 售后 邮箱