★★★调用recvfrom获取的IP地址与实际的发送方地址不同,请高手帮忙看看代码!!★★★
简单写一下接收部分代码:
unsigned long ip;
//绑定到1024端口后开始接收
recvfrom(sock, recvbuf, buflen, 0, (struct sockaddr *)&addrfrom, &addrsize);
ip = addrfrom.sin_addr.S_un.S_addr;
发送方:
stto.sin_family = AF_INET;
stto.sin_addr.s_addr = inet_addr("192.168.3.24"); //这是我的机器的ip
stto.sin_port = htons(1024);
addr_size = sizeof(struct sockaddr_in);
sendto(s, achout, sizeof(achout), 0, (struct sockaddr *)&stto, addr_size);
单机测试时接收方能够收到发送方的数据,但是我在接收方获取的ip与本机的ip地址不一样:
ip变量和inet_addr("192.168.3.24")不相等,这是怎么回事?
请指教,谢谢!!