проблема при получении широковещательных пакетов MAC ID UDP - PullRequest
1 голос
/ 23 февраля 2011

В моем случае с аппаратного UDP-пакеты отправляются на конечный ПК - 192.168.13.250 (45141), но MAC-адрес - FF: FF: FF: FF: FF: FF.Теперь я привязался к этому IP-адресу назначения и порту без использования сокетов.Но я не могу получать пакеты UDP от ПК с помощью программы сокетов.Он не выходит из вызова recvfrom ().Все еще ждет.Если я изменю MAC-идентификатор на MAC-адрес компьютера назначения (00-12-d5-f6-3e-92) с использованием аппаратных настроек, тогда я смогу принимать пакеты UDP.Без изменения MAC-идентификатора, т. Е. Как принимать UDP-пакеты от широковещательного MAC-идентификатора.Любая помощь будет высоко оценен.Заранее спасибо.Ниже приведен журнал от Wireshark.

  • Со следующими UDP-пакетами не принимаются (Wireshark)

Кадр 3609 (7978 байт на проводе, 7978записано байтов) Ethernet II, Src: 0a: dc: 0a: dc: 0a: dc (0a: dc: 0a: dc: 0a: dc), Dst: широковещательная передача (ff: ff: ff: ff: ff: ff) ИнтернетProtocol, Src: 192.168.13.25 (192.168.13.25), Dst: 192.168.13.250 (192.168.13.250) Протокол пользовательских дейтаграмм, Src-порт: lbc-control (2780), Dst-порт: 45141 (45141) Данные (7936 байт)

  • При получении следующих пакетов UDP (Wireshark)

Кадр 3609 (7978 байт в проводе, 7978 байт перехвачено) Ethernet II, Src: 0a: dc: 0a: dc: 0a: dc (0a: dc: 0a: dc: 0a: dc), Dst: широковещательная передача (00: 12: d5: f6: 3e: 92) Интернет-протокол, Src: 192.168.13.25 (192.168.13.25), Dst: 192.168.13.250 (192.168.13.250) Протокол пользовательских дейтаграмм, порт Src: lbc-control (2780), порт Dst: 45141 (45141) Данные (7936 байтов)

1 Ответ

1 голос
/ 24 февраля 2011

В разделе 3.3.6 RFC 1122 говорится: «Когда хост отправляет дейтаграмму на широковещательный адрес канального уровня, IP-адрес назначения ДОЛЖЕН быть допустимым широковещательным IP-адресом или многоадресным IP-адресом.»

Если вычтобы ваш ПК получал пакет UDP с широковещательным MAC-адресом, вы также должны использовать широковещательный IP-адрес.

...