在一个客户处安装网关出口时,在内网的一台 服务器(UGS5000防火墙)上开启L2TP服务,而后在出口网关上映射udp5000端口,udp1701端口,udp4500端口windows
而后在外网使用windows系统进行L2TP拨号,一直提示拨号失败,wireshark抓包发现客户端在拨号时向服务器的udp500端口发起ISAKMP链接,对方服务器不回应数据包,初步判断是防火墙上的ACL策略引引导的,检查ACL配置后未发现问题,经查阅说明书资料发现windows在进行l2tp拨号时默认使用证书拨号,导至l2tp拨号失败,须要修改注册表,以下:服务器
HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > Rasman > Parameters”。在该路径下右侧界面中,检查是否存在名称为ProhibitIpSec、数据类型为DWORD的键值。若是不存在,请单击右键,选择“新建 > DWORD值”,并将名称命名为ProhibitIpSec,若是此键值已经存在,选中该值,单击右键,选择“修改”,编辑DWORD值。在“数值数据”文本框中填写1,单击“肯定”。
从新启动该PC,使修改生效。编辑器
重启电脑后,再次进行拨号,成功,wireshark抓包分析,电脑在拨号后直接向UDP发送数据包,并无向服务器的UDP500端口发送ISAKMP数据报文,ide
注:该注册表值说明以下spa
Windows2000/xp/2003的L2TP缺省启动证书方式的IPSEC,所以必须向Windows添加 ProhibitIpSec 注册表值,以防止建立用于 L2TP/IPSec 通讯的自动筛选器。
ProhibitIpSec 注册表值设置为 1 时,基于 Windows 2000 的计算机不会建立使用 CA 身份验证的自动筛选器,而是检查本地 IPSec 策略或 Active Directory IPSec 策略。
要向Windows添加 ProhibitIpSec 注册表值,请按照下列步骤操做:
1. 单击“开始”,单击“运行”,键入 regedit,而后单击“肯定”。
2. 找到下面的注册表子项,而后单击它:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters
3. 在该项中新建一个“DWORD值”。
4. 将该值名称修改成“ProhibitIpSec”。
5. 双击该值,将Value data修改成“1”, 而后单击“肯定”。
6. 退出注册表编辑器,而后从新启动计算机。it