我喜欢玩英雄联盟,但最近出现了不可接受的延迟(ping 值超过 400)。找到游戏服务器的 IP(95.172.65.165)后,我尝试跟踪路由以查看是否存在任何问题。结果发现存在以下问题:
C:\>tracert 95.172.65.165
Tracing route to 95.172.65.165 over a maximum of 30 hops
1 <1 ms 1 ms 1 ms fritz.box [192.168.178.1]
2 25 ms 27 ms 25 ms lo1.dr8.d12.xs4all.net [194.109.5.205]
3 34 ms 28 ms 27 ms 1418.ae3.xr4.1d12.xs4all.net [194.109.7.17]
4 43 ms 26 ms 25 ms 0.so-0-2-0.xr1.tc2.xs4all.net [194.109.5.10]
5 25 ms 53 ms 30 ms xe-1-3-0.ams12.ip4.tinet.net [77.67.74.209]
6 31 ms 32 ms 37 ms xe-3-0-0.fra23.ip4.tinet.net [89.149.185.110]
7 33 ms 32 ms 33 ms internap-gw.ip4.tinet.net [77.67.73.166]
8 * * * Request timed out.
9 * * * Request timed out.
10 * * * Request timed out.
*snip*
30 * * * Request timed out.
Trace complete.
如您所见,它永远无法完成。我尝试了所有方法来改善连接,但我已经排除了所有可能(网卡驱动程序、调制解调器固件、线路问题)。我使用任何其他欧洲服务器时,ping 值约为 50,我以前使用这个服务器时,ping 值也差不多。但两周以来,延迟时间急剧上升。而且我不是唯一一个,许多人(主要是意大利人)都报告了同样的问题,同样的跟踪路由卡在了 internap-gw.ip4.tinet.net 上。
我可以做些什么来绕过这个问题并恢复之前良好的连接?
答案1
更改到特定目的地的路由的唯一方法是使用某种代理或其他 ISP。路由基本上由 ISP 之间的对等安排决定。
事实上,traceroute 永不结束仅仅意味着最后一个路由器或最后几个路由器没有报告数据包 TTL 过期,它并不能解释整体延迟(您的 400ms ping)。
答案2
您还可以请求您的 ISP(或 Tinet)使用备用 ISP 对等点重新路由您的流量。我过去做过一两次。上面,Tracert 在 Tinet 之后要去的地方是没有响应的 ISP。然而,Ping 会自动重新路由并找到到最终目标 IP 的备用路由(如果存在)。ping 工作正常意味着存在一个正常工作的连接。
答案3
这是技术上可能的。
您需要使用虚拟 ISP / DNS 服务器设置您的本地网络,并为特定 IP 目的地预先编程路由。
举个简单的例子:在 Windows 上,你可以通过编辑“hosts 文件”来绕过 DNS。这是绕过基于 DNS 的网站拦截器的经典方法。
hosts 文件基本上是驻留在 Windows 计算机上的迷你 DNS 服务器。这意味着文件中列出的任何地址都会绕过 DNS,因此 8.8.8.8(Google)无法看到您访问该特定页面的流量。
例如
如果 IP:www.abc.com-> “123.123.123.123”
更进一步说:您需要使用与 hosts 文件类似的技术,在计算机上设置从一个 IP 到下一个 IP 的重定向。
然后在 hosts 文件中或通过其他配置,您可以创建一个链接(理论上),这实际上会绕过 DNS 路由。(您的 ISP 无法绕过,但您能首先,无需查询您的 ISP。ISP 只是您和您的线路提供商之间的中间人。)
www.abc.com-> 255.255.255.255 -> 123.123.123.123
如果有人对实际方法示例感兴趣,我会关注这篇文章。