3
我正在构建一个在具有多个NIC(多宿主)的系统上运行的Linux Qt5/C++应用程序。我需要强制我的传出TCP连接使用特定的NIC/IP。我已经尝试了下面的代码,但是netstat证实我的应用程序仍在使用错误的本地NIC/IP。QTcpSocket无法绑定到正确的IP
if (m_tcpSocket->bind(localaddress)) qDebug() << "Bind success";
m_tcpSocket->connectToHost(
remoteaddress,
remoteport,
QTcpSocket::ReadWrite);
}
我是不是正确地称这个错误?我看到“绑定成功,”所以我想调用的是正确的......但我无法解释为什么它不工作
更新:我发现这个错误报告:https://bugreports.qt.io/browse/QTBUG-29732
有一种解决方法?我在QAbstractSocket中看到setLocalAddress(),但我不确定它是否相同
抱歉,对于非信息性评论。自Digia接管Qt以来,我注意到这是一件可悲的事情。他们开始关注C++,并将大部分资源投入到QML :( – GreenScape 2014-10-04 22:45:51