Если вы используете систему на основе UNIX [*], то самый простой механизм - libpcap
, который является частью проекта tcpdump
.
Ваш процесс потребуетсяпривилегии root для доступа к сетевому интерфейсу (как и в случае с необработанными сокетами).
Обычно вам придется самостоятельно декодировать кадры Ethernet, заголовки IP и т. д., хотя для большинства протоколовэто не , что сложно.
[*] Это на самом деле доступно и для Win32, но я сам не использовал его под Windows.