通俗讲解什么是IPsec VPN(下)

今天分享的是华三局域网技术全集【34个技术文档】!是不可多得的华三技术资料!超级实用,干货满满~如图!有需要的朋友可以在留言区留下QQ邮箱,小编将分享给大家!

6、其他

解决了上述的几个问题,基本可以保证VPN通讯模型能够建立起来了。

但是并不完美,这是最简单的VPN。即通过对端两个静态的IP 地址,实现异地 网络的互联。美国的很多VPN设备就作到这一级,因为美国IP地址充裕,分配静态 IP 地址没有问题。苦的是我等中国客户,2 端都需要静态 IP 地址,相当于2根Internet专线接入,VPN要在中国用起来,还要解决一堆的相关问题。

IPSEC通过包封装包的方法,通过Internet建立了一个通讯的隧道,通过这个通讯的隧道,就可以建立起网络的连接。但是这个模型并非完美,仍然有很多问题需要解决。

在讲述其他问题以前,我们对VPN定义几个概念。

VPN节点:一个VPN节点,可能是一台VPN网关,也可能是一个客户端软件。在 VPN组网中间,属于组网的一个通讯节点。它应该能够连接Internet,有可能是直接连接,比如adsl 、电话拨号等等,也可能是通过nat方式,例如:小区宽带、 cdma上网、铁通线路等等。

VPN隧道:在两个 vpn 节点之间建立的一个虚拟链路通道。 两个设备内部的网络, 能够通过这个虚拟的数据链路到达对方。与此相关的信息是当时两个 VPN节点的IP地址,隧道名称、双方的密钥。

隧道路由:一个设备可能和很多设备建立隧道,那么就存在一个隧道选择的问题, 即到什么目的地,走哪一个隧道?

用前面的通讯模型来说,老李老张就是隧道节点,他们通过邮政系统建立的密码通讯关系, 就是一个数据隧道,小张和小李把信发给他们老爸的时候,他们老爸要作出抉择, 这封信怎么封装, 封装以后送给谁。假如还有一个老王和他们的儿子,也要通讯, 这时候隧道路由就比较好理解了。送给小王的数据, 就封装给老王,送给小李的数据, 就封装发给老李。如果节点非常多,那么这个隧道路由就会比较复杂。

理解了以上的问题,我们就知道,ipsec 要解决的问题其实,可以分为以下几个步骤:

找到对方 vpn 节点设备,如果对方是动态IP 地址,那么必须能够通过一种有 效途径能够及时发现对方IP 地址的变化。按照通讯模型,就是老李老张如果经常搬家的话,必须有一个有效的机制,能够及时发现老李老张地址的变化。建立隧道,建立隧道说起来简单,作起来不容易。如果两个设备都有合法的公网 IP ,那么建立一个隧道是比较容易的。如果一方在nat 之后,那就比较罗嗦了。一般通过内部的vpn节点发起一个udp连接,再封装一次ipsec ,送到对方,因为udp可以通过防火墙进行记忆,因此通过udp再封装的ipsec包,可以通过防火墙来回传递。

建立隧道以后, 就确定隧道路由, 即到哪里去,走哪个隧道。很多VPN隧道配置的时候,就定义了保护网络,这样隧道路由就根据保护的网络关系来决定。但是这丧失了一定的灵活性。

所有的ipsecVPN展开来讲,实现的无非就是以上几个要点,具体各家公司,各有各的做法。但是可以肯定目前在市场销售的VPN,肯定都已经解决了以上的问题。

第一个问题:怎样找到 vpn 节点设备?

假如设备都是动态拨号方式的话,那么一定需要一个合适的静态的第三方来进行 解析。 相当于两个总是不停搬家的人,要合适找到对方, 一定需要一个大家都认 识的朋友,这个朋友不搬家,两个人都能够联系上他。

通过一个集中的服务器,实现统一解析, 然后给用户进行分组。每个 vpn 设备只 能看到同组的其他设备,不能跨组访问。 也可以通过目录服务器实现。这种方式 适合集中式的VPN,在企业总部部署服务器,实现全局设备的统一认证和管理。 它不太适合零散用户的认证,因为存在一个信任问题,客户会质疑管理服务器如果出现了问题, 有可能其他设备就能够连接到自己的vpn 域里面。 这种大型的集中vpn 管理软件, 在很多国内外的vpn 厂商都有专门的设备或软件,它除了能够 进行动态IP地址解析,还能够实现在线认证等等功能。如果管理中心比较职能 的话,可以集中制订通讯策略,下面的vpn 设备配置参数比较少。

以上讲述了三种动态IP 地址的解析方法,国内一般厂家提供的无外乎这几种方 法。如果再有比较偏门的技术,也许就不是主流技术了。

解决了动态IP 地址问题,按照之前的通讯模型,不考虑VPN设备很多的情况, 就可以组网。因此,一旦这种技术被越来越多的厂家掌握,基于IPsec vpn 设备 和软件是一定会价格下降的。It技术从朝阳变成夕阳就是转眼之间的事情。

第二个问题:隧道如何建立?

解决了 Ip 地址动态寻址的问题,现在来说一下Nat 穿越的问题。 我们知道, Udp 和 TCP是可以穿越防火墙的。直接的 IPsec 封装, 不能穿越防火墙, 因为防火墙 需要更改端口信息,这样回来的数据包,才能转到正确的内部主机。用 UDP显然 比较合适, 因为使用 tcp的话,不仅三次握手占据时间很长,而且还有来回的确 认。而实际上, 这些工作属于 ipsec内部封装的报文要干的事情,放在这里完成 是不合适的。因此,用udp 来封装 ipsec 报文,以穿越nat ,几乎是唯一可以选择的方案。

用 udp 穿越 nat 防火墙,这只解决了问题的一半,因为这要求至少有一方处于 Internet公网上面。有可路由的IP 地址。而有时会发生两个vpn 节点都在nat 之后的情景, 这只能通过第三方转发来完成。即两个设备都可以与第三方设备互 通,第三方设备为双方进行转发。这个可以通过之前的模型解析,老张老李不能直接通讯, 他们都可以与老王通讯,老王就可以在中间进行转发。凡是小李小张 的通讯, 交给他们老爸以后, 老王最后再进行转交。这是隧道路由的概念就很清 晰了,不能一个隧道直接到达,可以在几个隧道之间转发。

所以, IPsec vpn并不神秘。所有核心的工作无非就是围绕以下几个方面展开: 如何找到与本VPN节点相关的其他节点。

协商出一个可以通讯的隧道。如果是nat 之后,应该怎么处理。 建立隧道路由表,确定不同的目标地址,走不同的隧道。

假定以上的问题都得到了解决,通过某种方式,动态IP地址的VPN节点可以相互找到对方,并且能够建立隧道,因此也能够实现隧道路由通讯。是不是一个完整的VPN就能够实现了呢??

答案仍然是否,解决了以上问题,并不代表一个很好用的VPN产品,仍然有其他很多问题。之后的问题是围绕着复杂性展开的, 简单的原理实现之后,剩下的工作就是要解决掉全部相关的边缘问题。才能够实现一个好用的东西。能够用是一回事,好用是另外一回事。

本文来源于网络,如有侵权,请联系小编删除

天下名仕有部落,思博十五周年庆丰收!时光荏苒,岁月如梭,已经有数万名网络工程师在思博毕了业!想成为思博下一批毕业生吗?十五周年庆典惊喜不断!800元课程抵用券抢到就是你的!快快添加小编咨询吧!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180122A0N4Q800?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励