Отправить пакет IP с Packet.Net и SharpPcap, но сгенерировать кадр Ethernet

Я пытаюсь отправить необработанный UDP-пакет с Packet.Net, но функция device.SendPacket(), кажется, принимает только PDU уровня канала связи, что означает, что мне нужно самому определить MAC-адреса источника и назначения. (Используя ARP или что-то)

Как я могу создать IP-пакет с Packet.Net, но сгенерировать правильный кадр Ethernet для меня?

1 ответ

Решение

Вам нужно знать Mac-адрес назначения. Как вы и предложили, лучший подход - использовать arp для обнаружения mac-адреса. Адрес источника вы можете получить от самого адаптера. Есть примеры как для arp, так и для сборки пакетов в исходных выпусках sharppcap и packet.net.

Крис

Автор sharppcap/packet.net

Другие вопросы по тегам