[ros-users] Current best practice for multiple interfaces

Benjamin Johnston Benjamin.Johnston at uts.edu.au
Wed Jan 16 23:20:59 UTC 2013


> > I am not sure why the XML RPC server does not support binding to
> > INADDR_ANY instead of a specific ip address.
> Yeah, this would be great from a systems perspective! Why doesn't it do
> that already?
>
> > ...
> IIRC if you listen on any socket, you don't need to re-bind as
> interfaces come and go, so I don't think even sending a signal would
> even be necessary.
> 
> For people that want a robot to "just work" as soon as you switch it on,
> this would make life much easier.

I'm just speculating here, and I'm sorry if I've misunderstood the discussion, but my understanding of the ROS XMLRPC interfaces is that this could be a little more complex than just binding to INADDR_ANY...

I don't believe there's anything that would prevent a ROS master itself from binding to any address. However, when nodes register themselves with the master, they need to give a 'return' address so that other nodes can find them. The problem is that pubs or subs from the local machine need to be registered with the master using a public address so that other external nodes can locate it. Even though the master could use INADDR_ANY, whenever the public IP address changes (e.g., new wifi connection), then any topics that have a pub or sub from the local machine would need to be reregistered with the master (or the master would need to "cleverly" adjust any such pubs/subs from the local machine).

I guess the clever adjustment would be possible but the addition of such "magic" could create a lot of confusion for users when debugging connectivity problems.


I guess the VPN method is one way to solve this, and something like that is used by the PR2:
http://pr2support.willowgarage.com/wiki/PR2%20Manual/Chapter12

-Ben

UTS CRICOS Provider Code: 00099F
DISCLAIMER: This email message and any accompanying attachments may contain confidential information.
If you are not the intended recipient, do not read, use, disseminate, distribute or copy this message or
attachments. If you have received this message in error, please notify the sender immediately and delete
this message. Any views expressed in this message are those of the individual sender, except where the
sender expressly, and with authority, states them to be the views of the University of Technology Sydney.
Before opening any attachments, please check them for viruses and defects.

Think. Green. Do.

Please consider the environment before printing this email.



More information about the ros-users mailing list