momomo555
@momomo555

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

複数PCのROS接続

解決したいこと

ROS現在学習を4月から始めたばかりで初心者な質問だということは承知の上で質問させて頂きます。
現在、「Jetson Nano/PC間でROS接続する」の記事を参考に複数PCのROS接続を試みて、行き詰ってしまいました。

前提条件は下記です。
2つのPCはVMwareでubuntuをインストール
2つのPCは優先LANで繋いでます
VMwareのネットワーク設定はブリッジ
お互いping接続は可能

発生したエラー内容

記事での各マシンのIPアドレスを事前確認では
マスターPC 192.168.2.126
サブPC 192.168.2.121
と出力結果があり、

マスターPCでの実行

export ROS_MASTER_URI=http://192.168.2.126:11311
export ROS_IP=192.168.2.126

サブPCでの実行

export ROS_MASTER_URI=http://192.168.2.126:11311
export ROS_IP=192.168.2.121

その後、マスターPCで下記実行

roscore
rosrun turtlesim turtlesim_node

サブPCで下記実行

rosrun turtlesim turtle_teleop_key

すると、下記のエラーが発生しました。

unable to communicate with master!

自分で試したこと

ROS_MASTERやROS_IPのほかにROS_HOSTNAMEを設定する記事を見つけたので下記を試しました。

マスターPCでの実行

export ROS_MASTER_URI=http://192.168.2.126:11311
export ROS_IP=192.168.2.126
export ROS_HOSTNAME=192.168.2.126

サブPCでの実行

export ROS_MASTER_URI=http://192.168.2.126:11311
export ROS_IP=192.168.2.121
export ROS_HOSTNAME=192.168.2.121

その後、マスターPCで下記実行

roscore
rosrun turtlesim turtlesim_node

サブPCで下記実行

rosrun turtlesim turtle_teleop_key

すると、サブPC上で

Reading from keybord
-----------------------------
Use arrow keys to move the turtle.'q' to quit.

となり成功したかと思ったのですが、

マスターPC上で下記のエラーが発生してしまいました。

[ WARN] [1656403460.094714625]: ROS_HOSTNAME / ROS_IP is set to only allow local connections, so a requested connection to '192.168.2.121' is being rejected.

ローカル接続のみ許可しているため接続を拒否されたようですが、2つのPCはローカル接続なので対処法がよくわかりません。

対処法を教えていただけると幸いです。

0

1Answer

エラーメッセージにあるlocalはlocalhostを指しています.
つまり,同じIP内のみでのアクセスが許可されています.
設定を変更して同じネットワーク内からのアクセスを許可すれば接続できるはずです.

0Like

Your answer might help someone💌