Я разрабатываю драйвер NDIS. NDIS отправляет пакет в минипорт. Как я узнаю, что пакет поступает из NDIS, это одноадресный, многоадресный или широковещательный пакет. Как узнать, что пакет является одноадресной, многоадресной или широковещательной.unicast, multicast, broadcast packet
0
A
ответ
1
Если вы пишете драйвер Ethernet (или, по крайней мере, ваш носитель аналогичен MAC IEEE 802), вы можете использовать макросы ETH_IS_BROADCAST
и ETH_IS_MULTICAST
от ndis.h. Все, что не транслируется или многоадресной, одноадресное.
Код образца см. NICGetFrameTypeFromDestination
от the netvmini sample.
Возможно, вы могли бы [получить адрес назначения из пакета] (http://stackoverflow.com/questions/5281409/get-destination-address-of-a-received-udp-packet) и отработать его там , – paddy
Как только я получаю адрес назначения, как я могу определить, что это одноадресный, многоадресный или широковещательный пакет. –
Одноадресные, многоадресные и широковещательные адреса имеют разные характеристики. Проверьте http://en.wikipedia.org/wiki/Multicast_address – paddy