Cisco AnyConnect 客户端通过 ASA 内部区域的 L3 设备连接到 Internet(默认网关位于远程网络上)

网络工程 思科-ASA 思科-anyconnect
2022-02-18 22:03:59

我正在测试 AnyConnect 的实施,其中 AnyConnect 客户端在建立 IPSec VPN 隧道后,必须通过与 RA VPN 客户端位于同一网络的 L3 设备退出到 Internet,在 ASA 的内部接口后面。

没有拆分隧道,定义了tunnelall。

连接后,VPN客户端会得到合适的默认网关,从IP地址池中,得到以1结尾的地址。这就是我的L3设备的地址。

连接后,VPN 客户端可以 ping 通 ASA 内部接口的所有主机,包括默认网关。

此外,我可以从内部网络上的主机 ping VPN 客户端。

但是,我无法退出互联网。可能是什么问题呢?

当我尝试连接时,在日志中我看到消息... Flow is a loopback...类似的东西。

我应该注意什么?

2个回答

Flow is a loopback日志消息表明流量在同一个 ASA 接口上进出默认情况下,ASA 不允许此流量。

要解决此问题,您需要两件事:

  • 使用命令明确允许 ASA 上的此流量same-security-traffic permit intra-interface
  • 以及用于 Anyconnect 客户端(假设它们在 中VPN_Pool object-group)访问 Internet 的动态 NAT 规则。例如:(nat (outside,outside) after-auto source dynamic VPN_Pool interface我假设您的面向互联网的界面在外面)。

我希望它是有帮助的,你可以解决它。

好的,我忘了为我的隧道流量配置默认路由。

route <if_name> 0.0.0.0 0.0.0.0 <gateway> [<metric>] [tunneled]

我认为远程 vpn 客户端获得正确的默认网关并且他可以 ping 它就足够了。我忽略了必须查阅 ASA 的路由表将数据包发送到何处的事实。并且 ASA 只有通向外部接口的默认路由。在我之前的实施中,这已经足够了,因为来自我的 vpn 客户端的 Internet 流量在 ASA 的外部接口上进行了隧道传输和本地化。我的错。