VPN
VPN — 是虚拟专用网络
通俗地说,就是通过虚拟的手段,将两个独立的网络,穿越一个公共网络进行连接,实现点到点专线的效果(可以理解为:一个分公司通过公网和总公司建立点到点的专线连接)
现实中,不通过VPN技术也可以实现点到点专线连接的效果,最简单直接的就是接个网线,将两家公司的网络直接连接起来。
那么,既然可以通过连线实现网络的连接,为什么要大费周章地搞个VPN技术,既然有VPN,就有其出现的意义,最大的意义就是 ------ 省钱
试想一下,两个公司用线连,那么线要多长,成本更是高,而VPN是通过公网作为一个虚拟的线,来实现连接,成本远远降低。
介绍完VPN,那么就来说说VPN技术
VPN技术包括了两个技术 ———— GRE和MGRE
GRE
GRE ------ 通用路由封装
这是一个标准的VPN技术,从一个私网访问另一个私网时,可以通过这个技术创建一个虚拟的tunnel接口,对方私网对应的也要创建一个虚拟的tunnel接口,当你访问对方私网时会从该tunnel接口出,此时它会在ipv4报头前再封装一个三层报头(该报头表明源目IP地址,如下图显示,表示源IP source 12.1.1.1/24 到目标IP destination 23.1.1.2/24),使该包能够顺利发送到对方的私网,对方私网收到包后,拆开报头,会发现里面还有一个三层报头,这个才是真正的三层报头,用来访问对方私网 ------ 这就达到了私网的虚拟点对点的连接
注意:tunnel接口是虚拟的,实际上出的口还是实际的口如g0/0/0或e0/0/0等实际的接口,只不过当路由器检测到该IP要走tunnel接口时,会在其前面再加一个封装再从实际口出,而检测到其他口则不会加三层报头,直接从实际接口出
看上图,配置GRE的步骤如下:
1、创建隧道接口 --- interface Tunnel 0/0/0
2、配置IP ---ip address 192.168.3.1 24
3、用GRE封装该接口 --- tunnel-protocol gre
4、表明源目IP --- source 12.1.1.1
destination 23.1.1.2
5、给R2写路由 --- ip route-static 192.168.2.0 24 192.168.3.2
告知R2去访问私网R3走192.168.3.2过
6、给R3写回来的路由,与R2写法一样,也可以用出接口表示 --- ip route-static 192.168.1.0 24 Tunnel 0/0/0
注意:上图中12.1.1.1和23.1.1.2都是固定的,要用到企业级宽带
也就是说每有一个公司加入连接,那么每个公司都要给加入的那个公司发一条直连,这样的话,直连的线会成指数增加,而且每条线都是企业级的宽带
企业级宽带就是接口固定
家庭版宽带就是接口不固定,会不断变动
那么既然说到直连会成指数增加,就说明费用会很高
为了解决费用高这个问题,也就有了MGRE
MGRE
MGRE — 多点GRE — 是GRE的一种扩展配置;归类于虚拟的NBMA网络
NBMA–非广播型多路访问
BMA — 广播型多路访问 – 在一个网段内可以放置多个物理节点,同时该范围内可以实施广播洪泛机制;以太网技术典型的BMA网络
相较于GRE:
MGRE不需要两两间的IP都固定,只需要一个中心站点的IP固定即可,而其他IP不用固定,也就是说,只要一条企业级宽带,其他用家庭版宽带也行,费用大大降低,但是这个得用到NHRP协议
NHRP — 下一跳发现协议
对MGRE的作用 — 由于只有中心站点是固定的,那么其他的站点每天都会变,而NHRP协议就是让其他站点每天开机后,就向中心站点发送自己今天的IP,即使中心站点实时了解并记录其他站点的IP,并绘成一个表,以便能够正常通讯
而其他站点可以到中心站点下载IP表,使其他站点可以不通过中心站点也能自行访问其他站点,例如下图:
假设AR1是中心站点,那么正常来说,AR3访问AR4要通过中心站点,因为AR3不知道AR4的路由,但是AR3到AR1那下载IP表后,就可以直接访问AR4,不用经过AR1
具体的配置可以看我的另外一个博客:
HCIP的mgre实验这个是上图实验的具体配置解析
这个是简单的MGRE配置信息:
1、interface Tunnel 0/0/0 创建隧道接口
2、ip address 192.168.4.1 24 隧道接口ip地址
3、tunnel-protocol gre p2mp 定义该隧道为多点gre隧道
4、source 14.1.1.1 该隧道加封装的报头源ip地址
通过NHRP协议来获取加封装的目标ip地址
5、nhrp entry multicast dynamic 本地成为NHRP服务端
6、nhrp network-id 100 NHRP的工作编号,该网段所有设备必须在同一id
分支站点:
1、interface Tunnel 0/0/0
2、ip address 192.168.4.2 24
3、tunnel-protocol gre p2mp
加封装的源ip地址,为本地的隧道实际通过接口的ip地址,填写接口编号,而不是接口ip,原因在于该接口ip地址可变
4、source GigabitEthernet 0/0/0
加封装的目标ip地址,需要到NHRP中心站点获取
5、nhrp entry 192.168.4.1 14.1.1.1 register
6、nhrp network-id 100 将各站点包括中心站点分配到100组中