Задать вопрос
Papayaved
@Papayaved
FPGA, MCU

Как в Windows разрешить приём не поддерживаемых им Ethernet сообщений?

Мне надо сделать монитор GOOSE сообщений EtherType = 0x88B8 (сообщения не относятся к протоколу IP).

GOOSE сообщения я посылаю с микроконтроллера, Wireshark умеет их принимать и разбирает по полям. Для приёма я попробывал использовать библиотеку SharpPcap (C# обертка для winpcap). С помощью этой библиотеки я могу принимать GOOSE Ethernet пакеты, как массив байт начиная с MAC адресов, но только, если одновременно с моей программой запущен Wireshark (он также основан на библиотеке winpcap). Если Wireshark не запущен, то я могу принимать с помощью этой библиотеки широковещательный UDP пакеты, которые я посылаю с микроконтроллера для тестовых целей, но GOOSE пакеты до меня не доходят.

Сетевое оборудование, GOOSE сообщения пропускает, но Windows без вмешательства Wireshark нет.
  • Вопрос задан
  • 230 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
@Tabletko
никого не трогаю, починяю примус
Нужно перевести интерфейс в неразборчивый режим
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Papayaved
@Papayaved Автор вопроса
FPGA, MCU
Занимался Copy-Past и не разобрался с кодом который ставлял. Надо было открывать SharpPCap устройство в режиме Promiscuous mode

winPcap.Open(SharpPcap.WinPcap.OpenFlags.Promiscuous | 
    SharpPcap.WinPcap.OpenFlags.NoCaptureLocal, readTimeoutMilliseconds);


Моя сетевая карта не принимала чужие MAC адреса
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы