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

Minimum requirements for ROS Network Setup for multiple machines.

asked 2019-02-17 18:45:30 -0500

moxo26 gravatar image

I am currently working on a Teleoperation robot using ROS Kinetic on Ubuntu 16.04. I am having problems with setting up ROS across two computers in my uni's WPA2 enterprise network. I have been able to connect my two computers using my own router using and .

I have contacted my uni's IT department and they have agreed to help setup a special network for my project. But need more information on the minimum network requirements for ROS to function while maintaining a secure network.

According to the documentation the following are requirements:

1.There must be complete, bi-directional connectivity between all pairs of machines, on all ports. The IT department said all ports was a nonstarter for security reasons and asked if there is a range of ports that will work ?

2.Each machine must advertise itself by a name that all other machines can resolve. Does this mean every machine must have a static IP address?

3.I'm assuming there is a firewall in the network, does that mean I have to have a VPN as well??

Any information or tips will help. Also please excuse my ignorance towards networks, I do not have too much experience.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2019-02-17 19:50:21 -0500

ahendrix gravatar image
  1. ROS uses randomly-assigned ports for publishers and subscriber. These ports are typically in the range 1024-65536 . Computers running ROS within your network need to be able to communicate on these ports. (I'm surprised your IT department thinks this is a non-starter).

  2. There are a number of ways to satisfy this:

    1. set up static IP addresses and DNS
    2. set up static IP addresses and hosts files on every computer
    3. set up a combined DNS/DHCP server like dnsmasq.
    4. set up DHCP to assign addresses statically, and set up DNS
    5. set up DHCP to assign addresses statically, and set up hosts files on every computer
  3. I'm not sure why you're bringing up VPN. If all of your computers are on the same network, you don't need it. I feel like I'm missing some big part of your requirements.

edit flag offensive delete link more


ROS uses randomly-assigned ports for publishers and subscriber.

Perhaps interesting/important for the IT department: it's not "ROS" necessarily, but just a consequence of relying on the TCP/UDP infrastructure of the OS and asking for a port in the ephemeral range.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-18 01:33:20 -0500 )edit

As a quick addition, I found 2.2. to be the easiest to do.

fvd gravatar image fvd  ( 2019-02-19 00:12:49 -0500 )edit

Question Tools



Asked: 2019-02-17 18:45:30 -0500

Seen: 528 times

Last updated: Feb 17 '19