目录
1、虚拟专用网络产生背景
例:总部服务器(PC1)不对外开放,即无法通过nat转换访问到服务器;而分部又想访问总部服务器的数据,那么VPN就是一个合适的解决方案。
ISP:公网环境
总部和分部为局域网络
首先,先按如下图配置,其中ISP的路由之间采用OSPF协议进行通信
此时,PC1 PING测PC2是无法通信的,原理如下:
1)在PC1 Ping 192.168.2.1时,会对数据包进行如下封装
ICMP:Ping
IP: 源IP192.168.1.1
目IP192.168.2.1
MAC:源MAC
目MAC
2)根据源IP,因为跟PC1不在同一网段,该数据包会被送至网关192.168.1.254处,路由器R1根据路由表查询不到目的IP192.168.2.0段的路由,那么会根据默认路由(如果有)发送至R2,R2也没有目的IP192.168.2.0段的路由,也没有默认路由,该数据包被丢弃。
2、虚拟专用网络之GRE
GRE:通用路由封装,简单的虚拟专用网络。属于第三层隧道协议,采用了一种被称之为Tunnel(隧道)的技术。
GRE工作原理:隧道起点路由查找-->加封装-->承载协议路由转发-->公网转发-->解封装-->隧道终点路由查找
1、全网通(ISP搞定)R1-R3互PING通(本文用的OSPF协议)
2、内网通(网络工程师搞定)PC1-R1和PC2-R2互PING通
3、通过GRE协议在R1与R3之间建立一条逻辑上的虚拟隧道
R1配置:
##0/0/0逻辑上隧道端口,随意
interface Tunnel0/0/0
##配置端口IP
ip address 192.168.3.1 255.255.255.0
##启用隧道协议GRE
tunnel-protocol gre
##隧道端设备源IP
source 12.1.1.1
##隧道端设备目IP
destination 23.1.1.3
##隧道静态路由,该网段发往隧道0/0/0
ip route-static 192.168.2.0 255.255.255.0 Tunnel0/0/0
R2配置:
interface Tunnel0/0/1
ip address 192.168.3.3 255.255.255.0
tunnel-protocol gre
source 23.1.1.3
destination 12.1.1.1
##该网段的路由指向192.168.3.1
ip route-static 192.168.1.0 255.255.255.0 192.168.3.1
PING测结果:
此时,PC1 PING测PC2是可以通信的,原理如下:
1)在PC1 Ping 192.168.2.1时,会对数据包进行如下封装
ICMP:Ping
IP: 源IP192.168.1.1
目IP192.168.2.1
MAC:源MAC
目MAC
2)根据源IP,因为跟PC1不在同一网段,该数据包会被送至网关192.168.1.254处,路由器R1会给数据包封装GRE。
ICMP:Ping
IP: 源IP192.168.1.1
目IP192.168.2.1
GRE
IP:(GRE)源IP12.1.1.1
(GRE)目IP23.1.1.3
MAC:源MAC
目MAC
在R1 GE0/0/0抓包验证:
在R1 GE0/0/1抓包验证:
3)R1将数据包发送至R2时,R2解封装,查询路由表,将数据包发送至R3,R3解封装查询到目标IP是23.1.1.3,会继续解封装,解封装到GRE,查询自己是否有GRE功能,然后解封装到目标IP是192.168.2.1,根据路由表将数据包发送至PC2。
在R3 GE0/0/0抓包验证:
在R3 GE0/0/1抓包验证:
GRE
优点:配置简单,容易部署
缺点:缺少保护功能,不能执行如加密、认证以及数据完整性检查这些任务
因为安全上的限制,GRE不能作为一个完整的VPN解决方案;但是它可以和其他方案,如IPsec结合在一起产生一个强大的、具有扩展性的VPN实施方案。