RustDDS icon indicating copy to clipboard operation
RustDDS copied to clipboard

Running RustDDS only on localhost

Open raidv opened this issue 2 years ago • 0 comments

Hi. I have a local setup where I have RustDDS running in one program, reading data from serial and forwarding it over DDS. The receiving end is running node-openDDS implementation. Everything works fine when any of the physical NICs are switched on and connected (Ethernet cable plugged in or WiFi connected). Whenever I disconnect the physical interface, I get the following warning on RustDDS side:

[2022-07-14T07:38:03Z WARN rustdds::network::udp_sender] send_to_locator - send_to 239.255.0.1:19900 : Os { code: 101, kind: NetworkUnreachable, message: "Network is unreachable" }

In this state there are no more messages published according to wireshark.

The same behaviour occurs when I disable the interfaces from terminal (ip link set $IF down)

As I understand (also mentioned here) DDS discovery is sent over all non-loopback interfaces (so, by default no localhost?). Is there a possibility to do all the communication on localhost and is this RustDDS specific problem or something that conflicts with the whole RTPS protocol on a level I have yet to understand? I seem to find little to none documentation of similar issues on the internet.

raidv avatar Jul 14 '22 13:07 raidv