![Cisco ASA 5510 Sonicwall Pro 2040 - IPSec 半工作](https://linux22.com/image/532752/Cisco%20ASA%205510%20%20Sonicwall%20Pro%202040%20-%20IPSec%20%E5%8D%8A%E5%B7%A5%E4%BD%9C.png)
好吧……我遇到了一个非常奇怪的 IPSec 问题(至少对我来说很奇怪 :-))。我有一台连接到 ASA 5510 的 Sonicwall Pro 2040。当流量从网络的 Sonicwall 端发起时,它工作正常……但如果它源自 ASA 端,就不行了。例如,Sonicwall 上 PC-A 的 icmp echo 被 ASA 上的 PC-B 接收。PC-B 以 icmp 回复进行响应,PC-A 收到它。如果 PC-B 向 PC-A 发送 echo 请求,它甚至不会穿越 IPSec 隧道(通过没有跨线路生成 ESP 流量进行验证)。PC-B 上的 wireshark 显示 icmp echo 请求上的源 IP 和 MAC 与 icmp echo 回复上的源 IP 和 MAC 完全相同……有什么想法可能导致这种行为?:(
附加说明:如果我清除 ASA 上的 isakmp 并尝试从 PC-B ping 到 PC-A,它不会尝试建立隧道……它似乎没有意识到此流量的目的地是 Sonicwall 网络,即使我发回回复时它也能正常工作。
另一点需要注意的是:我使用与 IPsec 隧道完全相同的 ACL 在 ASA 上运行了数据包捕获,并且它与来自 PC-B 的 icmp 请求数据包匹配……因此,出于某种原因,即使匹配,它也不会尝试将它们发送到隧道的另一侧。
答案1
啊哈……显然是因为我在内部接口上设置了发夹(在将其发送到远程站点之前进行测试),而默认路由是在外部接口之外,所以我需要在那里放置一个静态路由,以将 VPN 流量路由回内部接口,然后它会通过隧道发送。我在使用数据包跟踪器时注意到了这一点,它提到了流量……我猜由入站 VPN 连接创建的流量可以优先于静态路由……很高兴知道 :-)