格式与封装参数转换
抓包文件的格式转换同样由编辑工具完成:pcap 与 pcapng 互转、调整抓取长度、改变链路类型,用 -F 指定输出格式。碰到只认 pcap 的老工具时,用它降级即可,但要清楚这是一次有损转换,接口与注释这类元数据会一起消失。
基本信息
| 适用平台 | Wireshark 自带的命令行工具 |
|---|---|
| 关键参数 | -F 指定输出格式,例如 pcap |
| 常见用途 | pcapng 转 pcap、调整抓取长度 |
| 主要风险 | pcap 单文件只支持一个接口 |
典型使用场景
- 老工具或平台只接受 pcap 格式
- 交付给第三方分析时统一格式
- 调整抓取长度以适配特定工具
- 归档时统一成一种格式便于管理
- 排查格式不兼容导致的分析工具报错
转换操作
转换操作
editcap -F pcap a.pcapng b.pcap
# pcapng 降级为 pcap,注意 pcap 单文件只支持单接口
editcap -s 128 a.pcapng trunc.pcapng
# 调整抓取长度,只保留每个包的前若干字节
capinfos a.pcapng b.pcap
# 转换后用元数据工具对照输入与输出,核对包数是否一致风险对照
| 转换方向 | 风险 | 后果 |
|---|---|---|
| pcapng 转 pcap | 丢失接口块等元数据 | 多接口来源无法区分 |
| 调整抓取长度 | 截断报文内容 | 深度解析时字段缺失 |
| 接口类型不同 | 转换可能受限 | 部分报文无法完整表达 |
| 格式识别错误 | 扩展名与内容不一致 | 工具报错或误读数据 |
降级到 pcap 会丢掉接口块、注释等元数据,原文件务必保留一份。这类转换的原则是只生成新文件,不要在原始文件上覆盖,否则后续发现丢信息就无法挽回了。
转换后要核对包数是否与输入一致。接口丰富的文件强行降级时工具会拆分或给出提示,忽略提示会得到不完整的文件,而且往往从表面上完全看不出来。
操作检查
- 转换前确认目标工具支持的格式与版本
- 保留原始文件,输出写到一个新文件
- 转换后用元数据工具比对包数与时间范围
- 涉及多接口的文件避免盲目降级
- 交付时说明格式与转换参数,便于复核