Advantage of DMVPN

  • 几个优点
    • Zero-Touch provisioning
      • —— 新接入的设备,只需要很少的配置;
      • 已经存在的设备,不需要调整配置
    • Dynamic Spoke to Spoke tunnel
      • 需要通信时,才会创建Tunnel
      • 但实际上每次重建都需要额外的开销 (时间)
    • Flexible network Topology
      • Hub & Spoke,Full Mesh,可以通过配置调整网络架构(拓扑)
    • Multicast Support
      • 使用GRE封装,GRE支持组播
    • Adaptable connectivity
      • 可以基于NAT建立连接,Spoke Router 可以使用动态IP获取协议(如DHCP)获得IP地址

3-Phase

  • 3个Phase,对应3种不同的拓扑
  • Phase 1:Spoke to Hub —— 只支持Spoke 到 Hub 的VPN Tunnel 连接。不同Spoke 之间需要通过HUb 中转
  • Phase 2:Spoke to Spoke ——
    • Spoke 之间可以动态建立Tunnel
    • 不支持路由汇总,需要走 Rigion Hub -> Global Hub -> Region Hub
  • Phase 3:Hierarchical Tree Spoke to Spoke
    • 不同Region 之间可以直接建立Tunnel,不需要走 Rigion Hub -> Global Hub
    • 支持路由汇总

DMVPN Core Technologies

  • Multipoint GRE (之前学的是P2P GRE) *
  • Next Hop Resolution Protocol (NHRP) *
  • Dynamic Routing Protocol (EIGRP,RIP,OSPF,BGP)
  • Dynamic IPsec encryption
  • Cisco Express Forwarding (CEF)
    • 核心技术

Multipoint GRE (mGRE)

  • 在P2P GRE 中,每个Hub 到 Spoke 的链路都需要建立配置

Non-Broadcast Multicast-Access (NBMA)

  • 3层网络,没有广播功能
  • Multi-Access : 同1个物理连接可以用来和多个 dest 通信,和 Point-To-Point 形成对照
  • 在1个NBMA 网络中,发送数据给10个 dest,需要发送10个 copy,1个copy 去往1个 dest
  • NBMA 主要部署在没有广播或组播能力的网络类型中,Frame Relay,ATM

Overlay to Underlay Mapping

  • Overlay —— Tunnel 接口组成的网络,虚拟
  • Underlay —— 物理接口组成的网络,实际
  • 如何在3层网络里把 Overlay 和 Underlay 建立mapping,发现对面的Tunnel ,并建立连接
    • IP <-> MAC : ARP
    • IP <-> IP in NBMA : NHRP,知道Overlay,找Underlay —— 因为Tunnel 的建立需要依赖 Underlay

NHRP next hop resolution protocol

  • RFC2332
  • Client-Server 模型,已知Overlay 接口,需要获取Underlay
  • 发送 NHRP 请求,给Hub(充当Server),要求获取 Tunnel 地址 对应的 物理接口地址

NHRP Registration

  • 2种角色组合形成 NHRP NBMA Domain
    • Next Hop Server
    • Next Hop Client
  • NHCs 加入 Domain后,就将自己的 Overlay 以及 Underlay 地址发送给 Server,Server 维护1张保存映射关系的Table,进而可以响应需求
  • Server 的配置是用于形成1个域
  • Client 的配置是用于加入域,需要配置Server 的物理IP
    • network-id 只有本地意义,但是为了便于管理,通常把归属于同1个NBMA 的Router 接口,配置相同的 network-id
  • 但是之前的 p2p GRE 是可以支持组播和广播的,这里的NBMA 不支持组播和广播,如何使用动态路由协议,解决方法就是

Pseudo-Multicast

  • 在NHRP 协议中,有1张单独的表,可以用于存放组播地址 和 Underlay 接口地址 —— 如果1个Router 要通过NHRP接口发数据到组播地址,他会将数据复制N份(Underlay 接口地址数量),然后作为unicast 发送
  • 配置命令
    • ip nhrp map multicast dynamic —— 通过NHS Table 获取
    • ip nhrp map multicast underlay-ip-address —— 手动加入

Spilt-Horizon

  • R1 从 T0 接口收到了来自 R3、R4的路由,就不能再通过T0 把路由分发给R3、R4 ??????? —— 水平分割防环机制
  • 所以需要在跑EIGRP时,关掉水平分割