具体情况
您要ping ISP进入流量过载状态时无法路由的“最近”固定IP。在我的系统上,我可以通过使ADSL身份验证失败来模拟这种情况。在那种情况下,通过比较traceroute -n
正常和异常条件下的结果,我发现到8.8.8.8(或任何肯定是外部站点)没有响应的第一跳是151.6.68.45,这是我ISP基础结构的一部分。
通过使用该 IP为“检查活动”主机(重复测试后,只是要确定它是固定的),我可以检测ISP异常没有得到一个假阳性的情况下,ADSL是确定的,但ISP路由有烦恼。
当然,我可以有意使用8.8.8.8 ,理由是如果无法访问Google的基础架构,我不在乎原因,我不妨尝试使用备用路由器。
一般情况
“仅互联网可访问” 比“ 8.8.8.8(或其他IP)可访问” 要复杂得多。
对于快速,肮脏且不总是可靠的检查,可以ping 8.8.8.8是好的。但是,当您看到如何使用数字IP而不是域名时,您已经意识到,由于DNS问题,您可能具有IP连接并且仍然“没有Internet”。
一个完整的诊断将不得不在您的PC附近开始。
- 查询本地网络配置并检索网关和DNS服务器。
- ping网关。它应该可以到达。如果没有,那就是本地问题。
- 使用肯定是外部地址的短TTL(实际上是由hping提供的TCP跟踪路由)运行traceroute,可以使用8.8.8.8。
- 您希望看到网关之后,一些额外的节点正在响应。
例如在家里的Windows XP中,我有:
1 <1 ms <1 ms <1 ms 192.168.4.200 -- (constant) Home Linux box (gateway)
2 <1 ms <1 ms <1 ms 192.168.0.1 -- (constant) ADSL modem
3 * * * * -- WAN interface, always fails; expected
4 * 6 ms 6 ms 151.6.64.30 -- (varies) ISP gateway
现在尝试ping DNS。它应该可以到达。更好的是,运行简单的DNS检查。为了避免DNS缓存,我有时会使用某些域,无论如何都可以回答所有查询。所以举个例子
$ host randomasdfdsasdqwerty987667.godaddy.com
randomasdfdsasdqwerty987667.godaddy.com has address 97.74.104.201
而如果DNS服务器不可靠,则相同的查询可能会返回wifi的强制门户的地址
$ host randomasdfdsasdqwerty987667.godaddy.com
captiveportal.homenet has address 192.168.4.200
或127.0.0.1,甚至是错误。
如果DNS失败,我可以尝试DNS IP地址(或其他DNS,例如OpenDNS的DNS)的跟踪路由。这不仅可以告诉我问题是DNS还是ISP,而且通常还可以使我解决中断问题。
如果此时一切正常,我就知道连接正常。对于某些网站,它可能仍然会失败。我现在需要isup.me
做的只是:-),然后检查
http://www.isup.me/www.google.com
http://www.isup.me/mail.google.com
或诸如Down Detector之类的网站将使我了解“ Internet天气”。
实际上,在我的家庭服务器上有一个Squid缓存,错误页面包含从站点统计信息中成功检索到的最后一个数据,所以我可能会看到类似
Google.com is not reachable
STORM ALERT: 12 out of 14 sites are unreachable!
就像上周五在意大利这里发生的一样