主网络:192.168.51.10
子网络1:192.168.51.11
子网络1:192.168.51.12
子网络1:192.168.51.13
主机:
/etc/hosts 添加
192.168.51.10 nodemain
192.168.51.11 node1
192.168.51.11 node2
192.168.51.11 node3
修改~/.bashrc文件,最末添加
export ROS_HOSTNAME = nodemain
export ROS_MASTER_URI = http://nodemain:11311
主机路由器至少开放11311端口,如果从机也想获取主机信息,最好将所有端口都开放给主机
从机:
/etc/hosts 添加
192.168.51.10 nodemain
192.168.51.11 node1
192.168.51.11 node2
192.168.51.11 node3
修改~/.bashrc文件,最末添加
export ROS_HOSTNAME = node1
export ROS_MASTER_URI = http://nodemain:11311
从机连接的路由器必须全部端口开放给从机
受限于从机ros通信的tcpros端口是随机分配,为了防止出现传输受限,在路由器上需要将端口赋予给局域网下的电脑。若局域网下有多台电脑可能导致无法通信
对于从外网访问内网再连接的ros多机通信架构,一个主ip只能开放给一台从机。
若后续解决主机通过外网与某局域网下多台从机通信,会再更新