当前位置:首页 > 问答 > 正文

网络分析 数据包捕获 linux抓包软件及常用工具推荐

🔍 网络分析 | 数据包捕获 — Linux抓包软件及常用工具推荐

场景引入
深夜,你的服务器突然响应变慢,日志里却找不到明显异常,这时候,你需要像网络侦探一样「抓包」—— 直接监听原始数据流,看看究竟是哪个小可爱在偷偷吃带宽 🕵️‍♂️,Linux作为网络分析的黄金平台,提供了超多强大工具,今天我们就来盘点那些「抓包界」的瑞士军刀!


📦 核心工具:Tcpdump(命令行王者)

特点:轻量级、预装率高、灵活过滤

# 抓取eth0网卡的HTTP流量(显示内容)
tcpdump -i eth0 port 80 -A
# 抓取特定IP的流量并保存到文件
tcpdump host 192.168.1.100 -w suspect.pcap
# 高级玩法:组合过滤(源IP+目标端口)
tcpdump src 10.0.0.5 and dst port 443

适用场景:快速排查问题、服务器无GUI环境
小技巧:用-n禁用DNS解析能显著提升速度

网络分析 数据包捕获 linux抓包软件及常用工具推荐


🎨 Wireshark(图形化扛把子)

特点:可视化分析、协议解码、支持千种协议

虽然Wireshark有图形界面,但Linux下可以通过tshark命令行版本低调运行:

# 实时显示HTTP请求的域名和路径
tshark -i eth0 -Y "http.request" -T fields -e http.host -e http.request.uri

优势

网络分析 数据包捕获 linux抓包软件及常用工具推荐

  • 颜色标记异常包(如重传、乱序)🚨
  • 支持「追踪TCP流」还原完整会话
  • 统计功能强大(IO图表、端点排名)📊

注意:生产环境建议先用tcpdump抓包,再到本地用Wireshark分析


🚀 高性能替代:

Termshark(TUI版Wireshark)

像用top命令一样操作抓包数据,适合SSH环境:

termshark -i eth0 port 22  # 监控SSH流量

nDPI(深度包检测)

不仅能抓包,还能识别Netflix、TikTok等应用流量:

网络分析 数据包捕获 linux抓包软件及常用工具推荐

ndpiReader -i eth0 -p 1  # 实时分类流量类型

🛠️ 辅助工具包

工具 用途 示例命令
ngrep 正则匹配payload内容 ngrep -q 'password' port 21
hping3 手工构造数据包测试防火墙 hping3 -S -p 80 靶机IP
iftop 实时流量TOP榜 iftop -n -i eth0
jq 解析JSON格式的抓包数据 tshark -T json | jq '.[]'

💡 实战技巧

  1. 缩小范围:先用ping/traceroute定位问题节点,再针对性抓包
  2. 过滤艺术
    • 排除自身流量:not host 本机IP
    • 抓DNS查询:port 53
  3. 保存证据-w保存原始pcap文件,方便后续复盘

🚨 注意事项

  • 权限问题:普通用户需sudosetcap赋予抓包权限
  • 性能影响:高频抓包可能加剧网络延迟,建议限速:
    tcpdump -i eth0 -G 300 -W 1 -w hour_capture.pcap  # 每5分钟分段保存

发表评论