1

我试图在 Wireshark 中查看我的传出 UDP 流量。

我创建了新的套接字并将其绑定到我的 QHostAddress::LocalHost 没有错误。然后我发送了一些数据 writeDatagram 并且返回值是正确的,但是我在 Wireshark 中没有看到传出流量。

// create a socket called from init() 
socket = new QUdpSocket(this);
bool ret = socket->bind(QHostAddress::LocalHost, 47000);
if (ret == false)
   {
    printf("failed to bind socket\n");
   }    


// create and sent some data called from send()
QHostAddress addr("192.168.5.12"); // addr of my other computer
qint64 size = socket->writeDatagram(QByteArray("udp data"),addr,47000);

printf("sent %d\n",size); // correct size sent 8

我检查了防火墙设置,如果我关闭它,结果是一样的。

4

1 回答 1

1

通过将 QHostAddress 从 localhost 更改为分配的路由器地址来解决。

于 2019-05-24T13:47:34.663 回答