【发布时间】:2010-08-21 01:13:34
【问题描述】:
在其中一个系统 (Windows) 中,如果我 ping 到一个特定的公共论坛站点,[这里说 testsite.com],那么我会收到一条请求超时消息。但是,如果我只是将该站点地址放入带有 http:// 的浏览器(使用 IE6,但它不是特定的),那么链接工作正常并且浏览器转到网页。 浏览器的不同之处在哪里?
【问题讨论】:
标签: windows
在其中一个系统 (Windows) 中,如果我 ping 到一个特定的公共论坛站点,[这里说 testsite.com],那么我会收到一条请求超时消息。但是,如果我只是将该站点地址放入带有 http:// 的浏览器(使用 IE6,但它不是特定的),那么链接工作正常并且浏览器转到网页。 浏览器的不同之处在哪里?
【问题讨论】:
标签: windows
该站点可能位于阻止 ICMP 请求(例如 ping)的防火墙后面。您的浏览器发出的 HTTP 请求通过 TCP/IP 进行。
【讨论】:
Ping 发送 ICMP 请求包。网络服务器可以选择忽略它而不响应,而不是使用 ICMP 响应进行响应。
网络浏览器使用 HTTP,这意味着它通过使用 SYN/SYNACK/ACK 交换在端口 80 上打开 TCP 连接。
这两个进程完全不同且独立,因此您可以独立启用/禁用任何一个。
【讨论】:
浏览器使用 TCP/IP 协议与服务器通信 HTTP 请求,当您使用 ping 时,它使用 ICMP 协议,并且似乎服务器位于丢弃 ICMP Echo Requests 的防火墙后面。
【讨论】:
ping 本质上是通过 IMCP(一种协议)发送的“回显请求”数据包。对 ping 的正确响应是一个方便的“回显响应”数据包。但是,如果您发送回显响应数据包,人们就会知道您的存在。现在,当您运行 Web 服务器时,这没什么大不了的,但是当您运行标准桌面时,您不希望人们知道您的存在。结果是许多有安全意识的人会默认禁用 ping 响应,即使在服务器机器上也是如此。
【讨论】:
公共服务器通常不响应 ping 请求。毕竟,人们不会在打开浏览器之前输入 ping testsite.com,对吧?因此,回答这些站点的 ping 操作没有任何意义。另一方面:
几年前,一个孩子设法在几个小时内同时让 amazon.com 和其他几个如此大的网站崩溃,让数百台机器用大量的 ping 请求轰炸它们。
从那时起,管理员就不再认为 ping 很友好了。
【讨论】:
不是浏览器。您和阻止 ping 请求的服务器之间可能存在防火墙,或者服务器可能根本没有响应 ping。这是一种常见的安全措施。
【讨论】:
Ping(也称为 ICMP)和 http 协议的工作方式完全不同,并且使用不同的端口。沿途不同的设备/防火墙可能会阻止 ping,但大多数都允许 http 通过。
【讨论】:
正如其他人所说,Ping 数据包是一种不同于“HTML”数据包的数据包类型 - Ping 数据包是 ICMP/IP 而 HTML 是 TCP/IP。您和网站之间的各种东西都可以选择阻止 ICMP 数据包,同时允许 TCP 数据包通过。
【讨论】: