资料下载

配置思科动态多点VPN(DMVPN)-集线器,分支,mGRE保护和路由-DMVPN配置

由管理员撰写。发表于 思科路由器-配置思科路由器

4.3454545454545 1 1 1 1 1 评分4.35(55投票)
压住他

虚拟专用网简介

我们的 虚拟专用网简介文章 涵盖了 虚拟专用网 概念和部署设计。我们介绍了DMVPN如何结合多种技术,使其具有灵活性,低管理开销和易于配置的特点。本文将介绍 思科DMVPN的配置 包含 枢纽, 辐条, 路由保护mGRE隧道.

对于那些还没读过我们的书的人,强烈建议 虚拟专用网简介 这样做是因为它包含对配置过程很重要的基本概念和理论。

如果您之前使用过GRE隧道,则配置DMVPN很简单。 如果您不熟悉GRE隧道概念,我们建议您通读我们的 点对点GRE IPSec隧道配置 继续进行DMVPN配置之前的文章。

虚拟专用网作为设计概念,实质上是 受保护的GRE隧道 和下一跳路由协议(NHRP)。

 

本文研究了特定的DMVPN部署体系结构。那些寻求有关可用DMVPN部署模型的其他信息的人也可以访问我们的 动态多点VPN(DMVPN)部署模型& Architectures 文章。

 

虚拟专用网操作-DMVPN的运作方式

在深入研究路由器的配置之前,我们将简要说明DMVPN的工作原理。这将有助于了解DMVPN在网络中的运行方式:

  • 每个分支都有到集线器的永久IPSec隧道,但没有到网络内其他分支的永久IPSec隧道。
  • 每个分支都注册为NHRP服务器的客户端。集线器路由器承担NHRP服务器的角色。
  • 当分支需要将数据包发送到另一个分支上的目标(专用)子网时,它将向NHRP服务器查询目标(目标)分支的实际(外部)地址。
  • 原始分支得知目标分支的对等地址后,可以启动到目标分支的动态IPSec隧道。
  • 分支辐式隧道建立在多点GRE(mGRE)接口上。
  • 只要辐条之间有流量,就会根据需要建立辐条到辐条的链接。此后,数据包能够绕过集线器并使用分支辐式隧道。
  • 使用IPSecurity(可选)对通过GRE隧道的所有数据进行加密

 

我们的DMVPN网络

下图描述了我们的DMVPN示例网络。我们的目标是连接两个远程网络(远程1&2)同公司总部。总部路由器R1是中央集线器路由器,它将保存NHRP数据库,其中包含所有分支路由器,其公用IP地址和LAN网络。 

思科路由器dmvpn配置1

 

全面配置Cisco 虚拟专用网的四个步骤

为了简化DMVPN的配置,我们将流程分为4个易于执行的步骤。必须先完成每个步骤,然后再进行下一个步骤。这些步骤是:

  • 配置DMVPN集线器
  • 配置DMVPN分支
  • 使用IPSecurity保护mGRE隧道(可选)
  • 配置DMVPN mGRE隧道之间的路由(静态路由或路由协议)

 

配置DMVPN集线器– R1路由器

配置集线器路由器(R1)很简单。 配置路由器的LAN和WAN接口后,我们创建mGRE隧道接口。让我们从路由器的以太网接口开始:

接口FastEthernet0 / 0
 描述局域网
 IP地址192.168.1.1 255.255.255.0
 duplex auto
 speed auto
!
接口FastEthernet0 / 1
 说明WAN网络
 IP地址1.1.1.10 255.255.255.0
 duplex auto
 speed auto

 

接下来,我们配置 隧道0 接口。请注意,这是一种几乎典型的隧道接口配置,其中突出了一些微小但重要的更改:

接口Tunnel0
 描述mGRE-DMVPN隧道
 IP地址172.16.0.1 255.255.255.0
 no ip redirects
 ip nhrp身份验证防火墙
 ip nhrp映射多播动态
 ip nhrp network-id 1
 隧道源1.1.1.10
 隧道模式gre多点

熟悉GRE隧道的工程师会立即注意到缺少 隧道目的地 命令。它已被替换为 隧道模式gre多点命令,将该隧道指定为多点GRE隧道。

ip nhrp映射多播动态 命令启用跨隧道将多播流量转发到动态分支。路由协议(例如OSPF和EIGRP)通常需要这样做。 在大多数情况下,DMVPN随附有路由协议,以发送和接收有关专用网络的动态更新。

ip nhrp network-id 1 命令用于识别此DMVPN云。参与此DMVPN云的所有路由器必须配置相同的网络ID,以便在它们之间形成隧道。

ip nhrp身份验证 命令用于允许对NHRP数据库进行经过身份验证的更新和查询,以确保不向不需要的查询提供有关DMVPN网络的任何信息。

 

配置DMVPN分支– R2& R3 路由器

分支路由器的配置与集线器的配置类似。 首先配置LAN和WAN接口:

接口FastEthernet0 / 0
 描述局域网
 IP地址192.168.2.1 255.255.255.0
 duplex auto
 speed auto
!
接口FastEthernet0 / 1
 说明WAN网络
 IP地址2.2.2.10 255.255.255.0
 duplex auto
 speed auto

 

接下来,是时候建立该隧道了:

接口Tunnel0
 描述R2 mGRE-DMVPN隧道
 IP地址172.16.0.2 255.255.255.0
 no ip redirects
 ip nhrp身份验证防火墙
 ip nhrp映射多播动态
 ip nhrp映射172.16.0.1 1.1.1.10
 ip nhrp映射多播1.1.1.10
 ip nhrp network-id 1
 ip nhrp nhs 172.16.0.1
 隧道源FastEthernet0 / 1
 隧道模式gre多点

几秒钟后,我们收到隧道接口已启动的确认:

* 9月 9 21:27:29.774:%LINEPROTO-5-UPDOWN:接口Tunnel0上的线路协议,状态更改为up

ip nhrp nhs 172.16.0.1 命令告诉我们的分支路由器 下一跳服务器 (NHS)是,而 ip nhrp映射172.16.0.1 1.1.1.10 命令将NHS地址(172.16.0.1)映射到集线器(R1)的公共IP地址(1.1.1.10)。

ip nhrp映射多播1.1.1.10 确保多播流量仅从分支发送到集线器,而不从分支发送到分支。集线器应接收所有多播流量,进行处理,然后将更新发送到分支。

最后,请注意 隧道源FastEthernet0 / 1 命令。必须配置所有具有动态WAN IP地址的分支,以将物理WAN接口绑定为隧道源。这条路, 当辐条的WAN IP更改时,它将能够使用其新的WAN IP地址更新NHS服务器。

注意:在R2的配置中,我们已经在其WAN接口FastEthernet0 / 1上配置了一个静态IP地址,但是出于本示例的原因,让我们假定它是由ISP动态提供的。

R3的配置类似于R2分支路由器的配置:

接口FastEthernet0 / 0
 描述局域网
 IP地址192.168.3.1 255.255.255.0
 duplex auto
 speed auto
!
接口FastEthernet0 / 1
 说明WAN网络
 IP地址3.3.3.10 255.255.255.0
 duplex auto
 speed auto

 

接下来,我们的隧道配置:

接口Tunnel0
 描述R3 mGRE-DMVPN隧道
 IP地址172.16.0.3 255.255.255.0
 no ip redirects
 ip nhrp身份验证防火墙
 ip nhrp映射多播动态
 ip nhrp映射172.16.0.1 1.1.1.10
 ip nhrp映射多播1.1.1.10
 ip nhrp network-id 1
 ip nhrp nhs 172.16.0.1
 隧道源FastEthernet0 / 1
 隧道模式gre多点

注意:在R3的配置中,我们已经在其WAN接口FastEthernet0 / 1上配置了静态IP地址,但是出于本示例的原因,让我们假定它是由ISP动态提供的。

这样就完成了我们中心集线器和两个分支路由器上的DMVPN配置。 现在是时候验证DMVPN是否正常工作了。

 

在R1 HUB路由器上验证DMVPN功能

完成路由器配置后,是时候验证所有功能都按计划进行了。

首先,我们转到主集线器R1,并使用以下命令检查DMVPN: 显示dmvpn 命令:

R1# 显示dmvpn
图例:Atrrb->S-静态,D-动态,I-不完整
       N-已NAT,L-本地,X-无插槽
        #Ent -->与同一NBMA对等体的NHRP条目数
        NHS Status: E -->期待回复,R-> Responding
        UpDn Time -->隧道的上/下时间
================================================== ========================

接口:Tunnel0,IPv4 NHRP详细信息
类型:枢纽,NHRP对等体:2,

 # Ent      对等NBMA Addr         对等隧道添加    州     UpDn Tm   Attrb
 -----      ----------------------         ---------------          -----        --------        -----
     1              2.2.2.10                    172.16.0.2         向上         00:04:58     D
     1              3.3.3.10                    172.16.0.3         向上         00:04:12     D

命令的输出为我们提供了一些有价值的信息。 首先,路由器会为出现的每列提供一个解释(在show命令下),但我们仍将覆盖它们,以免留下任何未解决的问题。

第一栏 #Ent 显示相同分支的NHRP数据库中存在的条目数。通常,我们希望每个发言不会超过一个。

第二栏 对等NBMA Addr 显示发言人的公共IP地址,而第三列 对等隧道添加,显示每个分支的本地隧道的IP地址。 

接下来, 列显示隧道所在的当前状态。在我们的示例中,两个隧道均为 向上。就在旁边 是个 UpDN Tm,这是当前状态的运行时间或停机时间。 这是非常重要的信息,因为您可以清楚地看到隧道处于当前状态的时间。

对于我们的示例,两个辐条都已经上升了近5分钟。

最后, 属性 列显示了由辐条建立的隧道的类型。 D 代表动态, S 用于静态和 I 对于不完整。通常动态辐条会产生 D 类型隧道。从辐条到集线器路由器的隧道预计为 S 类型,因为集线器保持静态。

 

在R2上验证DMVPN功能& R3 Spoke Router

谈到R2路由器,我们的第一个发言人,我们可以重复同样的内容 显示dmvpn 命令并获取当前创建的dmvpn的列表:

R2# 显示dmvpn
图例:Atrrb->S-静态,D-动态,I-不完整
       N-已NAT,L-本地,X-无插槽
        #Ent -->与同一NBMA对等体的NHRP条目数
        NHS Status: E -->期待回复,R-> Responding
        UpDn Time -->隧道的上/下时间
================================================== ========================

接口:Tunnel0,IPv4 NHRP详细信息
类型:辐条,NHRP对等体:1,

 # Ent      对等NBMA Addr       对等隧道添加    州     UpDn Tm   Attrb
 -----      ----------------------         ---------------          -----        --------        -----
     1              1.1.1.10                    172.16.0.1         向上         00:06:35     S

不出所料,R2的输出仅显示一个条目。当需要将流量定向到R3时,将出现第二个GRE隧道。我们将尽快尝试。现在,让我们检查我们的第三个远程站点R3分支路由器

使用相同的show dmvpn命令,我们获得以下类似的输出:

R3# 显示dmvpn
图例:Atrrb->S-静态,D-动态,I-不完整
       N-已NAT,L-本地,X-无插槽
        #Ent -->与同一NBMA对等体的NHRP条目数
        NHS Status: E -->期待回复,R-> Responding
        UpDn Time -->隧道的上/下时间
================================================== ========================

接口:Tunnel0,IPv4 NHRP详细信息
类型:辐条,NHRP对等体:1,

 # Ent      对等NBMA Addr       对等隧道添加    州     UpDn Tm   Attrb
 -----      ----------------------         ---------------          -----        --------        -----
     1              1.1.1.10                    172.16.0.1         向上         00:06:55     S

 

保护-使用IPSec加密DMVPN mGRE隧道

由于我们已启动并运行GRE隧道,因此我们需要使用IPSec对其进行加密,以确保数据机密性。 保护GRE隧道在我们的工作中已深入探讨 受保护的GRE over IPSec 文章,因此我们将在此处仅显示命令,而无需重复该主题。

第一站是我们的总部R1集线器路由器:

crypto isakmp策略1
加密3des
哈希md5
验证预共享
2组
终身86400
!
crypto isakmp密钥firewall.cx地址0.0.0.0
!
加密ipsec转换集TS esp-3des esp-md5-hmac
!
加密ipsec配置文件保护gre
设置安全关联生命周期秒数86400
设置变换集TS
!
接口Tunnel 0
隧道保护ipsec profileprotect-gre

注意命令 crypto isakmp密钥firewall.cx地址0.0.0.0 0.0.0.0。 isakmp密钥对其有效的对等地址是 0.0.0.0 0.0.0.0,这意味着Internet上所有可能的主机。 当我们的远程路由器(分支)具有动态IP地址时, 0.0.0.0 0.0.0.0 必须使用。

以下配置适用于R2& R3说话 routers:

crypto isakmp策略1
加密3des
哈希md5
验证预共享
2组
终身86400
!
crypto isakmp密钥firewall.cx地址0.0.0.0 0.0.0.0
!
加密ipsec转换集TS esp-3des esp-md5-hmac
!
加密ipsec配置文件保护gre
设置安全关联生命周期秒数86400
设置变换集TS
!
接口Tunnel 0
隧道保护ipsec profileprotect-gre

同样,我们已经定义 0.0.0.0 0.0.0.0 作为isakmp对等地址。尽管知道集线器的公共IP地址,但我们必须记住,R2和R3可以在它们之间建立动态VPN隧道。考虑到其公共IP地址是动态的,因此必须使用 0.0.0.0 0.0.0.0 为远程对等。

验证DMVPN加密隧道

配置完所有路由器后,将启动IPSec 虚拟专用网隧道。我们可以使用 显示加密会话 在我们的R1集线器路由器上执行以下命令:

R1# 显示加密会话
加密会话当前状态
接口:Tunnel0
会话状态: 活跃
同行: 2.2.2.10 500端口
 IKE SA:本地1.1.1.10/500远程2.2.2.10/500有效
 IPSEC流:允许47主机1.1.1.10主机2.2.2.10
       活动SA:2,来源:加密映射
接口:Tunnel0
会话状态: 活跃
同行: 3.3.3.10 500端口
 IKE SA:本地1.1.1.10/500远程3.3.3.10/500有效
 IPSEC流:允许47主机1.1.1.10主机3.3.3.10
       活动SA:2,来源:加密映射



虚拟专用网 mGRE隧道之间的路由

最后一步涉及在我们的DMVPN网络中启用路由。这是必需的,以便集线器和分支路由器知道需要通过VPN网络发送哪些数据包。

有两种方法可以实现:1) 静态路线  2) 路由协议.

为了简单起见,我们将专注于静态路由。 DMVPN和路由协议配置将在另一篇文章中介绍。

配置必要的静态路由非常简单。所需要做的就是在每个路由器(集线器和分支)上指向其他网络的一组简单的静态路由。

R1 hub 路由器:

IP路由192.168.2.0 255.255.255.0 172.16.0.2
IP路由192.168.3.0 255.255.255.0 172.16.0.3
R2说话 路由器:
IP路由192.168.1.0 255.255.255.0 172.16.0.1
IP路由192.168.3.0 255.255.255.0 172.16.0.3

最后 R3说话 路由器:

IP路由192.168.1.0 255.255.255.0 172.16.0.1
IP路由192.168.2.0 255.255.255.0 172.16.0.2

 

我们的DMVPN网络已准备就绪!

至此,我们的DMVPN网络已经准备就绪且功能齐全。所有网络之间都相互连接,并且可以在分支之间建立动态VPN隧道。  如果数据机密性和ip路由已启用,则GRE隧道将得到适当的保护。

最后,我们可以尝试在分支之间发送流量,并验证是否建立了动态​​隧道:

在R2分支路由器中,我们尝试ping R3的LAN IP地址:

R2# ping 192.168.3.1

输入转义序列以中止。
发送5个100字节的ICMP Echos到192.168.3.1,超时为2秒:
。!!!!
成功率为80%(4/5),最小/平均/最大往返次数= 1/1/4毫秒

显然,两个分支路由器已建立通信。

虚拟专用网已启动,并且路由运行正常:

R2# 显示dmvpn
图例:Atrrb->S-静态,D-动态,I-不完整
       N-已NAT,L-本地,X-无插槽
        #Ent -->与同一NBMA对等体的NHRP条目数
        NHS Status: E -->期待回复,R-> Responding
        UpDn Time -->隧道的上/下时间
================================================== ========================

接口:Tunnel0,IPv4 NHRP详细信息
类型:辐条,NHRP对等体:2,

 # Ent     对等NBMA Addr Peer    Tunnel Add        州     UpDn Tm   Attrb
 -----      ----------------------         ---------------          -----        --------        -----
     1              1.1.1.10                    172.16.0.1         向上         00:39:05     S
     1              3.3.3.10                    172.16.0.3         向上         00:00:08     D


总结我们的DMVPN配置文章。 

本文介绍了如何在Cisco路由器之间配置DMVPN网络。我们涵盖了 思科DMVPN的配置 包含 枢纽, 辐条, 静态路由保护mGRE隧道。我们还提供了一些有用的 显示命令帮助排除故障调试虚拟专用网网络。有关VPN的更多文章&DMVPN可以在我们的网站上找到 思科路由器部分思科服务& Technlogies Section

返回思科路由器部分

压住他

文章 阅读下一篇:

CCENT / CCNA

思科公司 路由器

  • SSL WebVPN
  • 保护路由器
  • 基于策略的路由
  • 棒上路由器

虚拟专用网安全

  • 了解DMVPN
  • GRE / IPSec配置
  • 站点到站点IPSec 虚拟专用网
  • IPSec模式

思科公司 救命

  • 视窗 8 虚拟专用网客户端
  • 视窗 7的VPN客户端
  • CCP显示问题
  • 思科支持应用程序。

视窗 2012

  • 新的功能
  • 发牌
  • Hyper-V / VDI
  • 安装Hyper-V

的Linux

  • 文件权限
  • Webmin
  • 群组-用户
  • Samba设置