https://www.tcpdump.org/index.html#documentation有 pcap、tcpdump 和 rpcapd 的联机帮助页,但我没有找到三者之间的关系。
pcap 是一个用于实现 rpcapd 客户端的 C 库吗?
tcpdump 是 rpcpad 的客户端吗,因此依赖于 rpcpad?
tcpdump 是在 pcap 中实现的吗?
答案1
pcap
是一个数据包捕获库;它为跨多种不同操作系统的数据包捕获提供了一个通用接口。
tcpdump
已实施使用 pcap
。
rpcapd
是一个远程数据包捕获守护进程,也使用pcap
;实现它允许在由另一台主机控制的一台主机上捕获数据包。pcap
可以连接到rpcapd
并用它来捕获数据包;基于sopcap
的工具可以是rpcapd
(但不一定是)的客户端。
tcpdump
依赖于pcap
,但又不依赖于rpcapd
;例如tcpdump
Debian 中的相关包甚至不发货rpcapd
。如果pcap
构建有远程支持,tcpdump
则可以使用它来连接到rpcapd
.