Я начал проект, который требует использования пакетов сетевого уровня, таких как пакеты IP/ICMP/UDP/TCP.
Есть два основных подхода к этому: необработанные сокеты и Winpcap/libpcap.
Я знаю, что pcap устанавливает драйвер в ОС и позволяет программисту захватывать и отправлять пакеты. С другой стороны, есть необработанные сокеты, которые имеют некоторые ограничения в Windows 7 или выше.
Проекту необходимо отправить несколько пакетов IP/ICMP/UDP/TCP на маршрутизатор и проанализировать ответы, такие как IP-Identifier
, TTL
, ... . Также я хочу, чтобы он работал в Linux и Windows.
Можете ли вы привести сравнение этих двух подходов?