请教:RTT+LWIP 下的 UDP 能使用 广播功能么?
使用BSD socket写了个UDP 服务器,用SOCKET 调试工具软件:SocketTool调试工具V2.3 。 问题:点对点可以收发 但无法接收广播数据rt_uint8_t optval =1;
/* 设置允许接收和发送广播信号*/
setsockopt(sock, SOL_SOCKET,SO_BROADCAST,(const char*)&optval ,sizeof(optval)); (本行代码位置在建立 socket之后)。
并且在“lwip/opt.h”中 设置 #define IP_SOF_BROADCAST 1; #define IP_SOF_BROADCAST_RECV 1;
求解答,谢谢~ 目标地址为 255.255.255.255 的广播可以接收。
其它的要改代码。 LWIP默认过滤了,所有多播包(除广播外)。(广播是多播的一个特例)
可以参考 LWIP 1.4 添加针对特定端口的放行。 目标地址为 255.255.255.255 交换机或路由就会全网发送。不会只发给某一个机器。 回复【2楼】19001579蓝色
-----------------------------------------------------------------------
打开UPNP看搜索时目标地址是多少。 遇到同样问题了,不知楼主解决了没有 可以收发点对点包,也可以发广播包,就是收不了广播包和组播包
页:
[1]