Rud*_*lph 3 networking internet
我今天正在处理我的路由器固件,需要重新启动它才能完成更新。然后我注意到我的互联网断开了一分钟,启动完成后计算机又重新上线。它怎么知道它在线的如此精确?
它是否会连续 ping 测试到您的网关,然后再到某个地方的 Internet?如果是这样,这是否会导致世界上某些服务器上的 ping-of-death?
它是否会连续 ping 测试到您的网关,然后再到某个地方的 Internet?
不。
这不像您需要互联网连接才能让计算机检测它是否连接到网络本身。尝试拔掉路由器(或宽带调制解调器)和更大世界之间的电缆;您会注意到计算机没有注意到任何断开连接,因为就它而言,您仍然连接到网络。网络不允许您访问一个特定的网络(Internet)是另一回事。(您可以使用与 Internet 上使用的完全相同的技术和完全相同的设备来构建一个完全独立的网络。它不会是 Internet,而是用于计算机,除非您探测具有特定功能的实际特定已知主机已知属性,它将与 Internet 完全无法区分。)
或者使用任何随机供电的网络交换机并在它和您的计算机之间连接网络电缆,但没有别的;有一个链接,根据计算机,但它会让你绝对无处可去。
计算机确实检测到的是网络端口上的电气链路丢失。从技术上讲,它检测物理或可能的数据链路层链路的丢失。这个事实(这里的简化解释)由硬件报告给操作系统,然后操作系统可以以任何它认为合适的方式向用户报告,包括根本不报告。
例如,普通 Linux 只是将类似kernel: networkdriver 0000:02:00.0: eth0: link down(其中0000:02:00.0是网卡的系统硬件标识符,eth0是逻辑标识符)的内容发送到系统日志中。像 NetworkManager 这样的用户空间应用程序可以获取相同的信息并以更用户友好的形式报告它。如果用户已登录,Windows 将获取大致相同的信息,但将其显示在弹出消息中,说明“检测到网络断开连接”。
您可以通过几种不同的方式\xe2\x80\x9cdisconnected\xe2\x80\x9d,因此它检测您已断开连接的方式可能会有所不同:
\n\n物理上断开的电缆
\n\n如果您的有线连接在物理上断开,那么显然 NIC 会知道电路已被切断。这就像一盏灯因为插头被拔掉而熄灭。
逻辑上断开的电缆
\n\n如果您的有线连接在逻辑上断开(电缆仍然插入,但调制解调器或路由器已关闭),那么 NIC 仍然知道,因为电路在技术上仍然被切断。这就像灯仍然插着,但电源熄灭了。您\xe2\x80\x99 还会注意到 NIC(图 1)和路由器(图 2)上的链接状态 LED 关闭。
逻辑上断开的无线连接
\n\n对于无线连接来说,它\xe2\x80\x99 有点复杂。如果无线调制解调器或路由器出现故障,无线适配器可以检测到丢失的连接,因为即使没有物理连接,无线电波的行为仍然类似于直接的物理连接,并且 NIC 无线电模块中的电路被设计为能够检测无线信号或缺乏无线信号。(当然,具体细节超出了本网站的范围,更适合电气工程。)
与互联网断开连接
\n\n您可能会遇到断线的另一种方式是与整个互联网断线。这与逻辑断开类似,因为网络适配器仍处于连接状态。\xe2\x80\x99s 的不同之处在于,在这种情况下,即使调制解调器或路由器仍然处于打开状态并处于活动状态,您甚至可以访问本地网络(如果存在)。这确实是通过ping确定的,但不是网关,而是网络外的服务器;也就是说,互联网上的东西。
\n\n在 Windows 中,从 Vista 开始,您是否连接到 Internet 是通过定期 ping 微软服务器来完成的。这是由 NCSI 完成的,不要与具有类似缩写的电视节目混淆。网络连接状态指示器是一项 Windows 功能,它从两个 Microsoft URL 之一获取虚拟文件(取决于您使用的是 IPv4 还是 IPv6)。如果它可以获取该文件,则不会执行任何操作,但如果失败,则表明缺少 Internet 连接(图 3)。
\n\n不过,它应该只是偶尔执行一次,而不是连续执行(请参阅NCSI 页面的触发器部分),但是有些人发现它偶尔会发生一次(尽管这可能是由于不稳定的连接造成的)保持记录,以便 Windows 不断重新检查)。不过,您可以将其更改为您自己的服务器或完全禁用它。
图 1:以太网端口上的链路 LED
\n\n
图 2:路由器上的连接 LED
\n\n
图 3:Microsoft\xe2\x80\x99s NCSI 服务报告缺少 Internet 连接
\n\n
| 归档时间: |
|
| 查看次数: |
801 次 |
| 最近记录: |