ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Bummer. I was thinking in the wrong direction entirely. The ROS core is accessible on a port of a system and not "bound" to any interface.

On machine A:

export ROS_HOSTNAME=machine-a

export ROS_MASTER_URI=http://machine-a:11311/


On machine B:

export ROS_HOSTNAME=machine-b

export ROS_MASTER_URI=http://machine-a:11311/


Bam! As soon as the hostname "machine-a" is known on machine B, a connection will be established. If for any reason the hostname isn't known, one can of course also spell out the IP (if it's known):

Say machine A has the VPN-IP 10.15.13.2 and machine B has the IP 10.15.13.3:

On machine B:

Make sure ROS_HOSTNAME isn't set, because it overrides ROS_IP:

unset ROS_HOSTNAME

export ROS_IP=10.15.13.3

export ROS_MASTER_URI=http://10.15.13.2:11311/