为什么 Ping 会显示我的操作系统?

use*_*605 5 networking ping

虽然我之前听说过几次,但我正在阅读一个关于 IDS(入侵检测系统)的网页,其中提到Hackers looking for a computer to exploit may ping yours to see if it’ll reply; if it does, the answer lets them know what operating system your computer is running- MacWorld

我觉得奇怪的是,ICMP ping 响应会显示操作系统,我推测答案可能是计算机响应的格式,但是在互联网上粗略搜索没有发现有用的信息,我完全希望答案是更复杂。

总之,我的问题是:ping 如何显示操作系统?

小智 5

每次 ping 任何 IP 地址时,都应使用操作系统消化此 PING 请求并生成回复。Ether 目标 IP 可能属于网络盒(路由器、L3 交换机或防火墙等)或机器(XP、UNIX、Linux、Mac)。

每台机器都有自己分配的 TTL 值,该值将逐跳递减。

例如,如果您 p​​ing 具有 128 作为默认 TTL 值的 Microsoft Windows 7 机器,您的机器将收到带有 TTL 值 128 的回声响应,这意味着这来自 Windows 机器,如果您收到值为 64 的回声响应,这是一台基于 Linux 的机器。

这是讨论 TTL/OS 的参考链接:单击