Add promiscuous mode capture support w/ tcpdump #3333
Labels
area: compatibility
Issue related to (Linux) kernel compatibility
area: networking
Issue related to networking
type: enhancement
New feature or request
#173 is now fixed and tcpdump mostly works except when using it with gVisor in promiscuous mode. This requires supporting a few missing AF_PACKET features namely
https://man7.org/linux/man-pages/man7/packet.7.html
PACKET_ADD_MEMBERSHIP
PACKET_DROP_MEMBERSHIP
Packet sockets can be used to configure physical-layer multi‐
casting and promiscuous mode. PACKET_ADD_MEMBERSHIP adds a
binding and PACKET_DROP_MEMBERSHIP drops it. They both expect
a packet_mreq structure as argument:
tcpdump also seems to use
PACKET_AUXDATA (since Linux 2.6.21)
If this binary option is enabled, the packet socket passes a
metadata structure along with each packet in the recvmsg(2)
control field. The structure can be read with cmsg(3). It is
defined as
Separately we may at some point need to add support for PACKET_RX_RING etc for high speed packet capture but that is a very low priority.
The text was updated successfully, but these errors were encountered: