我是一名 Web 开发人员,正在尝试解决一个问题,我认为该问题要么是硬件问题,要么是网络问题,但各方面的沟通都表明他们已经检查了需要检查的内容,但问题仍然没有得到解决。
我们在计算机 A 上使用 AnyConnect 设置了连接。公司 B 为 AnyConnect 提供了配置文件。公司 A 在计算机 A 上打开 Cisco AnyConnect,并分配了 IP 11.10.26.10。公司 A 向公司 B 发送请求。公司 B 收到请求。公司 B 向服务发送响应http://11.10.26.10/Service.asmx,这是计算机 A 上的公司 A 的服务。然而,公司 B 发现端点不存在,无法连接到远程计算机。
从计算机 A ping 11.10.26.10 会导致常规故障。
A 公司称他们看到了从 wireshark 到 B 公司计算机 A 的跟踪路由。
C 公司运行正常,但是,C 公司使用的是旧的 Cisco VPN 客户端。对分配的 IP 地址执行 Ping 操作会收到回复消息。(编辑)C 公司也通过 B 公司旧的域名进行连接。
计算机 A 上的防火墙/防病毒软件已关闭。
B公司提供了网络防火墙规则,主要看起来是传出的规则。
(编辑)在 A 公司网络外的其他机器上使用具有相同凭据的 AnyConnect 会导致相同的“常规故障” Ping。
(编辑)捕获来自公司 B VPN/FW 设备的请求和响应表明请求已通过,但返回计算机 A 的响应导致重置。
(编辑)计算机 A 的路线打印显示公司 C 和公司 A 之间可能存在差异。这些已发送给公司 B 进行审核。
任何帮助都将不胜感激,我可以在可能的情况下提供更多信息。这可能与分割隧道有关吗?我可以让他们检查哪些区域?
答案1
这很可能不是硬件问题。听起来更像是网络问题。很可能是防火墙。执行 ping 时出现一般故障,这通常发生在网络适配器被禁用/不可用(可能不是您的问题)、适配器可用但计算机 B 没有到目的地(计算机 A)的路由,或者基于主机的防火墙(在本例中为计算机 B)阻止了到目的地的传出流量(我敢打赌就是这个原因)。
如果计算机 B 运行的是 Windows,请在命令提示符或 powershell 上执行“route print”,查看是否存在包含计算机 A 的 IP 地址的网络(目标 0.0.0.0 和网络掩码 0.0.0.0 包含任何地址)。如果没有到计算机 A 网络的路由,甚至没有四个零的路由,那么这就是您的问题。只需使用“route add ddd.ddd.ddd.ddd mask sss.sss.sss.sss nnn.nnn.nnn.nnn metric # -p”即可轻松修复,其中“d”是目标网络(即 11.10.26.0)或单个 IP(11.10.26.10),“s”是网络的子网掩码(255.255.255.0)或单个 IP(255.255.255.255),“n”是下一跳 IP 地址(或知道目标网络的网关),# 是路由的所需度量(比较路由打印输出中的度量... 较低的度量优先)。如果计算机 B 是基于 Linux 的,则根据具体情况,“ip route”或“ip route show”应向您显示路由。要修改它们,请按照https://www.cyberciti.biz/tips/configuring-static-routes-in-debian-or-red-hat-linux-systems.html
配置基于网络或基于主机的防火墙的管理员都不愿意承认自己配置的防火墙正在阻止某些流量。这可能是问题所在,因为计算机 C 在连接时没有问题。这意味着计算机 B 可能阻止了某些流向计算机 A 的网络或唯一 IP 的传出流量。要 100% 确定是防火墙的问题,最简单的方法可能是查看防火墙日志(如果管理员配置了日志记录)。您还可以在端口 500、50 或您用于使用 AnyConnect 连接的任何端口上的防火墙规则列表顶部添加匹配并允许计算机 A 的网络/IP 的规则。我还会包括 ICMP 以用于测试目的。您可以采取的另一个诊断步骤是监控计算机 B 和计算机 A 之间设备上的响应流量。您应该看到计算机 A 与计算机 B 通信,您还应该看到计算机 B 在计算机 A 请求的所有端口上回复计算机 A。大多数安全人员只允许端点正常通信所需的最少流量(他们应该始终保持这种心态)。然而,这种思维方式有时会损害 CIA 三元组中的可用性部分。有时安全人员会忘记在此处或此处添加一两条防火墙规则。没有完美的管理员。一旦您找到解决方法,请告诉我们解决方法是什么。