参考答案
结论:ping基于ICMP协议发送回声请求与应答报文,用于检测网络连通性与往返时延。核心要点:1. 源主机构造ICMP Echo Request包(类型8),目的主机回显ICMP Echo Reply(类型0);2. 封装在IP包中,无传输层端口,由内核网络栈处理;3. 命令记录TTL、RTT,比对序列号判断丢包;4. 与TCP/UDP不同,ICMP属网络层,可能被防火墙丢弃。原理:ping调用socket(AF_INET, SOCK_RAW, IPPROTO_ICMP)发送,接收校验和;若禁ICMP则ping不通但TCP可能通。