Как обнаружить другие хосты домена, используя 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.