slowrunner
Contributor
Contributor

ROS2 udp multicast not passing out of VM - ROS2 discovery not succeeding

Jump to solution

First off, I know next to nothing about udp, multicast, or dynamic discovery.

PROBLEM:  ROS2 nodes in my Fusion VM cannot publish or subscribe with ROS2 nodes running on my RaspberryPi robot.

What I know:

- ROS2 uses dynamic discovery with udp on ports 7400, 7412, 7413

- Ping works in both directions - from VM to bot, and from bot to VM

- ros2 multicast receive on VM "hears" ros2 multicast send from bot  (multicast to VM is working)

  • ROS-VM: ros2 multicast receive
    Waiting for UDP multicast datagram...
    Received from 10.0.0.11:43044: 'Hello World!'

- ros2 multicast send on VM does not succeed with ros2 multicast receive on bot (multicast from VM is not working)

- VM is configured with Bridged Network Adapter (have tried both bridged ethernet and bridged WiFi)

- VM System:

  • VMware Fusion Player 12.1.1 
  • Running Ubuntu 20.04.2 LTS 64-bit Desktop
  • ROS2 Foxy Fossa
  • 8 GB Ram 3-cores available to VMware Fusion virtual machine
  • on a 32GB 3.2GHz 6-Core Intel Core i7 2018 MacMini
  • running macOS Big Sur 11.0.1
  • Ubuntu ufw disabled (no firewall in client OS)

- Robot System

  • RaspberryPi 3B+ Ubuntu 20.04 64-bit Server
  • ROS2 Foxy Fossa
  • Ubuntu ufw disabled (no firewall)

- Robot ports:

pi@ROSbot:~$ ss -tulw
Netid          State            Recv-Q           Send-Q                       Local Address:Port                          Peer Address:Port          Process          
icmp6          UNCONN           0                0                         *%wlan0:ipv6-icmp                                *:*                              
udp            UNCONN           0                0                        0.0.0.0:7400                               0.0.0.0:*                              
udp            UNCONN           0                0                        0.0.0.0:7412                               0.0.0.0:*                              
udp            UNCONN           0                0                        0.0.0.0:7413                               0.0.0.0:*                              
udp            UNCONN           0                0                      127.0.0.1:58641                              0.0.0.0:*                              
udp            UNCONN           0                0                        0.0.0.0:34723                              0.0.0.0:*                              
udp            UNCONN           0                0                  127.0.0.53%lo:domain                             0.0.0.0:*                              
udp            UNCONN           0                0                10.0.0.11%wlan0:bootpc                             0.0.0.0:*                              
tcp            LISTEN           0                4096                   127.0.0.1:45585                              0.0.0.0:*                              
tcp            LISTEN           0                4096               127.0.0.53%lo:domain                             0.0.0.0:*                              
tcp            LISTEN           0                128                      0.0.0.0:ssh                                0.0.0.0:*                              
tcp            LISTEN           0                128                         [::]:ssh                                   [::]:*                              
tcp            LISTEN           0                100                          *:8888                                     *:*

 

- VM System ports:

ubuntu@rosdesk:~$ ss -tulw
Netid  State   Recv-Q  Send-Q                      Local Address:Port              Peer Address:Port  Process  
icmp6  UNCONN  0       0                                       *:ipv6-icmp                    *:*              
udp    UNCONN  0       0                               127.0.0.1:39592                  0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:60176                  0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:7400                   0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:7412                   0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:7413                   0.0.0.0:*              
udp    UNCONN  0       0                           127.0.0.53%lo:domain                 0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:37045                  0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:631                    0.0.0.0:*              
udp    UNCONN  0       0                                 0.0.0.0:mdns                   0.0.0.0:*              
udp    UNCONN  0       0                                    [::]:44486                     [::]:*              
udp    UNCONN  0       0                                    [::]:mdns                      [::]:*              
tcp    LISTEN  0       4096                        127.0.0.53%lo:domain                 0.0.0.0:*              
tcp    LISTEN  0       5                               127.0.0.1:ipp                    0.0.0.0:*              
tcp    LISTEN  0       5                                   [::1]:ipp                       [::]:*

 

0 Kudos
1 Solution

Accepted Solutions
slowrunner
Contributor
Contributor

Final solution - change my WiFi router - the xFinity router was flaking out the communications, sometimes passing everything, sometimes allowing ssh but not udp or arp, and sometimes blocking everything.  

Changed my 2.4GHz WiFi access to my 10 year old router and perfect communications every time.

View solution in original post

0 Kudos
2 Replies
slowrunner
Contributor
Contributor

Final solution - change my WiFi router - the xFinity router was flaking out the communications, sometimes passing everything, sometimes allowing ssh but not udp or arp, and sometimes blocking everything.  

Changed my 2.4GHz WiFi access to my 10 year old router and perfect communications every time.

View solution in original post

0 Kudos
slowrunner
Contributor
Contributor

deleted

0 Kudos