Running ROS on multiple machines in a remote environment

asked 2021-05-17 12:51:49 -0500

yongpark gravatar image

Hello.

I'm suffering form problem described below. These are link of organized picture of problem.

https://ibb.co/xYgQpkv

https://ibb.co/NWxd7Vg

I have two routers, one in the home and the other in the lab. Both routers have public ip.

laptop (Master) and desktop are connected to home router, and server is connected to lab router. I set DMZ to my laptop and server.

Laptop and desktop can communicate each other by ros topic. Laptop and server can communicate each other by ros topic. But, Desktop and server cannot communicate each other by ros topic. Topic only goes one direction. (server to desktop)


Settings of Laptop

  1. Network router

    DMZ for laptop local ip (Allow every port for Master)

  2. /etc/hosts

    Laptop_local_ip laptop

    Desktop_local_ip desktop

    Lab_public_ip server

  3. ~/.bash

    ROS_MASTER_URI=http://laptop:11311

    ROS_HOSTNAME=laptop

    ROS_IP=laptop


Settings of Desktop

  1. Network router

    Nothing

  2. /etc/hosts

    Laptop_local_ip laptop

    Desktop_local_ip desktop

    Lab_public_ip server

  3. ~/.bash

    ROS_MASTER_URI=http://laptop:11311

    ROS_HOSTNAME=desktop

    ROS_IP=desktop


Settings of Server

  1. Network router

    DMZ for server local ip

  2. /etc/hosts

    Server_local_ip server

    Home_public_ip laptop

    Home_public_ip desktop

  3. ~/.bash

    ROS_MASTER_URI=http://laptop:11311

    ROS_HOSTNAME=server

    ROS_IP=server


Please help me. Thank you!

edit retag flag offensive close merge delete

Comments

I have not read all, but why don't you just run a VPN on top of your network? Would me much easier then forwarding all ports in all directions on all hosts.

Humpelstilzchen gravatar image Humpelstilzchen  ( 2021-05-18 23:25:51 -0500 )edit

It works. Thank you!

yongpark gravatar image yongpark  ( 2021-09-07 23:29:37 -0500 )edit