CCIE
当前位置:网站首页>CCIE
ccna培训知识:DMVPN的三个发展阶段
发布日期:2019-06-11 11:48:36 发布者:
    我们常常学习DMVPN,通常介绍的为第二个发展阶段,这里所谓的阶段不是IPSec协商的阶段,而是DMVPN这个技术发展的阶段,不同的阶段有着不一样的功能。

    DMVPN的 Phase 1

    Phase 1也就是DMVPN刚刚出来的时候,通常Hub端利用NHRP和MGRE来和spoke之间建立邻居,而spoke则只使用gre,形成一个点对点的隧道,这样一样,spoke之间互访必须通过Hub端来转发,这样大大的增加了Hub端的负担, Phase 1只是提供了一个更好的连接Spoke的方案,也就是hub不需要更多的配置,就可以容纳新增加的Spoke。

    DMVPN Phase 2

    phase 2也就是我们经常学习,经常见到的阶段了,Hub和Spoke之间都利用MGRE和NHRP来建立隧道,当Spoke端刚启动,它就会自动发送NHRP消息到Hub进行注册,这样一来Hub端都有了Spoke的地址信息了,分析下它们通信的过程。

    1、Spoke1向Spoke2发送数据包进行通信,这时候的数据包是由中心代为转发的。(路由表有Spoke的路由)

    2、同时Spoke1会向Hub发送一个NHRP的询问,询问Spoke2的地址信息

    3 、Hub回应Spoke1的询问

    4、Spoke1收到这个回应后,直接与Spoke2建立IPSec VPN 。

    5、Spoke2要回应Spoke1的数据包,它也会发送NHRP的查询给Hub.

    6、Hub回应,Spoke2收到,知道数据包怎么回应了,试图建立新的VPN隧道,发现已经有了一个VPN的隧道,所有,后续的数据包都通过这个隧道来传递,而不通过Hub了。

    Phase 2的特点,虽然Spoke之间可以互访不通过Hub,但是,在建立初期,Spoke之间都需要询问Hub来寻找其余的Spoke地址信息,并且还需要代为转发数据包(建立VPN的时候),这样对于 有许多分支的Hub来说,也是一个非常大的负担,特别是层次化的设计利用第二阶段,那么所有的流量都必须通过Hub转发。

    DMVPN Phase 3

    Phase 3 提供了一个更为灵活的设计方案,优化了许多不足的地方,比如动态路由协议不能进行汇总,所有的响应都是由Hub来完成。

    1 、分支站点1向分支站点2发送数据包,中心收到以后,会回复NHRP重定向消息,这个重定向消息包含最优的下一跳信息(也就是S分支站点二的,重定向功能是被动态路由协议识别的,能优化下一跳的作用)

    2、分支一收到NHRP重定向消息后,得知最优的下一跳是分支二,会发送一个NHRP解析请求给Hub。

    3 、Hub收到以后,它并不会处理这个解析请求,而是直接转发给分支站点二,由请求的目的地来处理。

    4、分支二收到请求以后,会主动发送与分支一的IPSec隧道建立 。(这时候分支二也知道分支一的地址信息)

    5、IPSec隧道建立以后,分支二在这个安全的隧道里面回应这个NHRP的请求信息。

    6、后续的数据包在这两个站点转发,而不需要经过中心了。

    Phase 3的特点:这里HUB利用了NHRP的重定向功能,这个重定向功能能够优化路由,虽然我们在路由表中看见下一跳是Hub端,但是,通过重定向可以让Spoke知道最优的下一跳是谁,从而优化了路由表。 由于下一跳都是Hub了,所以,Hub端可以做路由汇总,这样优化了分支之间的路由表,甚至可以使用静态路由来完成整个设计。 在层次化的设计中,Spoke之间通信无需经过Hub,直接在SPoke之间转发, 另外一点,也是官方提到的,Phase 2是进程转发的,而Phase 3是由CEF处理的,在资源发面也是很优化的。

微信