我注意到,为了将一个数据包文件从远程FTP站点传输到Linux上的localhost,Wireshark可以始终以正确的顺序捕获数据包,但不能在具有混杂模式的RAW_PACKET上的tcpdump / libpcap或简单的recvfrom中捕获。
在前者中,"转移完成"响应始终在单个数据包之前(在不同的连接中,因此没有TCP重新排序),但在后者中数据包总是首先到达 - 根据协议和FTP服务器的实现,这显然是错误的,因为"传输完成& #34;在发送数据后发送 - 如果客户端在数据之前收到数据,则它会停止等待数据连接,但由于我可以清楚地看到数据,因此没有发生。所以libpcap / tcpdump实际上是以错误的顺序捕获数据包但在Wireshark中没有这样的问题?
这怎么可能? Wireshark也使用libpcap ......