路由中怎么在两栋物理机房的 Linux 之间利用两对物理网卡构建两条独立的 GRE 隧道并通过配置互备静态路由实现物理链路秒级自动容灾

舞夢輝影

舞夢輝影

2026-07-24

504人浏览

原创

需配置双gre隧道、策略路由、心跳探测与路由切换脚本实现秒级容灾:在机房a/b分别基于ens3-ens3和ens4-ens4建立tun1/tun2,分配独立隧道ip;通过table 100/101策略路由设定主备优先级;每2秒ping对端隧道地址,连续3次失败则删除主路由规则并启用备用规则,恢复后切回;同时开启ipv4转发、加载ip_gre模块、关闭rp_filter、设置mtu为1476、放行gre协议(ip proto 47)及icmp。

路由中怎么在两栋物理机房的 linux 之间利用两对物理网卡构建两条独立的 gre 隧道并通过配置互备静态路由实现物理链路秒级自动容灾

要在两栋物理机房的 Linux 服务器之间用两对物理网卡构建两条独立 GRE 隧道,并通过静态路由实现秒级链路自动容灾,核心不是靠“动态协议”而是靠双隧道 + 双静态路由 + 策略路由 + 心跳探测 + 路由切换脚本的组合。Linux 原生不支持 GRE 隧道状态自动感知,必须主动监控并触发路由变更。

两条 GRE 隧道需物理隔离且独立配置

假设机房 A(192.168.10.10)和机房 B(192.168.20.10)各有两块物理网卡:

  • 机房 A:ens3(192.168.10.10/24,连专线链路1)、ens4(192.168.11.10/24,连专线链路2)
  • 机房 B:ens3(192.168.20.10/24,连专线链路1)、ens4(192.168.21.10/24,连专线链路2)

分别建立 tunnel1(走 ens3-ens3)和 tunnel2(走 ens4-ens4),互不干扰:

PyCharm 2026.2.0.1 Linux版
PyCharm 2026.2.0.1 Linux版

PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。

下载
  • 机房 A 执行:
    ip tunnel add tun1 mode gre local 192.168.10.10 remote 192.168.20.10 ttl 64 dev ens3
    ip addr add 172.16.1.1/30 peer 172.16.1.2/30 dev tun1
    ip link set tun1 up
  • 机房 A 同时执行:
    ip tunnel add tun2 mode gre local 192.168.11.10 remote 192.168.21.10 ttl 64 dev ens4
    ip addr add 172.16.2.1/30 peer 172.16.2.2/30 dev tun2
    ip link set tun2 up
  • 机房 B 对应配置 tun1(peer 172.16.1.2)、tun2(peer 172.16.2.2),方向相反

主备静态路由 + 策略路由区分优先级

仅靠普通静态路由无法自动倒换——Linux 默认只选最长匹配+管理距离最小的一条,不会因接口 down 自动切。必须引入策略路由(policy-based routing)配合探测:

  • 为 tunnel1 设置高优先级路由表(如 table 100):
    ip route add 10.100.0.0/16 via 172.16.1.2 dev tun1 src 172.16.1.1 table 100
    ip rule add to 10.100.0.0/16 table 100
  • 为 tunnel2 设置低优先级路由表(如 table 101):
    ip route add 10.100.0.0/16 via 172.16.2.2 dev tun2 src 172.16.2.1 table 101
    ip rule add to 10.100.0.0/16 table 101 pref 1000
  • 默认主路径走 table 100;table 101 作为备用,pref 值更高(数值越大优先级越低)

心跳探测与秒级自动切换

靠内核自动识别隧道中断不可靠(GRE 无 keepalive)。需用轻量级探测机制,例如:

  • 在机房 A 上每 2 秒 ping 机房 B 的 tunnel1 对端地址:
    ping -c 1 -W 1 172.16.1.2 && echo ok || echo fail
  • 若连续 3 次失败,执行:
    ip rule del to 10.100.0.0/16 table 100
    ip rule add to 10.100.0.0/16 table 101 pref 100
  • 恢复时反向操作(检测 tunnel1 回通后切回)
  • 建议用 systemd timer 或 cron + flock 防重入,避免并发冲突

关键加固项不能遗漏

否则容灾会失效或引发环路:

  • 开启 IPv4 转发:echo 1 > /proc/sys/net/ipv4/ip_forward,并写入 /etc/sysctl.conf
  • 加载 GRE 模块:modprobe ip_gre;检查 lsmod | grep ip_gre
  • 禁用反向路径过滤(RPF):sysctl -w net.ipv4.conf.all.rp_filter=0,否则回程包可能被丢弃
  • 隧道 MTU 设为 1476(标准以太网 MTU 1500 − GRE 头 24 字节),避免分片:
    ip link set tun1 mtu 1476
  • 防火墙放行 GRE 协议(IP proto 47)及探测用的 ICMP

相关文章

路由优化大师
路由优化大师

路由优化大师是一款及简单的路由器设置管理软件,其主要功能是一键设置优化路由、屏广告、防蹭网、路由器全面检测及高级设置等,有需要的小伙伴快来保存下载体验吧!

下载

相关标签:

linux 路由

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

355

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

618

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

1216

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

429

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

324

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

190

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

1032

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

1849

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

322

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Linux开发篇视频教程
Linux开发篇视频教程

共18课时 | 4.4万人学习

Linux开发视频教程
Linux开发视频教程

共18课时 | 4.5万人学习

phpMyAdmin 安装文档
phpMyAdmin 安装文档

共0课时 | 0人学习