Участники 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 как для издателя, так и для подписчика.