似乎对 ping 的作用存在误解。 Ping 正在发送 ICMP 回显请求数据包并等待相应的响应。 ICMP 是与用于 HTTPS 的 TCP 完全不同的网络协议。
主机可以响应 HTTPS 连接尝试但不响应 ping(例如,因为主机本身的防火墙或您与您尝试 ping 的主机之间的某处的防火墙丢弃了 ICMP 回显请求数据包或响应) ,反之亦然(例如,因为主机没有运行 Web 服务器,或者对它的访问受到限制/防火墙)。
Ping 是查看您是否可以访问配置为响应 ICMP 回显请求数据包的主机的正确工具(如果您可以合理地假设您与主机之间或主机上没有防火墙,则过滤掉这种类型的网络流量),并确定您和主机之间的响应时间。
但是,如果您想测试主机是否响应某个 TCP 端口(例如,HTTP Web 服务器的端口 80,或 HTTPS Web 服务器的 443),您可以在终端中使用 Telnet:
telnet www.google.com 80
如果有服务器在该 TCP 端口上侦听,您将看到如下内容:
Trying 173.194.69.106...
Connected to www.google.com.
Escape character is '^]'.
如果它是一个 Web 服务器,你甚至可以根据需要与它进行 HTTP 通信:
GET /
它会回复:
HTTP/1.0 302 Found
Location: http://www.google.com/
Cache-Control: private
Content-Type: text/html; charset=UTF-8
(...)
既然我们已经解决了这个问题,问题仍然是为什么您的主机确实通过以太网响应 ping,而不是通过 Wi-Fi。
一个原因可能是,许多网络在使用有线以太网连接时允许不受限制地访问所有内部主机,但设置了防火墙来限制从无线网络到 LAN 或 DMZ 上的主机的连接。强>
您尝试 ping 的主机位于何处?网络流量如何从以太网和 Wi-Fi 网络路由到您的主机?