ICMP 互联网控制消息协议
Internet Control Message Protocol。网络层协议,设备之间用来报告问题和做基础探测。
不传应用数据 —— 它的工作是”网络元数据”:
- 目的不可达(网络挂了 / IP 不存在)
- 时间超时(TTL 用完)
- 重定向(请走那条路)
- Echo Request / Reply(就是 ping)
最熟悉的用途:
ping—— 测试目标是否在线、网络延迟多少traceroute/tracert—— 查看到目标经过哪些路由器
安全相关 —— ICMP 是攻击者的好朋友:
- ICMP flood —— 大量 ping 淹没目标
- Ping of Death —— 发超大 ICMP 包让对方崩
- Smurf —— 利用 ICMP 反射放大攻击
- ICMP 隧道 —— 把数据藏在 ping 包里偷传(很多 防火墙 默认放行 ICMP)
实操:很多公司选择直接禁掉公网 ICMP,虽然 ping 不通了但更安全。