我正在尝试将C++中的套接字请求发送到由Tor服务和node.js托管的洋葱链接。我的node.js服务器托管在端口8080上。
当我尝试将套接字请求发送到localhost:8080时,它工作得很好。

但是,当我尝试将它们发送到我的洋葱链接时,它不起作用。

我用来处理套接字的库是https://github.com/socketio/socket.io-client-cpp

C++代码:

sio::client h;
connection_listener l(h);

h.set_open_listener(std::bind(&connection_listener::on_connected, &l));
h.set_close_listener(std::bind(&connection_listener::on_close, &l,std::placeholders::_1));
h.set_fail_listener(std::bind(&connection_listener::on_fail, &l));
h.connect("http://myonionlink.onion:8080/");
// it fails to connect to the onion link, but works perfectly fine with http://localhost:8080/

为什么这对于洋葱链接不起作用?在这种情况下,洋葱链接的工作方式是否有所不同?

有什么方法可以用来实现这一目标?

最佳答案

我认为https://en.wikipedia.org/wiki/.onion的“.onion TLD不在Internet DNS根目录中”的问题在引擎盖库下进行尝试以解析原始IP地址中的URL并失败,因为DNS表中没有适当的记录。

关于c++ - 通过Tor服务的C++ socket.io客户端,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62397482/

10-11 16:15