目录

1 VPN简介

1.1 技术背景

1.2 作用

1.3 优势 

1.4 隧道技术

1.5 分类

1.5.1 按照使用场景分类

1.5.2按照工作层次分类

2 GRE 技术

2.1 GRE 简介

2.2 GRE VPN

2.3 GRE 报文结构

2.4 GRE VPN工作过程

2.5 GRE VPN的优缺点

2.6 多隧道口冗余

2.7 GRE VPN配置

3 MGRE 技术

3.1 简介

3.2 NHRP协议(下一跳地址解析协议)

3.3 MGRE VPN配置

3.4 NHRP配置

3.5 MGRE环境下的RIP网络


1 VPN简介

VPN 虚拟专用网络

1.1 技术背景

(1)Internet 网络不安全

(2)通过专线连接分支机构成本较高

(3)PSTN拨号成本高,速率低

1.2 作用

利用共享公网构建专用私网(跨越公网,访问私网)

简易流程:公网的IP头部封装在私网的IP头部

 

1.3 优势 

(1)部署简单快速

(2)通过Internet互连,不受地理位置的限制,成本低

(3)简化了配置和维护工作

(4)与私有网络一样,提供安全性、可靠性和客观理性

1.4 隧道技术

定义:使用一种协议去封装另一种协议

VPN隧道技术的封装流程

相关概念:

载荷数据:被封装的原始数据

载荷协议:被封装在内层的协议(私网IP头部)

封装协议:对封装协议的封装方式(用来标识使用的是哪一种VPN)

承载协议:再次封装的外层协议(公网IP头部)

1.5 分类

1.5.1 按照使用场景分类

(1)site-to-site VPN :站点到站点的VPN,用于连接不同分支结构的VPN

[1]LAN-TO-LAN:双方的公网地址必须是静态的

[2]IPsec VPN:一种网络层的安全保障技术,在公网上为两个私有网络提供安全通信通道,通过加密通道保证连接的安全

[3]GRE VPN:最简单的VPN ,一般和IPsec VPN搭配使用

(2)access VPN :用于把单个移动用户接入到公司的内网中

[1]L2TP VPN:二层VPN,隧道传送PPP网络(已淘汰)

[2]SSL VPN:解决远程用户访问公司敏感数据最简单最安全的技术

1.5.2按照工作层次分类

[1]二层VPN:L2TP VPN

[2]三层VPN :IPsec VPN、GRE VPN

[3]七层VPN:SSL VPN

2 GRE 技术

2.1 GRE 简介

GRE(通用路由封装):标准的三层隧道技术,是一种点对点的隧道,在任意一种网络协议上传送任意一种其他网络协议的封装方法

2.2 GRE VPN

GRE VPN:直接使用GRE封装建立起GRE隧道,在一种协议的网络上传送其他协议

2.3 GRE 报文结构

公网的IP头部使用协议号47去标识GRE; GRE使用以太网类型0X0800标识私网IP:

相关概念:

[1] 载荷数据:封装的原始数据

[2]载荷协议:被封装在内层的协议

[3]封装协议:对载荷协议的封装方式(GRE头)

[4] 承载协议:再次封装的外层协议

2.4 GRE VPN工作过程

(1)私网数据包生成:私网中的主机生成数据包,目标地址为私网中的另一台主机。

(2)隧道起点处理:隧道起点设备(如路由器)接收到私网数据包;根据私网路由表,确定数据包需要通过GRE隧道传输。

(3)GRE封装:数据包被送至隧道接口(Tunnel接口);在隧道接口,数据包被封装上GRE头部,形成GRE帧;再次封装公网IP头部,公网IP头部的目的地址为隧道终点的公网IP地址。

(4)公网传输:根据公网IP头部的目的地址,查找公网路由表;数据包通过公网进行传输,直到到达隧道终点。

(5)隧道终点处理:隧道终点设备接收到数据包。检查公网IP头部,确认数据包是发给自己的;剥离公网IP头部和GRE头部,恢复原始的私网数据包。

(6)私网转发:根据私网路由表,将数据包转发到目标私网主机。

2.5 GRE VPN的优缺点

(1)优点

[1]灵活性高:支持多种协议的封装,包括IPV4、IPV6、以太网帧等,能够实现多协议的本地网络实现单一协议的传输

[2]配置简单:GRE技术的配置和使用相对简单,可以在短时间内掌握其基本操作

[3]支持组播和动态路由协议:GRE隧道支持组播和动态路由协议,如OSPF、BGP等。可以实现扩展受跳数限制的路由协议的工作范围,支持企业灵活设计网络拓扑

[4]支持多点隧道:支持多点隧道,可以实现多点之间的通信

[5]标准协议:GRE是一个标准协议,可以与不同厂商的设备互通

(2)缺点

[1]缺乏安全性:GRE技术本身无法对数据进行加密,数据以明文的形式传输,容易被截获和分析,不适合直接用于公网中传输

[2]没有标准的控制协议:通常需要使用其他协议和keepalive来维持GRE隧道

[3]点到点隧道:每一个隧道只能连接两个端口,多个点之间需要配置多个隧道,管理难度增加

[4]静态配置隧道参数:GRE隧道需要手动配置隧道参数,如IP地址和目的地址,配置过程就比较的繁琐

[5]布置复杂关系连接时,代价巨大:在复杂的网络服务中,配置和管理多个GRE隧道的成本和工作量都非常的高

2.6 多隧道口冗余

作用:主隧道转发数据备用隧道处于空间状态;需要开启keepalive(包活机制,确保中间链路没有问题)来检测隧道运行状态

(1)Tunnel接口虚假状态与静态路由

当中间的链路出现问题,公网有问题后tunnel接口任然是UP状态,备用隧道也是没有意识到主隧道出现了故障,导致数据包被丢弃,这便是tunnel的虚假状态

(2)Tunnel接口keepalive

 

 根据命令Keepalive “interval time” 来配置隧道的保活;通过保活机制判断主隧道是否出现问题,如果出现故障那么就使用备用隧道

2.7 GRE VPN配置

发送端:
[r1]interface Tunnel 0/0/0 --- 创建GRE随道接口
[r1-Tunnel0/0/0]ip address 192.168.3.1 24  ---- 配置隧道IP地址
[r1-Tunnel0/0/0]tunnel-protocol gre  ---- 定义封装方式
[r1-Tunnel0/0/0]source 100.1.1.1 ---- 定义隧道被封装的源地址
[r1-Tunnel0/0/0]destination 100.2.2.3---- 定义隧道被封装的目标地址

接收端的配置和发送端的配置一样,配置完了注意添加路由。之后内网之间便可以ping通了,可以用ping -a测试。

详细实验,请点击链接查看我的另一篇实验博客

HCIP【GRE VPN、MGRE VPN与PPP验证综合实验】-CSDN博客文章浏览阅读1.5k次,点赞21次,收藏11次。3、R1、R2、R3构建一个MGRE环境,R1为中心站点,R1、R4间为点到点的GRE。1、R5为ISP,只能进行IP地址配置,其所有地址均配为公有IP地址。(2)R2与R5之间使用ppp的CHAP认证,R5为主认证方。5、所有PC设置私有IP为源IP,可以访问R5环回,实现全网通。2、(1)R1和R5间使用PPP的PAP认证,R5为主认证方。(3)R3与R5之间使用HDLC封装。4、整个私有网络基于RIP全网可达。 https://blog.csdn.net/miss_copper/article/details/137186495?fromshare=blogdetail&sharetype=blogdetail&sharerId=137186495&sharerefer=PC&sharesource=miss_copper&sharefrom=from_link

3 MGRE 技术

3.1 简介

定义:多点通用路由封装协议(MGRE,Multipoint GRE)是一种基于NHRP(Next Hop Resolution Protocol,下一跳地址解析协议)的动态VPN技术。与传统的GRE隧道不同,MGRE支持多点连接,允许在一个隧道中建立多个连接点,适用于复杂的网络拓扑结构

特点:

[1]多点通信:MGRE允许在IP网络中建立多个点对点的通信连接,意味着可以在一个MGRE隧道中同时传输多个源和目的地址之间的数据

[2]动态地址解析:通过NHRP协议动态获取隧道的NBMA地址(隧道外层公网地址),无需手工配置,NHRP用于解析的是Tunnel IP(逻辑地址)到NBMA地址(物理地址/真实地址)的映射

[3]简化配置:只需要配置一个Tunnel接口就可以与多个站点建立GRE隧道,减少了所需的隧道数量简化了路由配置

[4]灵活性高:适用于多个分公司之间需要与总部之间连接的情况,以及分部与分部之间的通信

[5]支持动态路由协议:通过动态路由协议学习私网路由,实现私网的连通性

[6]中心节点要求:所有私网中,有一方的公网地址必须固定,其他私网地址可以不固定,即必须有一个中心站点的要求

3.2 NHRP协议(下一跳地址解析协议)

工作原理:

  在私网中选择一个NHRP中心站点,其出口的公网IP必须是固定的;NHRP中心站点要求所有分支都需要将自己的物理接口IP和隧道IP地址发给中心站点(发生变化后就要及时的更改,重新发送给中心站点);NHRP中心会将所有的分支的地址映射关系动态的记录在本地,发送信息时查询即可;分支站点之间需要发送信息也需要获取这个映射关系,就需要先问NHRP中心站点要这个映射关系表

3.3 MGRE VPN配置

[r1]interface Tunnel 0/0/0 --- 创建GRE随道接口
[r1-Tunnel0/0/0]ip address 192.168.3.1 24  ---- 配置隧道IP地址
[r1-Tunnel0/0/0]tunnel-protocol gre p2mp  ---- 定义封装方式
[r1-Tunnel0/0/0]source 100.1.1.1 ---- 定义隧道被封装的源地址

3.4 NHRP配置

中心站点配置:
[R1-Tunnel0/0/0]nhrp network-id 100  创建NHRP域

 分支站点配置:
[R2]int Tunnel 0/0/0
[R2-Tunnel0/0/0]ip add 192.168.5.2 24
[R2-Tunnel0/0/0]tunnel-protocol gre p2mp
[R2-Tunnel0/0/0]source GigabitEthernet 0/0/0
[R2-Tunnel0/0/0]nhrp network-id 100   //分支加入中心站点域100
[R2-Tunnel0/0/0]nhrp entry 中心隧道地址 中心公网接口地址 register  // 分支找中心注册自己的信息

3.5 MGRE环境下的RIP网络

(1)只有中心获取分支的路由信息,但是分支并没有获取到中心的路由信息

解决方法:在中心站点上开启伪广播

开启伪广播配置:
[R1-Tunnel0/0/0]nhrp entry multicast dynamic
(2)分支在中心开启伪广播后,分支只能获取到中心站点的路由信息,但是无法获取分支站点之间的路由信息

解决方法:关闭水平分割的配置

[R1-Serial4/0/0]undo rip split-horizon

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐