使用特定 ISP 连接到 VPN 后,我无法访问www.google.com。
ping www.google.com
不起作用。这是输出:
$ ping www.google.com
PING www.google.com (216.58.200.196): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
但其他网站www.youtube.com运行正常。
如果我更换 ISP 或断开 VPN,一切都能正常工作。
我也尝试使用 来traceroute
找出请求在不同条件下经过的 IP,但并没有取得太大成功。对于 ,traceroute www.google.com
使用特定的 VPN 和 ISP,请求似乎会三次返回到同一个 IP,然后发生超时。
我该如何解决这个问题?
答案1
听起来您到目前为止已经做了很多故障排除工作,做得很棒!
具体来说,您现在已经使问题可重现,并且进一步将问题的情况缩小到:
- ISP A(随机挑选名称),并且
- VPN B(随机选择名称),并且
- 正在连接至www.google.com。
听起来好像只要更改其中任何一个,问题就不会发生,所以这是这些因素的某种组合。这意味着您可以开始收集有关这种情况的数据,并且可以与任意数量的其他情况进行比较(ISP C、未连接到 VPN B 或连接到其他站点除外)www.google.com) 并寻找差异。 https://www.youtube.com这是一个特别好的选择,因为 YouTube 归 Google 所有。
进行实际诊断。
您提到:“不起作用”,但没有提供详细信息(错误消息是什么,发生了什么?)。这些将有助于弄清楚发生了什么。
当你尝试连接到(例如)时会发生什么www.google.com当您连接到 VPN 时:
- 您的计算机尝试解析主机名www.google.com(它使用什么解析器?如果您没有使用 ISP A 连接到 VPN B,这些解析器会有所不同吗?这些解析尝试是否通过 ISP A 加密,然后发送到 VPN B 重新发送,或者您是否使用未加密的 ISP A 解析器?)
- 然后,您的计算机尝试建立连接,大概是使用通过 ISP A 的加密数据包。(这些数据包是否加密?它们与最终发往www.youtube.com?)
- 这些数据包到达 VPN B 的系统,在那里被解密并以未加密的形式重新发送(至少 VPN 层是未加密的)。(VPN 提供商是否以不同的方式处理这些消息?(它可能可以看出您正在联系 Google)Google 是否出于某种原因以不同的方式处理来自 VPN 提供商的请求?)
- 然后www.google.com必须回复这些数据包。(此回复是否意味着当它通过 VPN B 然后是 ISP A 时无法成功穿越反向路径?)
在这些可能出现问题的位置中,有些选项的可能性较小。