Как обнаружить другие хосты домена, используя rtps_discovery

В последнее время я стараюсь использовать OpenDDS SSL в сети WAN. Но все мои попытки провалились. Это вызвано невозможностью найти разные хосты. Я понял одну вещь. Безопасность OpenDDS должна использовать rtps_discovery, а не InfoRepo, и с помощью rtps_discovery трудно найти два хоста в разных подсетях. Я искал об обнаружении хоста с помощью опции rtps_discovery от SourceForge, github и stackru. Но никто не преуспел в этой манере.

https://sourceforge.net/p/opendds/mailman/message/36320180/

https://github.com/objectcomputing/OpenDDS/issues/854

Итак, мой вопрос заключается в том, как найти хост с помощью rtps_discovery в сети WAN.

Вот мой INI-файл:

[common]
DCPSGlobalTransportConfig=$file
DCPSSecurity=1

[domain/4]
DiscoveryConfig=uni_rtps

[rtps_discovery/uni_rtps]
SedpMulticast=0
ResendPeriod=2
SpdpSendAddrs=publisher's IP:56789

[transport/the_rtps_transport]
transport_type=rtps_udp
use_multicast=0
local_address=subscriber's IP:55555

пожалуйста, дайте мне несколько идей для решения этой проблемы. Действительно невозможно обнаружить хосты в разных подсетях с помощью rtps_discovery??

1 ответ

Решение

Я наконец-то успешно общаюсь с помощью rtps discovery! Это просто атрибут SpdpSendAddrs для порта 8410. как это:

[common]
DCPSGlobalTransportConfig=$file
DCPSSecurity=1

[domain/4]
DiscoveryConfig=uni_rtps

[rtps_discovery/uni_rtps]
SedpMulticast=0
ResendPeriod=2
SpdpSendAddrs=subscriber's IP:8410

[transport/the_rtps_transport]
transport_type=rtps_udp
use_multicast=0

Но новый вопрос заключается в том, как подтвердить правильность работы этой функции безопасности? Когда я перехватываю пакет с помощью wireshrk, я вижу, что данные не зашифрованы. Я использовал пример безопасности OpenDDS Messenger.

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