ADLINK-IST/opensplice

Communication fail in VPN environment

Closed this issue · 2 comments

I built a N2N environment including two nodes in different subnetwork. They can ping each other through vpn IP but dds message could not transmit between them.

Under default configuration, ospl-info.log shows they did not choose n2n0 as network interface.
Node1:

Report      : WARNING
Date        : 2020-10-19T17:10:54+0800
Description : using network interface eno1 (192.168.200.251) selected arbitrarily from: eno1, docker0, vmnet1, vmnet8, n2n0, oray_vnc

Node2:

Report      : WARNING
Date        : 2020-10-19T17:10:38+0800
Description : using network interface eth1 (192.168.12.197) selected arbitrarily from: eth1, n2n0, oray_vnc

Then I modified the “General/NetworkInterfaceAddress” in ospl.xml from AUTO to n2n0, it still can not work. The only difference between AUTO and n2n0 is there are not "using network interface..." log in ospl-info.log any more.

Is there anyway to make opensplice work?

Hi Leonfg,
what it comes to my mind in this situation is that VPN is not configured to use multicast.
What you could try is to set an initial peers in ospl.xml configuration file.

<DDSI2Service name="ddsi2">
      <General>
         <NetworkInterfaceAddress>AUTO</NetworkInterfaceAddress>
         <AllowMulticast>false</AllowMulticast>
         <EnableMulticastLoopback>false</EnableMulticastLoopback>
         <CoexistWithNativeNetworking>false</CoexistWithNativeNetworking>
      </General>
      <Discovery>
         <Peers>
            <Peer Address="192.168.1.2"/>
            <Peer Address="192.168.1.3"/>
         </Peers>
      </Discovery>
</DDSI2Service>

When it will still not work you can try to read suggestions from Hans in this thread:
http://forums.opensplicedds.org/topic/2970-dds-configuration-for-multicast-disabled-network/

Hi Leonfg,
what it comes to my mind in this situation is that VPN is not configured to use multicast.
What you could try is to set an initial peers in ospl.xml configuration file.

<DDSI2Service name="ddsi2">
      <General>
         <NetworkInterfaceAddress>AUTO</NetworkInterfaceAddress>
         <AllowMulticast>false</AllowMulticast>
         <EnableMulticastLoopback>false</EnableMulticastLoopback>
         <CoexistWithNativeNetworking>false</CoexistWithNativeNetworking>
      </General>
      <Discovery>
         <Peers>
            <Peer Address="192.168.1.2"/>
            <Peer Address="192.168.1.3"/>
         </Peers>
      </Discovery>
</DDSI2Service>

When it will still not work you can try to read suggestions from Hans in this thread:
http://forums.opensplicedds.org/topic/2970-dds-configuration-for-multicast-disabled-network/

I tried the solution. It is right but not enough, “NetworkInterfaceAddress” should still be modified to the virtual nic's name. Now all goes well.
Thank you very much!