Dim*_*ims 55 networking internet
是否有任何常见的始终可用的服务器,我可以将其设置为在自动模式下 ping 以检测互联网是否可用?比如谷歌之类的?可能是 8.8.8.8?
我的具体情况是我使用的是双 WAN 路由器。每个 WAN 都连接到 ISP 之一。当我的钱在其中一个 ISP 上结束时,它并没有阻塞通道。相反,它会重定向到警告页面。因此,路由器认为互联网已开启,因为数据正在传输。此路由器的其他选项是 ping 某个地址以检查互联网是否打开。
我想知道,如果我ping 8.8.8.8,我会不会因为使用不当而被谷歌封禁?我怀疑,谷歌可能有一些配额。如果我太频繁地 ping 它的名称服务器,那么我有时会收到 DNS 拒绝。
小智 58
尝试 ping 8.8.8.8,它是 Google 的主 DNS 服务器。我总是 ping 它以验证我的连接,但我从未发现它关闭。或者,您可以尝试 8.8.4.4,即 Google 辅助 DNS。
Mar*_*wul 39
你可以做微软所做的:检查
http://www.msftncsi.com/ncsi.txt
返回“Microsoft NCSI”。(这将验证您是否可以从站点获取正确的数据,例如,不是 Wifi 门户或其他网站)。
您还可以检查(例如 ping)dns.msftncsi.com
指向 131.107.255.255(这将验证 DNS 是否正常工作)。
请参阅http://technet.microsoft.com/en-us/library/ee126135
注意:如果需要,您还可以访问http://www.msftconnecttest.com/redirect以通过强制门户。
LSe*_*rni 14
当 ISP 进入流量过载状态时,您想 ping 不可路由的“最近”固定 IP。在我的系统上,我可以通过 ADSL 身份验证失败来模拟这种情况。在这种情况下,通过比较traceroute -n
正常和异常情况下的结果,我看到没有响应的 8.8.8.8(或任何肯定的外部站点)的第一跳是 151.6.68.45,这是我的 ISP 基础设施的一部分。
通过将该IP 用作“check-alive”主机(在重复测试以确保它已修复后),我可以检测 ISP 异常,而不会在 ADSL 正常的情况下出现误报,但 ISP 路由有问题.
当然,我可以使用8.8.8.8的目的,理由是如果我不能达到谷歌的基础设施,我不关心的原因,我还不如与备份路由器尝试。
“互联网可用”比简单的“8.8.8.8(或其他IP)是否可达”要复杂得多。
对于快速、肮脏且并不总是可靠的检查,ping 8.8.8.8 很好。但是,看到您如何使用数字 IP 而不是域名,您已经意识到您可能具有 IP 连接性,但由于 DNS 问题仍然“没有互联网”。
完整的诊断必须在您的 PC 附近开始。
例如在家里的 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
Run Code Online (Sandbox Code Playgroud)
现在尝试ping DNS。它应该是可达的。更好的是,运行一个简单的 DNS 检查。为了避免 DNS 缓存,我有时会使用一些域,无论如何都会回答所有查询。所以例如
$ host randomasdfdsasdqwerty987667.godaddy.com
randomasdfdsasdqwerty987667.godaddy.com has address 97.74.104.201
Run Code Online (Sandbox Code Playgroud)
而如果 DNS 服务器不可靠,则相同的查询可能会返回 wifi 的强制门户地址
$ host randomasdfdsasdqwerty987667.godaddy.com
captiveportal.homenet has address 192.168.4.200
Run Code Online (Sandbox Code Playgroud)
或 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
Run Code Online (Sandbox Code Playgroud)
或诸如Down Detector 之类的网站将让我了解“互联网天气”。
实际上,在我的主服务器上有一个 Squid 缓存,错误页面包含从站点统计中成功检索到的最后数据,所以我可能会看到类似
Google.com is not reachable
STORM ALERT: 12 out of 14 sites are unreachable!
Run Code Online (Sandbox Code Playgroud)
正如一对夫妇所说,您可以 ping,例如,Google 主 DNS 以获得响应,但不依赖于一个地址。地址(出于多种原因)可能会关闭一段时间,在此期间您的软件将报告“无连接”,而实际上您的网络连接可能没有遇到任何问题。您应该始终尝试与多个地址进行通信,以便排除误报。
我会写一个函数来 ping 一个地址一次,如果失败转移到另一个(比如,三个 IP),当你得到几个肯定的答复时,该函数应该通知你的应用程序/脚本互联网可用,并且继续。
归档时间: |
|
查看次数: |
83624 次 |
最近记录: |