ROS2 Network - stereoboy/Study GitHub Wiki
- https://robotics.stackexchange.com/questions/102329/limit-ros-traffic-to-specific-network-interface
- https://fast-dds.docs.eprosima.com/en/latest/fastdds/transport/whitelist.html
export FASTRTPS_DEFAULT_PROFILES_FILE=/work/fastdds.xml
fastdds.xml
<?xml version="1.0" encoding="UTF-8" ?>
<profiles xmlns="http://www.eprosima.com/">
<transport_descriptors>
<transport_descriptor>
<transport_id>CustomTcpTransportWhitelistAddress</transport_id>
<type>UDPv4</type>
<interfaceWhiteList>
<address>192.168.2.2</address>
</interfaceWhiteList>
</transport_descriptor>
</transport_descriptors>
<participant profile_name="CustomTcpTransportWhitelistAddressParticipant" is_default_profile="true">
<rtps>
<useBuiltinTransports>false</useBuiltinTransports>
<userTransports>
<transport_id>CustomTcpTransportWhitelistAddress</transport_id>
</userTransports>
</rtps>
</participant>
</profiles>
-
https://iroboteducation.github.io/create3_docs/setup/xml-config/
-
https://answers.ros.org/question/375360/multiple-network-interfaces-with-rmw_cyclonedds_cpp/
-
!!! https://answers.ros.org/question/405753/limit-ros-traffic-to-specific-network-interface/
-
https://dds-demonstrators.readthedocs.io/en/latest/Teams/1.Hurricane/setupCycloneDDS.html
-
https://answers.ros.org/question/327228/ros2-what-does-the-discovery-multicast-port-do/
-
CycloneDDS
export CYCLONEDDS_URI='<CycloneDDS><Domain><General><NetworkInterface>wlan1</></></></>'
export CYCLONEDDS_URI='<CycloneDDS><Domain><General><NetworkInterfaceAddress>wlan1</></></></>' // deprecated???
sudo apt install tcpdump
sudo tcpdump -X -i any udp port 7400
# In terminal 1:
ros2 run demo_nodes_cpp talker --ros-args --enclave /talker_listener/talker
# In terminal 2:
ros2 run demo_nodes_cpp listener --ros-args --enclave /talker_listener/listener
- https://answers.ros.org/question/327228/ros2-what-does-the-discovery-multicast-port-do/
- https://zetawiki.com/wiki/Bash:_ss:_command_not_found
sudo apt install iproute2
ss -uap
*https://www.cyberciti.biz/faq/unix-linux-check-if-port-is-in-use-command/
sudo apt-get install lsof
$ sudo lsof -i -P -n
[sudo] password for wom:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root 30u IPv4 39354 0t0 TCP *:111 (LISTEN)
systemd 1 root 31u IPv4 39355 0t0 UDP *:111
systemd 1 root 32u IPv6 39356 0t0 TCP *:111 (LISTEN)
systemd 1 root 33u IPv6 39357 0t0 UDP *:111
rpcbind 753 _rpc 4u IPv4 39354 0t0 TCP *:111 (LISTEN)
rpcbind 753 _rpc 5u IPv4 39355 0t0 UDP *:111
rpcbind 753 _rpc 6u IPv6 39356 0t0 TCP *:111 (LISTEN)
rpcbind 753 _rpc 7u IPv6 39357 0t0 UDP *:111
systemd-r 754 systemd-resolve 12u IPv4 47677 0t0 UDP 127.0.0.53:53
systemd-r 754 systemd-resolve 13u IPv4 47678 0t0 TCP 127.0.0.53:53 (LISTEN)
avahi-dae 764 avahi 12u IPv4 47693 0t0 UDP *:5353
avahi-dae 764 avahi 13u IPv6 47694 0t0 UDP *:5353
avahi-dae 764 avahi 14u IPv4 47695 0t0 UDP *:36886
avahi-dae 764 avahi 15u IPv6 47696 0t0 UDP *:41721
NetworkMa 771 root 23u IPv4 59147 0t0 UDP 192.168.0.13:68->192.168.0.1:67
container 1585 root 10u IPv4 62560 0t0 TCP 127.0.0.1:37799 (LISTEN)
sshd 1969 root 3u IPv4 59513 0t0 TCP *:22 (LISTEN)
sshd 1969 root 4u IPv6 59515 0t0 TCP *:22 (LISTEN)
sshd 61565 root 4u IPv4 267162 0t0 TCP 192.168.0.13:22->192.168.0.2:38700 (ESTABLISHED)
sshd 61612 wom 4u IPv4 267162 0t0 TCP 192.168.0.13:22->192.168.0.2:38700 (ESTABLISHED)
cupsd 173967 root 9u IPv4 619513 0t0 TCP *:631 (LISTEN)
cupsd 173967 root 10u IPv6 619514 0t0 TCP *:631 (LISTEN)
cups-brow 174031 root 8u IPv4 634088 0t0 UDP *:631
listener 176427 wom 4u IPv4 642860 0t0 UDP *:53388
listener 176427 wom 5u IPv4 642861 0t0 UDP 172.17.0.1:44303 //<- wrong Setup
listener 176427 wom 6u IPv4 642862 0t0 UDP *:7400
listener 176427 wom 7u IPv4 642863 0t0 UDP *:7401