DMVPN 案例配置及原理分析

简介: DMVPN 案例配置及原理分析

前言:

动态多点虚拟专网DMVPN:思科私有协议,基于MGRE实现高速和高扩展性的IPSec VPN技术;企业希望通过公网安全地将各地的分支机构与中心站点之间联系起来,构成星型拓扑结构网络并通过IPSec隧道来保证内部通信流量的安全;但大多数企业的数据都集中在中心站点,如果两个分支之间需要通信,则要通过中心站点,这样就造成了较大的网络时延;尤其在视频、语音应用中,这种时延会严重影响企业网络正常运行;DMVPN技术的出现,就是为企业解决了这方面的难题。

一、拓扑



640.jpg

要求:


1.按图中要求,在R1、R2、R3 上配置MGRE,其中MGRE 的IP 地址为192.168.1.0/24。

2.在MGRE 上运行IGP 协议,使R1、R2、R3 背后的环回口可以通过IGP 相通。

3.在MGRE 的基础上配置IPSEC VPN,即DMVPN,并且分析其工作过程。


二、配置


1.基本IP地址配置(省略)


2.配置MGRE


640.png


其中第一句是修改Gre 的工作模式为多点GRE,即MGRE。

接着在R2、R3 上完成相同的配置,并且MGRE 的IP 地址分别为192.168.1.2/24、192.168.1.3/24,在下图中没有贴出IP 地址的配置,但实质已经配过了


640.png

640.png

配置完成后,我们可以从R2 上访问另外R1、R3,看能否成功?

640.png


明显看到R2 不能访问R1,同样R2 也不能访问R3,其质上,此时MGRE 的三个端口都没法互访,分析原因,这是因为R2 要发包给R1,必须知道R1 上的MGRE 地址192.168.1.1/24对应的MAC 地址是多少,如果不知道这个MAC 地址,那么根本不可能完成访问。因此在MGRE 的基础上还要配置NHRP,即下一跳解析协议,


3.NHRP配置


1)Hub节点——即中心节点R1的配置


640.png

2)Spoke节点——即分支节点R2、R3的配置

640.png

640.png


其中命令解释如下:

Ip nhrp map 192.168.1.1 123.1.1.1:让SPOKE 知道HUB 的虚拟地址(tunnel 口地址)和其

物理地址(Tunnel 源的物理地址)之间的对应关系。

Ip nhrp map multicast 123.1.1.1:即让SPOKE 向物理地址为123.1.1.1 的接口发组播包,

因为此时的MGRE 是一个NBMA 网络。

Ip nhrp nhs 192.168.1.1:让SPOKE 知道nhrp 服务器的地址,即向该服务器进行注册。

配置完成后,我们可以在HUB 和SPOKE 上进行互访测试


640.png

640.png

640.png

4.在MGRE上配置动态路由协议,这里选择EIGRP

640.png

640.png

640.png

查看R1 即HUB 上的EIGRP 邻居

640.png


明显可以看到R1 和R2、R3 分别建立了EIGRP 邻居。

同时也可以看到R1 即HUB 上已获得了去往两个SPOKE 节点R2、R3 的EIGRP 路由


640.png

再查看两个SPOKE 节点上的EIGRP 邻居及路由

640.png

640.png

可以看到两个SPOKE 节点彼此间并没有建立EIGRP 邻居关系,仅仅和HUB 即R1 建立了EIGRP 邻居,并且没有学到彼此的环回口路由,这个现象是由EIGRP 的水平分割引起的,现在HUB 节点即R1 上关闭EIGRP 的水平分割

640.png


再查看两个SPOKE 节点R2、R3 上的EIGRP 邻居和路由表


640.png

640.png


可以看到,虽然两个SPOKE 节点R2、R3 间没有直接建立EIGRP 邻居,但是学习到了去往对方环回口的路由,但该路由的下一跳地址是HUB 节点的Tunnel 口地址,而不是对方

640.png

该句的作用是:HUB 节点即R1 上的Tunnel 口不能成为Eigrp 路由的下一跳地址,再查看R2、R3 的路由表

640.png

发现SPOKE 节点R2 上去往另一SPOKE 节点R3 的环回口的路由,其下一跳已经由HUB 节点R1 的Tunnel 地址变成了R3 的Tunnel 地址。查看R3,有相同的变化。

640.png

5.在MGRE 的基础上完成IPSEC 的配置,


1)HUB 节点R1 上的配置

640.png

2)SPOKE 节点R2、R3 上的配置

640.png

640.png


注意: 在这里采用了GRE Over IPSEC 的第二种配法,即新式配法。

6.查看ISAKMP SA 和IPSEC SA

640.png

640.png

直接测试,并抓包

640.png

640.jpg

640.jpg640.png


640.jpg

明显可以看到三个节点在互访时,都进行了加密,即DMVPN 配置成功。

相关文章
|
移动开发 JavaScript 小程序
uniapp中组件库的Radio 单选框丰富的使用方法
uniapp中组件库的Radio 单选框丰富的使用方法
1477 0
|
Java 开发工具 Android开发
Cocos Creator 2.4.6 Android Gradle 版本升级为 6.5.1(插件4.1.0)
Cocos Creator 2.4.6 Android Gradle 版本升级为 6.5.1(插件4.1.0)
547 1
|
4月前
|
Ubuntu Linux 程序员
Ubuntu 18.04 安装详细步骤与设置指南
接下来,我们将探讨如何进行个人信息设置。重启选择高级模式,联网更新软件包并安装硬件驱动程序以完成个人信息设置。在重启过程中,你需要按下esc键(只需按一下)来选择ubuntu的高级模式。重启完成后,请联网并打开终端,然后输入以下字符以继续设置过程。
|
存储 监控 搜索推荐
在生产环境中部署Elasticsearch:最佳实践和故障排除技巧——安装篇(一)
在生产环境中部署Elasticsearch:最佳实践和故障排除技巧——安装篇(一)
|
调度 UED
802.11ax (Wi-Fi 6) 如何工作?
【4月更文挑战第14天】
334 3
|
前端开发 JavaScript C#
CodeMaid:一款基于.NET开发的Visual Studio代码简化和整理实用插件
CodeMaid:一款基于.NET开发的Visual Studio代码简化和整理实用插件
314 0
|
Kubernetes Shell 测试技术
在Docker中,可以在一个容器中同时运行多个应用进程吗?
在Docker中,可以在一个容器中同时运行多个应用进程吗?
|
物联网
STM32:TIM输入捕获硬件部分(内含:1.输入捕获简介+2.频率测量+3.通用/高级定时器的输入捕获电路分析(重点)+4.主从触发模式+5.输入捕获基本结构(重点)+6.PWM基本结构)
STM32:TIM输入捕获硬件部分(内含:1.输入捕获简介+2.频率测量+3.通用/高级定时器的输入捕获电路分析(重点)+4.主从触发模式+5.输入捕获基本结构(重点)+6.PWM基本结构)
988 0
STM32:TIM输入捕获硬件部分(内含:1.输入捕获简介+2.频率测量+3.通用/高级定时器的输入捕获电路分析(重点)+4.主从触发模式+5.输入捕获基本结构(重点)+6.PWM基本结构)
|
JSON API 数据格式
从基础到高级,带你深入了解和使用curl命令(四)
本文介绍了如何使用curl命令发送GET和POST请求。发送GET请求的基本语法是`curl [URL]`,加参数时使用`&`连接。添加`-v`参数可显示详细输出。发送POST请求,使用`-X POST -d`传表单数据,或`-d -H "Content-Type: application/json"`发送JSON数据,用`-F "file=@path"`上传文件,`--data-binary`用于上传二进制数据。curl是一个功能强大的HTTP请求工具,适用于各种网络通信需求。
|
大数据 数据挖掘 Java
大数据平台开发规范示例
大数据平台开发规范示例
518 0
大数据平台开发规范示例