L2TP VPN在思科IOS路由器上的应用
L2TP同PPTP一样也是一个传统的VPN拨号技术,微软的操作系统默认都带有L2TP的客户端。L2TP(Leary 2 Tunneling Protocol二层隧道协议)和PPTP不同,L2TP是一个标准技术。L2TP源自于两个老的隧道协议Cisco的L2F(layer2 forwarding protocol )和microsoft的PPTP。L2TP本身不提安全机制,它通过IPSEC框架来实现L2TP的安全,即L2TP Over IPSEC。因此,可以配置不加密的L2TP。L2TP支持站点到站点的VPN和远程拨入VPN,本文讲的是远程拨入VPN技术。
封装:
L2TP所有的数据封装在UDP 1701端口,包括建立拨号的数据和实际的数据流。数据封装在UDP中有很多好处,包括更好地支持防火墙状态化检测,以及穿越PAT设备。但是L2TP Over IPSec 是封装在ESP中的。因此,如果有防火墙的话需要放行相关的端口。
实验环境:
Cisco Router
IOS Version:Version 12.4(15)T5
Device Type:Cisco 3660
Client:
Windows XP
Windows7
以下实验均可以通过模拟器实现,博主均使用模拟器。在Vmware workstation上安装Windows XP和windows7操作系统,通过网卡桥接的方式与R2和R1相连。通过dynamips模拟器加载真实的36路由器的IOS来模拟思科路由器。大家只有多做实验才能更加深刻的理解和吃透技术。纸上得来终觉浅,觉知此事要躬行。
最后一步,在创建出来的VPN的网卡上点击右键属性-安全-高级设置,选择“使用预共享的密钥作身份验证”。
在拨通后,查看Win7获得的IP地址,并进行测试。
ping测试,由于模拟器,又对数据进行了加密,导致延时有些大。
2.实验2:加密的L2TP Server配置(不加密)
注意:IETF组织制度的标准的L2TP是不加密的,但微软的操作系统的默认策略是强制L2TP VPN 使用IPSEC加密的,因此如果服务器端是不加密的L2TP,需要修改注册表才能使用。修改文件见附件,使用两个中的一个即可,WIN7和XP测试过,其他系统未测试.
修改路由器上的配置:
- R1(config)#int f0/0
- R1(config-if)#no crypto map
- *Mar 1 01:40:56.575: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is OFF
- R1(config-if)#vpdn-group 1
- R1(config-vpdn)#no l2tp security crypto-profile cisco
再次在WIN7号拨号,发现已经无法拨通了。
修改WIN7配置,将数据加密选择成“可选加密”或“不允许加密”(即使没有选择本步骤,只要修改了注册表也可以拨通)
以上就是L2TP的封装和在思科IOS路由器关于L2TP的配置。不管服务器是思科的路由器、还是其他品牌的路由器、防火墙,还是微软自己的服务器,客户端的配置都是一样的。都可以参照本文进行配置。
附件1:一个是可以导入的注册表文件,双击导入后L2TP VPN就可以不加密了。另外一个是禁用和启用L2TP加密的小软件,用起来更加方便。
附件2:压缩包中抓包文件,一个是L2TP加密后的,一个是没有加密的。读者可以下载下来,使用wireshark等工具进行分析。