I am sending UDP packets to a multicast address (126.96.36.199) on an unused port (60000) from an embedded board hooked into my network.
When I run a Wireshark capture on my PC, I can see the UDP packets. Everything appears correct (including checksums). I developed a Labview script to read the incoming UDP packets. However, it does not see the packets (i.e., times out when it tries to read the IP/port). My system is Windows 7, and the OS firewall is enabled. I have verified that Labview has firewall "privileges," but I have made no special provisions for the port in question (i.e., 60000).
Here's the interesting part: whenever I have a live capture going with Wireshark, the Labview script starts working (i.e., it sees the packets -- and agrees that they are formed correctly). It is very reliable and repeatable -- i.e., run the the Labview script. As I start and stop the Wireshark capture, the script can see and not see the packets, respectively.
Is Wireshark somehow letting packets through that would otherwise be blocked while in the act of sniffing?
asked 04 Oct '11, 09:56
You are probably running Wireshark with the "Capture packets in promiscuous mode" option selected which will cause the NIC to "accept" all packets. I think your Labview script isn't following the rules for a windows multicast receiver. See this MDSN link for more details
answered 04 Oct '11, 10:18