我使用两个虚拟机,均为ubuntu操作系统,想让他们互相发送数据,虚拟机1给虚拟机2使用sendto函数发送了数据,wireshark可以捕获到,但是虚拟机2不能接受,也就是recvfrom函数接收不到,是怎么回事呢?
未正确设置bind函数的地址和端口,导致接收到的数据无法匹配。
被防火墙或其他网络设备阻挡,无法接收到数据。
数据包大小超出了操作系统的最大接收缓冲区大小,导致数据被截断或丢弃。
recvfrom函数的参数设置有误,导致无法接收到数据。
发送方未正确发送数据包或发送的数据包丢失,导致无法接收到数据。
请提供完成的udp程序截图或源码。upd的配置需要4个步骤,1、创建socket;2、准备地址;3、socket addr绑定;4、进行通信。请检查程序中是否有以上4个步骤。