You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have two laptops, where one would be host 1 and the other the host 2 as per the setup on the example as well. They can see each other, and I can ping both laptops from inside of each container in each laptop. Though, I cannot get the host 2 container 1 to listen to the talker on host 1 container 1. Even if I run the listener directly on host 2, I cannot listed to the talker on host 1 container 1. If I run the listener in host 1 container 2 or the host 1 itself it can listen to the talker on host 1 container 1. if I start the talker on the host 1 (outside of the container), and I start the listener on host 2 (outside of the container), the listener on host 2 can listen to the talker on host 1, so the LAN network is well setup and the two hosts can "see" each other.
The IP address on the host 1 in the WiFi LAN is 192.168.1.248 and this is its Profiles.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<dds>
<profilesxmlns="http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles">
<participantprofile_name="container0"is_default_profile="true">
<rtps>
<!-- External locators for user traffic -->
<default_external_unicast_locators>
<udpv4externality="1"cost="0"mask="24">
<!-- Host 1 external IP -->
<address>192.168.1.248</address>
<port>11201</port>
</udpv4>
</default_external_unicast_locators>
<builtin>
<!-- External locators for discovery traffic -->
<metatraffic_external_unicast_locators>
<udpv4externality="1"cost="0"mask="24">
<!-- Host 1 external IP -->
<address>192.168.1.248</address>
<port>11200</port>
</udpv4>
</metatraffic_external_unicast_locators>
<!-- Locators of remote participants (discovery traffic)-->
<initialPeersList>
<!-- Container 2 peer-->
<locator>
<udpv4>
<!-- Host 2 external IP -->
<address>192.168.1.234</address>
<port>11200</port>
</udpv4>
</locator>
<!-- Local network DDS default multicast to discover other participants in the same LAN, using External Locators, or not-->
<locator>
<udpv4>
<address>239.255.0.1</address>
<port>7400</port>
</udpv4>
</locator>
</initialPeersList>
</builtin>
</rtps>
</participant>
</profiles>
</dds>
The IP address of host 2 in the WiFi LAN is 192.168.1.234, and this is its Profiles.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<dds>
<profilesxmlns="http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles">
<participantprofile_name="container0"is_default_profile="true">
<rtps>
<!-- External locators for user traffic -->
<default_external_unicast_locators>
<udpv4externality="1"cost="0"mask="24">
<!-- Host 1 external IP -->
<address>192.168.1.234</address>
<port>11201</port>
</udpv4>
</default_external_unicast_locators>
<builtin>
<!-- External locators for discovery traffic -->
<metatraffic_external_unicast_locators>
<udpv4externality="1"cost="0"mask="24">
<!-- Host 1 external IP -->
<address>192.168.1.234</address>
<port>11200</port>
</udpv4>
</metatraffic_external_unicast_locators>
<!-- Locators of remote participants (discovery traffic)-->
<initialPeersList>
<!-- Container 2 peer-->
<locator>
<udpv4>
<!-- Host 2 external IP -->
<address>192.168.1.248</address>
<port>11200</port>
</udpv4>
</locator>
<!-- Local network DDS default multicast to discover other participants in the same LAN, using External Locators, or not-->
<locator>
<udpv4>
<address>239.255.0.1</address>
<port>7400</port>
</udpv4>
</locator>
</initialPeersList>
</builtin>
</rtps>
</participant>
</profiles>
</dds>
Another note is that I have Vulcanexus also installed on both hosts, where one host is running Ubuntu 20.04 with Galactic and the other Ubuntu 22.04 with Humble. And I have, in both, this in .bashrc:
where <ros_version> is the name of the release. The above source /opt/ros/<ros_version>/setup.bash is probably redundant, but I kept it anyway. I don't think the fact that I have it installed on both machines makes any difference considering I am trying to use the containers.
Any pointers on why I cannot successfully get the nodes to talk to each other? I assume it's something that might be missing or misconfigured on the profile configuration, but I am not sure.
Thanks for the detailed report. I had a look at the configuration file and it looks nice to me.
The problem seems to be that the minimum internal participant ID changed from 1 to 0 between galactic and humble, affecting the discovery.
Please, try it again launching the humble vulcanexus docker with the port mapping 11200-11201:7410-7411/udp instead. If that solves the issue, I will update it in the tutorial.
Hi all,
First of all thanks for the great work done with this package and with the documentation provided!
Unfortunately though, following https://docs.vulcanexus.org/en/humble/rst/tutorials/core/deployment/external_locators/external_locators.html, I am unable to get the same results as the ones shown on the example there.
I have two laptops, where one would be host 1 and the other the host 2 as per the setup on the example as well. They can see each other, and I can ping both laptops from inside of each container in each laptop. Though, I cannot get the host 2 container 1 to listen to the talker on host 1 container 1. Even if I run the listener directly on host 2, I cannot listed to the talker on host 1 container 1. If I run the listener in host 1 container 2 or the host 1 itself it can listen to the talker on host 1 container 1. if I start the talker on the host 1 (outside of the container), and I start the listener on host 2 (outside of the container), the listener on host 2 can listen to the talker on host 1, so the LAN network is well setup and the two hosts can "see" each other.
The IP address on the host 1 in the WiFi LAN is 192.168.1.248 and this is its
Profiles.xml
:The IP address of host 2 in the WiFi LAN is 192.168.1.234, and this is its
Profiles.xml
:Another note is that I have Vulcanexus also installed on both hosts, where one host is running Ubuntu 20.04 with Galactic and the other Ubuntu 22.04 with Humble. And I have, in both, this in
.bashrc
:where
<ros_version>
is the name of the release. The abovesource /opt/ros/<ros_version>/setup.bash
is probably redundant, but I kept it anyway. I don't think the fact that I have it installed on both machines makes any difference considering I am trying to use the containers.Any pointers on why I cannot successfully get the nodes to talk to each other? I assume it's something that might be missing or misconfigured on the profile configuration, but I am not sure.
@rsanchez15 @Mario-DL tagging you for visibility.
Thanks in advance for your help!
The text was updated successfully, but these errors were encountered: