lwip通过路由器为什么不能通讯

lihao0320 2012-04-17 10:39:24
我的是2级路由,板子ip和主机ip为同一个网段,通过路由器不能通讯,而用网线直连就可以;为什么?
路由器是支持动态分配ip,而我的板子和pc都设置成了固定ip
...全文
714 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lihao0320 2012-04-19
  • 打赏
  • 举报
回复
上面问题解决了
lwip如何发送广播包,udp_sendto(UdpPcb,pbuf,&broadcast,21677); 发送不了啊
lihao0320 2012-04-19
  • 打赏
  • 举报
回复
上面问题解决了
lwip如何发送广播包,udp_sendto(UdpPcb,pbuf,&broadcast,21677); 发送不了啊
lihao0320 2012-04-19
  • 打赏
  • 举报
回复
物理层芯片的问题,自动协商后只有10M,而路由器是100M的,所以……
现在遇到了不能发送广播包的问题
可以接受pc发送的广播包,但是发送广播pc缺收不到,不知道为什么

g_dpcb = udp_new();
IP4_ADDR(&sbroadcast,255,255,255,255);

g_dpcb->so_options |= SOF_BROADCAST;
udp_bind(g_dpcb, IP_ADDR_ANY, 21678 );

udp_recv(g_dpcb,UDP_ReceiveForB,NULL);
pc发送受限广播时,模块能收到,并能触发回调函数,但是模块发送广播pc却收不到,是我的发送方式有问题吗?
pbuf->payload=(void *)UDPData;//[NewBuf];
udp_sendto(g_upcb,pbuf,&sbroadcast,21677);
另外问下 g_dpcb->so_options的问题,我看udp_pcb结构里并没有so_options成员啊,这里怎么冒出个so_options呢?
zhengmeifu 2012-04-19
  • 打赏
  • 举报
回复
上面什么问题解决了呀?什么原因呢?分享一下。
是否是被交换机屏蔽了呀?一般都会屏蔽广播包的呀。
一介布衣萧萧 2012-04-18
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
我的是2级路由,板子ip和主机ip为同一个网段,通过路由器不能通讯,而用网线直连就可以;为什么?
路由器是支持动态分配ip,而我的板子和pc都设置成了固定ip
[/Quote]

未能解析,先看看是否ping得通
lihao0320 2012-04-18
  • 打赏
  • 举报
回复
lwip如何建立广播包的udp控制块?如何设置广播包的回调函数?看了下lwip的udp_input,虽然也有关于广播包的检测,但是没看明白对应广播包是如何处理的。
lihao0320 2012-04-18
  • 打赏
  • 举报
回复
lwip模块和pc直连,可以通信;模块和pc连接交换机再连到路由器,模块可以收到pc发的广播包,但是不能直接通信;模块和pc不经过交换机直接通过路由器组网,模块收不到pc发的广播包,也不能通信;请教交换机和路由器该如何设置才能让2者通讯呢?
lihao0320 2012-04-17
  • 打赏
  • 举报
回复
我的板子和pc通过交换机连接,然后通过路由器连接到外网的

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧