Generic Routing Encapsulation GRE Tunnel

  • 必须基于IP网络(3层)建立
  • 需要在2端Router上配置 Tunnel 接口(逻辑接口)
  • GRE网络可以认为是 Overlay,下层的IP 网络可以认为是 Underlay
  • 在原始数据包上进行封装,增加额外的包头,其中包含了远端(remote endpoint)的IP地址。到达远端后,GRE包头被拆除,再转发给remote device
  • GRE默认是不加密的,他只是1种隧道技术

Tunnel Interface

  • 虚拟接口,本来没有延迟Latency 的概念
  • 但是在计算路由路径时,需要配置
  • GRE Tunnel 增加的包头,最小是24bytes,这会影响到MTU(1500-24)。Cisco设备会自动对Tunnel接口进行调整。
    • IP Header 20Bytes + GRE 4Bytes

GRE Tunnel Config

GRE & IPsec

  • 2种技术方案
    • IPsec over GRE —— IPsec 只支持IP协议,不支持2层协议(非IP协议),不支持Multicast
      • OSPF、BGP、EIGRP 都是需要依赖组播的
    • GRE over IPsec (更常用)
      • 可以支持广播、组播、非IP协议