gpt4 book ai didi

c++ - 如何使用 Messenger 示例连接两台机器?

转载 作者:行者123 更新时间:2023-11-30 04:42:35 25 4
gpt4 key购买 nike

我一直在尝试连接两台机器:都是虚拟机,一台是 Xubuntu,另一台是 Ubuntu。我对 OpenDDS 也很陌生,但最好的方法 - 或者看起来 - 是使用 .ini 文件。但是,当我尝试连接时,我似乎无法更改发现服务器,因为默认值为 localhost:12345。有人可以帮助我,以便我可以正确配置文件吗?

我试过使用 dds_udp_conf.ini 和 tcp 文件,但似乎不起作用。另外,我尝试使用单播,但失败了。

ini 文件:

[常见]

DCPSDebugLevel=0

DCPSInfoRepo=corbaloc::localhost::12345/DCPSInfoRepo

DCPSGlobalTransportConfig=config1

[配置/配置1]

传输=udp1

[传输/udp1]

传输类型=udp

我使用语法:./publisher -DCPSConfigFile conf.ini

嗯,发布者和订阅者应该连接,但是发布者发送了一些错误消息,而在另一个 VM 中没有任何反应。我似乎失败了,因为我无法更改本地主机中的配置以进行发现。当我尝试使用与 localhost:12345 不同的参数运行服务器时,它也总是发送错误消息。

最佳答案

如果发布者和订阅者都被告知 InfoRepo 在本地主机上运行,​​我不清楚你在哪里运行 InfoRepo。无论如何,我建议改用 RTPS 发现和传输。它很容易设置,因为参与者可以在没有 InfoRepo 的情况下通过网络的多播找到彼此。此配置是将 RTPS 与 OpenDDS 一起使用的最简单方法:

[common]
DCPSDefaultDiscovery=DEFAULT_RTPS
DCPSGlobalTransportConfig=$file

[transport/the_rtps_transport]
transport_type=rtps_udp

只要把这个给两个程序,它们就会找到对方。如果不是,则意味着您的 VM 上的网络设置可能有问题。

关于c++ - 如何使用 Messenger 示例连接两台机器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58676843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com