Цитата(misyachniy @ Oct 3 2013, 22:08)

С аппаратурой разобрался.
Использую Indy UDP + Builder C++;
Если устройство и ПК имеют одинаковое начало IP - 192.168 то можно и подслушать обменяться с устройством.
Но устройство еще выдает UDP пакет 283.9.9.1.
WireShark видит такой пакет, а моя программа нет.
Нигде не нашел в настройках как использовать Indy , для приема всех пакетов.
Можно ли использовать Indy в таком случае?
Для этого нужно переключить сетевую карту в неразборчивый (promiscuous) режим, и indy вам наверное в этом не поможет.
https://forums.embarcadero.com/message.jspa...D=465227#465227Цитата
No. You cannot do promiscuous sniffing with a UDP socket. You need to use
a RAW socket for that. Although Indy does have TIdRawBase and TIdRawClient
components for working with RAW sockets, they do not natively support the
API that is needed for actually putting the socket into promiscuous mode
(ie WSAIoctl(SIO_RCVALL)). I suppose you could write a custom component
that is derived from TIdRawBase to handle that, though. However, RAW sockets
are limited to admin users only, so you would be better off using a sniffing
library like winpcap instead.
Цитата(krux @ Jul 20 2013, 20:39)

через "unmanaged" switch - можно. Только предварительно придется "обработать" этот свич специально сформированными пакетами.
Хм, а как? Если обмен двусторонний и маки не бродкастовые, то не получится же. Или там что-то похитрее мухлежа с таблицей мак-адресов свича?