我们使用思科ASA为我们的IPSEC VPN使用EZVPN方法。 我们经常会遇到一些问题,即ISP已经改变了他们的networking,我们的VPN就停止工作了。 ISP十次中有九次否认他们的改变可能阻止了这个工作 – 我怀疑是因为他们不明白究竟是什么原因导致了这个问题。 我不想和他们争吵,而是试着把他们指向一个可能得到更快解决的方向。
在我目前的事件中,我可以ssh到ASA的外部接口,并做一些小动作:
sh crypto isakmp sa Active SA: 1 Rekey SA: 0 (A tunnel will report 1 Active and 1 Rekey SA during rekey) Total IKE SA: 1 1 IKE Peer: {Public IP address of London ASA} Type : user Role : initiator Rekey : no State : AM_TM_INIT_XAUTH_V6C
在链接的另一端,我看到以下内容:
Active SA: 26 <snip> 25 IKE Peer: {public IP address of Port-Au-Prince-ASA} Type : user Role : responder Rekey : no State : AM_TM_INIT_MODECFG_V6H
我找不到AM_TM_INIT_XAUTH_V6C或AM_TM_INIT_MODECFG_V6H任何文档,但是我确定这意味着IKE握手由于某种原因失败了。
任何人都可以提出任何可能阻止IKE成功的事情,或者AM_TM_INIT_XAUTH_V6C意味着什么的具体细节?
更新 :我们在另一个ISP的客户的站点连接了ASA。 VPN连接立即生效。 这确认问题不是configuration相关的。 现在ISP正在接受责任并进一步调查。
更新 :上个星期突然联网。 我已经通知ISP,看看他们是否改变了什么,但还没有听到。 我现在正在另一个网站上看到类似的问题。 我发现了一个关于VPN碎片效应的思科文档 。 我开始认为这可能是我所看到的问题的原因。
在思科的一点帮助下,我对所发生的事情做了一些更深入的分析,弄清楚了需要检查的事情。 思科告诉我的有用的东西:
debug crypto isakmp 5提供了足够的细节,以查看ISAKMPstream量是否出现问题 clear crypto isakmp sa清除任何陈旧的安全关联。 clear crypto isakmp {client_ip_address}可以在总部使用,以清除特定的安全关联(如果只有一个设备出现问题,您不一定要清除所有的安全关联! 在IPSEC套件上稍微阅读一下,ISAKMP更具体地表明,需要通过path中的任何防火墙来允许以下内容:
似乎很多人都没有意识到IP协议和TCP / UDP端口之间的重要区别。
以下数据包捕获集中在上述types的stream量上。 这些设置在远程和总部ASA上:
object service isakmp-nat-t service udp destination eq 4500 description 4500 object-group service ISAKMP-Services description Traffic required for ISAKMP service-object esp service-object ah service-object object isakmp-nat-t service-object udp destination eq isakmp access-list ISAKMP extended permit object-group ISAKMP-Services host {hq_ip_address} host {remote_ip_address} access-list ISAKMP extended permit object-group ISAKMP-Services host {remote_ip_address} host {hq_ip_address} capture ISAKMP access-list ISAKMP interface outside
然后,您可以通过https://{device_ip_address}/capture/ISAKMP/pcap从每个设备下载捕获并在Wireshark中进行分析。
我的数据包捕获显示,上面列出的ISAKMPstream量正在变得越来越分散 – 因为这些数据包是encryption的,一旦被分割,很难将它们放回到一起,事情就会崩溃。
将这些信息提供给ISP意味着他们可以进行自己的专注检查,并使其对防火墙进行一些更改。 原来,ISP阻止了边缘路由器上的所有 ICMPstream量,这意味着pathMTU发现被破坏,导致ISAKMP数据包碎片。 一旦他们停止了一蹴而就的ICMP,VPN就出现了(我希望他们的所有客户都能在一般情况下获得更好的服务)。
很可能你的ISP把你的stream量误解为P2P文件共享或者某种恶毒的东西。 看看M-Lab ,看看是否会发生这种情况。
AM_TM_INIT_XAUTH错误可能意味着您的预共享密钥不匹配。 (来源www.cisco.com/warp/public/471/easyvpn-nem.pdf)
所有需要build立一个IPSec会话的工作都是允许UDP端口注册到端口500(用于IKE)和ESPstream量(或UDP 4500用于NAT-T)。 这似乎是一个configuration问题,而不是一个ISP造成的问题。 如果您想要一些帮助validation,请随时发布您的相关configuration。