Robotics StackExchange | Archived questions

Running ROS on multiple machines in a remote environment

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

    Laptoplocalip laptop

    Desktoplocalip desktop

    Labpublicip server

  3. ~/.bash

    ROSMASTERURI=http://laptop:11311

    ROS_HOSTNAME=laptop

    ROS_IP=laptop


Settings of Desktop

  1. Network router

    Nothing

  2. /etc/hosts

    Laptoplocalip laptop

    Desktoplocalip desktop

    Labpublicip server

  3. ~/.bash

    ROSMASTERURI=http://laptop:11311

    ROS_HOSTNAME=desktop

    ROS_IP=desktop


Settings of Server

  1. Network router

    DMZ for server local ip

  2. /etc/hosts

    Serverlocalip server

    Homepublicip laptop

    Homepublicip desktop

  3. ~/.bash

    ROSMASTERURI=http://laptop:11311

    ROS_HOSTNAME=server

    ROS_IP=server


Please help me. Thank you!

Asked by yongpark on 2021-05-17 12:51:49 UTC

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.

Asked by Humpelstilzchen on 2021-05-18 23:25:51 UTC

It works. Thank you!

Asked by yongpark on 2021-09-07 23:29:37 UTC

Answers