-
Notifications
You must be signed in to change notification settings - Fork 778
Description
We have 2 physical machines in one local network
Ubuntu 24.04
ros2 jazzy
run on the server
fastdds discovery -i 0 -t 192.168.10.52 -q 42100
1 terminal
export ROS_DISCOVERY_SERVER=TCPv4:[192.168.10.52]:42100
export ROS_SUPER_CLIENT=TRUE
ros2 run demo_nodes_cpp listener
2 terminal
export ROS_DISCOVERY_SERVER=TCPv4:[192.168.10.52]:42100
export ROS_SUPER_CLIENT=TRUE
ros2 run demo_nodes_cpp talker
talker - starts publishing messages and they are visible in the listener terminal
3 terminal
export ROS_DISCOVERY_SERVER=TCPv4:[192.168.10.52]:42100
export ROS_SUPER_CLIENT=TRUE
ros2 daemon stop
ros2 daemon start ros2 topic list
/chatter
/parameter_events
/rosout
--- so far so good
ros2 topic list --no-daemon
/chatter
/parameter_events
/rosout
-- so good too
BUT when trying to get node list I get empty
ros2 node list - EMPTY response
ros2 node list --no-daemon -- so EMPTY too
on 2 physical machine
1 terminal
export ROS_DISCOVERY_SERVER=TCPv4:[192.168.10.52]:42100
export ROS_SUPER_CLIENT=TRUE
ros2 run demo_nodes_cpp listener
-- we see the published messages of the 1st machine - everything is fine here
2nd terminal
export ROS_DISCOVERY_SERVER=TCPv4:[192.168.10.52]:42100
export ROS_SUPER_CLIENT=TRUE
ros2 run demo_nodes_cpp talker
after that, the messages of the 2nd talker are published in turn in 2nd listener - everything is fine here
3rd terminal
export ROS_DISCOVERY_SERVER=TCPv4:[192.168.10.52]:42100
export ROS_SUPER_CLIENT=TRUE
ros2 node list - the answer is EMPTY
ros2 node list --no-daemon -- also EMPTY
the problem is inside ROS2 jazzy so as tests showed, with the following settings
fastdds discovery and ROS_DISCOVERY_SERVER
TCPv4:[127.0.0.1]:42100 - ros2 node list or ros2 node list --no-daemon - EMPTY
TCPv4:[192.168.10.52]:42100 - ros2 node list or ros2 node list --no-daemon- EMPTY
UDP
127.0.0.1:11811 - ros2 node list - OK - that's how it works
but with ros2 node list --no-daemon - EMPTY
192.168.10.52:11811 - ros2 node list - OK - that's how it works
but with ros2 node list --no-daemon - EMPTY
on 2 machines, just in case, we check that the port is available and repeat the test
nc -uv 192.168.10.52 11811
Connection to 192.168.10.52 11811 port [udp/*] succeeded!
export ROS_SUPER_CLIENT=TRUE
export ROS_DISCOVERY_SERVER=192.168.10.52:11811
ros2 node list - answer EMPTY
ros2 node list --no-daemon -- also EMPTY
try to solve the problem of displaying the node list because I need to use rviz2 on a remote machine
Bug report
Required Info:
- Operating System:
- Ubuntu 24.04
- Version or commit hash:
- last ROs2 jazzy
- DDS implementation:
- Fast-RTPS