设定: 1)笔记本电脑A连接到家庭网络中的路由器。我有一个no-ip域名。 我在路由器上有端口转发,将端口40000转发到笔记本电脑A. 笔记本电脑A是监听端口40000的“服务器”。
2)笔记本电脑B连接到同一个路由器。我在B上运行一个“客户端”。它创建一个套接字 具有自己的端口45000的(Udp)连接到服务器(域名和端口40000)并且正在发送消息。笔记本A接收。一切都很好。
3)但是当我试图捕捉笔记本电脑B(发送者的)地址& readmessag(..)中的端口,它给了我路由器的IP地址(71.XX.YY.ZZ)和1024的端口。我认为它会给发送者IP(无论像192.xyz和端口45000。 )。
如何从A - > B连接和交换消息? (我希望我能从初始消息中获取客户端端口的IP并回复并建立双向通信。)断开连接在哪里? -----我正在使用Qt Toolkit
//SERVER CODE EXCERPT
udpSocket = new QUdpSocket();
int retbind=udpSocket->bind(QHostAddress::Any,40000);
//SERVER reads message from Client (code for checking pending datagrams not shown)
udpSocket->readDatagram(datagram.data(), datagram.size(),&senderIp, &senderPort);
谢谢,