Multicast Issue

So I hope I know what I am doi96.pcap.txt (100 Bytes) switch.pcap.txt (369 Bytes)

I had to add a .TXT to the files to get them uploaded.

I am stuck not knowing what to do next.

Iā€™m having a weekend off.

1 Like

Ah, I am sure you deserve it!! Enjoy!!

Looking at those in wirehark shows that the switch one seems to have a 802.1q vlan tag attached


whereas the "96" one doesn't

All I know is that you can use VLAN for segmenting things so they may be keeping the traffic to a known group, but I don't know why the raw udp receive can't get it.

At this point we are going to need to start digging. Not sure what that exactly means or how we get around / cope with it.... going to need someone with a bit more low level networking knowledge than I.

There are of course a few pcap nodes out there so they may help in the meantime (but I've not tried them so no idea how good they are)

You are a genius. It WAS the VLAN. I change the switch to be on the same VLAN as the nodered server. And it worked.

So, now, why is node-red UDP node not receiving messages with the VLAN tag.

I will have to dig into the code to see if I can find out why.

@knolleary Nick, Sorry to bring you in so late on this thread but I need some help on where to start looking to resolve the issue.

What @dceejay found out is that if a multi-cast message contains VLAN data then the UDP node does not process the message. We can see the message in a tcpdump coming into the server and not show up through the UDP node if VLAN data exists. To verify, I moved the message sending device that was not getting through to the same LAN as the receiving server and the message went through.

@dceejay My apologies, I was just looking at the UDP code on Github and I just realized that you are one of the main developers.

Indeed I am... and so far what you are seeing makes sense I think. If you have things on separate (virtual) lan segments then indeed they should not see each other as otherwise what is the point.... The tcdump can see it as it is operating at a lower (packet) level and in promiscuous mode slurping every packet and can thus dump out everything - whereas udp "follows the rules" and ignores things not on its network. Either you need to move them all to the same network or to the same vlan. (Or set the sender to have a TTL of > 1 hop and set any bridge or router to forward multicast)

This may make a fun read - https://www.sbprojects.net/projects/raspberrypi/vlan.php

That was actual enjoyable reading. So here is what I have found out from my testing.

I moved the sending node-red server to another VLAN. The TTL now was 128. The receiving server still saw the message in tcpdump but not in node-red. So, the TTL is not the limiting factor. Also, like you mentioned, if the receiving server is seeing the message then it is being routed.

I then added the correct VLAN to the ethernet interface of the receiving node-red server. I can pull up the node-red admin interface using the new VLAN ip address. (FWIW I can also ping the receiving server's VLAN ip address.) But as before I can see the messages with tcpdump but node-red is not showing them still.

and the udp node is bound to that new interface ?

Ah, good catch. I had not done that. My hopes got real high! :slight_smile:
But no luck, When I did that I got a "Bad Multicast Address" error on deployment

edit: I had put in the interface of "eno1.30". I then just tried the ip address using the VLAN address. It works!!

1 Like

Phew. Out of the woods.

Yes, thanks for all of your help. But I must say, you sure take the weekend off in strange ways. Me too!! :slight_smile:

Indeed ! But itā€™s been raining all day here so we like an interesting puzzle.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.