GRE配置详解和路由黑洞及检测机制

基本路由配置先省略,直接上GRE配置:
合肥:
int tunnel 0/0/1
//创建隧道
ip add 192.168.13.1 24
//给隧道口ip地址,没有地址怎么传输?
tunnel-pro gre
//隧道的模式
so 12.0.0.1
//牌照的源ip
dest 23.0.0.3
//牌照的目的ip

在公网上跑,私网地址是会被丢弃的,所以需要公网地址的牌照
隧道建立好之后还有一个问题,怎么把数据包送到隧道上呢?

有两种方法,针对不同的网络类型:

1. 网段较少的拓扑

可以通过静态路由来实现
ip route-static 192.168.20.0 24 tunnel 0/0/1

下一跳必须是隧道口的地址或者隧道接口,否则,数据包还是会和之前一样,从缺省路由转发出去。

2. 网段教多的拓扑

如果接入的主机很多,一条一条写静态太麻烦了,而且有去就必须有回,double的麻烦,所以这里可以通过ospf来宣告,GRE支持组播技术

ospf 1 router-id 1.1.1.1
a 0
net 192.168.10.0 0.0.0.255
net 192.168.13.0 0.0.0.255
//一定要宣告隧道地址,不然路由器不知道从哪转发

但是,这里能不能也宣告公网地址呢?多宣告多知道些路由不是更好吗?

物极必反,不一定

假如把12.0.0.0和23.0.0.0 网段宣告进去
查看路由表会发现多了一条从tunnel口出去的路由:

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface0.0.0.0/0   Static  60   0          RD   12.0.0.2        GigabitEthernet
0/0/123.0.0.0/24  OSPF    10   1563        D   192.168.13.2    Tunnel0/0/1

本来GRE将通行证拿好之后,应该通过缺省路由从g0/0/1口转发出去,通过ISP的路由到达对端,但是,这里多了一条ospf路由,根据路由匹配原则,肯定先匹配ospf,
于是数据包刚从tunnel里出来,又得回去了。回去又得打牌照,反反复复GRE就傻掉了
并且这时候的ospf邻居从down到full,full了又down

就变成了路由黑洞
其实在一开始配置的时候,比较粗心,在接口绑定nat时把接口写错了,导致GRE的protocol一直是down的状态:

那么,让tunnel的protocol成up的机制是什么呢?

其实只要路由没有问题,protocol就是up的状态,即使对端没有配置,tunnel也感受不到,如果公司到分部做了两个隧道,主备实现,如果主有故障,比如对端路由有问题,或者运营商路由故障,这时需要切换到备份隧道,但是tunnel没有感知到,依旧是up,数据包就会丢失,

解决方法:

GRE有keepalive检测机制,配置后GRE会发送keepalive报文,并且对端超过3次没有恢复,tunnel就会自动变成down状态
配置后GRE会默认5S发一次

下面是完整配置(包括路由等):
合肥:

sys
sys HF
dhcp en
int g0/0/0
ip add 192.168.10.254 24
dhcp select inter
int g0/0/1
ip add 12.0.0.1 24
ip route-static 0.0.0.0 0 12.0.0.2 24
acl 2000
rule 5 per so 192.168.10.0 0.0.0.255
int g0/0/1
nat out 2000
int tunnel 0/0/1
ip add 192.168.13.1 24
tunnel-pro gre
so 12.0.0.1
dest 23.0.0.3
keepalive
//ip route-static 192.168.20.0 24 tunnel 0/0/1
ospf 1 router-id 1.1.1.1
a 0
net 192.168.10.0 0.0.0.255
net 192.168.13.0 0.0.0.255

上海:

sys
sys SH
dhcp en
int g0/0/0
ip add 23.0.0.3 24
int g0/0/1
ip add 192.168.20.254 24
dhcp select inter
ip route-static 0.0.0.0 0 23.0.0.2
acl 2000
rule 5 per so 192.168.20.0 0.0.0.255
int g0/0/1
nat out 2000
int tunnel 0/0/1
ip add 192.168.13.2 24
tunnel-pro gre
dest 12.0.0.1
so 23.0.0.3
keepalive
//ip route-static 192.168.10.0 24 tunnel 0/0/1
ospf 1 router-id 2.2.2.2
a 0
net 192.168.20.0 0.0.0.255
net 192.168.13.0 0.0.0.255

GRE配置详解和路由黑洞及检测机制相关推荐

  1. Iptables防火墙配置详解

    iptables防火墙配置详解 iptables简介 iptables是基于内核的防火墙,功能非常强大,iptables内置了filter,nat和mangle三张表. (1)filter表负责过滤数 ...

  2. CentOS---网络配置详解

    CentOS---网络配置详解 2012-06-01 06:16:24 分类: LINUX 一.配置文件详解 在RHEL或者CentOS等Redhat系的Linux系统里,跟网络有关的主要设置文件如下 ...

  3. 使用LVS实现负载均衡原理及安装配置详解

    使用LVS实现负载均衡原理及安装配置详解 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均 ...

  4. ngnix的upstream模块配置详解

    2019独角兽企业重金招聘Python工程师标准>>> ngnix的upstream模块配置详解 2017年04月04日 13:10:03 阿里-橙鹰-潘民兰 阅读数:15409 标 ...

  5. 思科路由器NAT配置详解(转)

    思科路由器NAT配置详解(转) 网络技术 2010-07-11 17:48:14 阅读104 评论0   字号:大中小 订阅 思科路由器NAT配置详解 一.NAT简介: NAT(Network Add ...

  6. Tomcat 的 Server 文件配置详解

    转载自  Tomcat 的 Server 文件配置详解 前言 Tomcat隶属于Apache基金会,是开源的轻量级Web应用服务器,使用非常广泛.server.xml是Tomcat中最重要的配置文件, ...

  7. [转载]VirtualBox网络配置详解

    标题: [原创]VirtualBox网络配置详解 来自 http://www.linuxsir.org/bbs/showthread.php?p=1800679#post1800679 欢迎转载, 转 ...

  8. k8s的yaml文件配置详解(三)

    k8s的服务资源文件配置详解 注:本文章只作配置项解释,请灵活运用 --- #Service kind: Service apiVersion: v1 metadata: name: service ...

  9. Nginx配置详解/代理服务的配置说明

    Nginx配置详解 序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富,可作 ...

最新文章

  1. 【SLAM建图和导航仿真实例】(三)- 使用RTAB-MAP进行SLAM建图和导航
  2. 二值网络--Optimize Deep Convolutional Neural Network with Ternarized Weights and High Accuracy
  3. 他是第一批推动比特币普及的人 如今早已放弃了信仰
  4. [C++] 为什么Linux需要itoa函数
  5. 项目管理其实可以简单一点——任务分工
  6. 新手前端练手网站_编程到底难不难学?新手入门选择哪种语言好?
  7. 引入阿里云GA,商米加速IoT产品和解决方案全球化布局
  8. 华为云新加坡峰会发布CloudAI创新实验室,四大核心优势助力智能化升级
  9. 26.Linux/Unix 系统编程手册(上) -- 监控子进程
  10. DIY LDAC蓝牙接收器(一)预备篇
  11. android设置闹钟日期,在Android中将闹钟设置为特定日期和时间
  12. Arduino UNO+OLED可视化音乐频谱:32段分频0.96寸OLED显示细条频谱线
  13. 利用华为手机给台式机提供网络
  14. Ceres-Solver使用指南
  15. 天风掌财社新股认购如何操作?
  16. 持续精进——我的2017年终总结
  17. 手把手带你做一个Python打飞机游戏
  18. 腾讯信鸽自定义推送通知
  19. CSP CCF: 201903-1 小中大 (C++)
  20. [HDU 1814] Peaceful Commission

热门文章

  1. “名师带教,共同成长“渭南市马红“名师+”研修共同体2022年工作计划
  2. 转到计算机科学与技术专业的申请书,转专业的申请书范文(精选5篇)
  3. 机械设计与计算机技术相关的论文,计算机技术机械制造论文-专业论文.doc 文档全文免费预览...
  4. 由Maleimide参与的Biotin-C5-Mal试剂具有荧光猝灭能力
  5. 关于音乐制作的一些网站
  6. Linux配置系统网络(动态)
  7. 计算机要素--第六章 汇编编译器
  8. 基于JavaWeb的网上书店的设计与实现
  9. 立创开源 BGA162芯片开发
  10. 计算机知识和应用技能,计算机实用技能及应用