Участники OpenDDS не смогли обнаружить друг друга

В последнее время я пытаюсь общаться с помощью OpenDDS-3.12. Я хочу общаться с двумя другими хостами, которые расположены в других WAN. Но участники не могли обнаружить друг друга. Как я могу решить эту проблему??

Вот моя среда общения:

У меня есть два хозяина. HostA и Host B - это мой Destktop(Ubuntu 16.04). Также два хоста имеют общедоступный IP-адрес (видимый) и отключают брандмауэр. Я уже проверил, был ли конкретный номер порта доступен командой telnet.

Я использовал пример OpenDDS-3.12 и $OpenDDS_HOME/tests/DCPS/Messenger.

В HostA включите

$ DCPSInfoRepo -ORBListenEndpoints iiop://:12345

Абонент работает так:

$ ./subscriber -DCPSInfoRepo <HostA's IP>:12345 -DCPSConfigFile sub_multicast.ini

В HostB, Directory такой же, а издатель работает так:

$ ./publisher -DCPSInfoRepo <HostA's IP>:12345 -DCPSConfigFile pub_multicast.ini

Сообщение об ошибке возврата издателя здесь:

# ./publisher -DCPSInfoRepo <HostA's IP>:12345 -DCPSConfigFile pub_multicast.ini
Starting publisher
(8921|139698127107904) NOTICE: using DCPSInfoRepo value from command option (overrides value if it's in config file).
Starting publisher with 1 args
Reliable DataWriter
Creating Writer
Starting Writer
(8921|139697959323392) WARNING: SynWatchdog[transport=3]::on_timeout: timed out waiting on remote peer: 0x30c5d67200000007 local: 0x30c5d67200000005

Какова правильная конфигурация для обнаружения других хостов WAN?

Надеюсь, ты поможешь мне.

1 ответ

Используйте rtps_uni.ini как для издателя, так и для подписчика.

Другие вопросы по тегам