网络故障排查工具与方法详解
1. 使用 ngrep 进行高级数据包嗅探
ngrep 是一款强大的数据包嗅探工具,它能帮助我们对网络数据包进行精细搜索。以下是一些使用示例:
-特定内容匹配:
# ngrep -qpd eth0 '1234' icmp此命令在 eth0 接口上,对 ICMP 协议的数据包进行嗅探,匹配数据负载中包含 ‘1234’ 的内容。其中,-q表示安静输出,只显示数据包的头部和负载,省略分隔每个数据包的哈希标记;-p关闭混杂模式,因为在交换式网络中混杂模式通常不起作用;-d指定网络接口为 eth0。
-限制显示字节数:默认情况下,ngrep 会显示整个数据包,最大大小为 65,536 字节。若想查看较小字节数的数据包,可使用-S选项。例如:
# ngrep -qpd -S 156 '' tcp port 80该命令捕获 HTTP 头部,仅显示前 156 字节,让我们能快速了解网站访问者使用的浏览器信息。
-反向匹配:ngrep 的-v选项可实现经典的 grep 反向匹配,即“不匹配此内容”。例如,排除 Asterisk 服务器上的所有 SIP INV