自己用qt编了个udp收发程序,组播接收和广播发送同个线程函数里。今天邪门发现,即使绑定了本地网卡收发数据,仍收不到数据,只有禁用壳虚拟网卡才可以,而且只要禁用过一次,重启虚拟网卡也不影响数据接收了。而且同一个程序,用mfc编写的就不受虚拟网卡影响,有哪位朋友帮忙指点下
可能是你套接字的配置有问题,绑定的IP是0.0.0.0与127.0.0.1是有区别的
你可以试试0.0.0.0来进行套接字的配置,这样多网卡都可以接收。
这里是区别:
0.0.0.0:表示服务器上的所有可用网络接口。在套接字编程中,可以将套接字绑定到0.0.0.0的IP地址上,这意味着套接字将监听服务器上的所有可用网络接口。当其他主机通过任何一个网络接口向服务器发送数据时,服务器都可以接收到。
127.0.0.1:表示本地回环地址。在套接字编程中,可以将套接字绑定到127.0.0.1的IP地址上,这意味着套接字只监听本地回环地址,即只能接收来自本地计算机的数据。