tcpdump抓指定网卡并输出到文件,超过100M默认新增一个文件
时间: 2025-02-23 22:35:18 浏览: 54
要使用`tcpdump`命令抓取指定网络接口(如`eth1`)的数据包,并将结果限制为特定条件(比如不包含源端口22,只对192.168.1.0/24的源IP感兴趣),并将结果输出到文件,可以按照以下方式操作[^1]:
```bash
tcpdump -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap
```
这个命令会捕获符合条件的数据包,每个输出文件不超过100MB。如果超过了这个大小,tcpdump会自动停止当前输出并开始新的文件。
若想在达到100MB时自动创建新文件,`tcpdump`本身并不支持此功能,但你可以结合其他工具(如`split`)来实现。一种可能的方法是在脚本中检测输出文件的大小,当大小接近100MB时调用`split`分割文件。
面试题相关问题:
1. 如何设置`tcpdump`监听特定主机的通信并记录到文件?
2. `tcpdump`如何仅监听某个特定目的地址的数据包?
3. 如果想要监控所有来自或去往特定主机的通信,应该如何配置`tcpdump`?
阅读全文
相关推荐









