wireshark在哪里捕获linux内核中的数据包?如果wireshark捕获了输出数据包,那么数据包是否会通过相应的接口发送出去? 换句话说,wirehark捕获的输出数据包是否可以在发送之前被丢弃?
答案 0 :(得分:2)
wireshark在哪里捕获linux内核中的数据包?
在UN * Xes上,它使用libpcap,在Linux上使用AF_PACKET sockets。 (在Windows上,它使用WinPcap,这是一个驱动程序加上libpcap的端口来使用驱动程序。)
如果wireshark捕获了输出数据包,那么数据包是否会通过相应的接口发送出去?
没有。网络堆栈将数据包交给相应的AF_PACKET套接字和驱动程序;驱动程序可能会丢弃数据包(例如,如果在以太网上,它会发生多次冲突并放弃),即使数据包已传送到AF_PACKET套接字。
换句话说,wireshark捕获的输出数据包是否可以在发送之前被丢弃?
是。见上文。