请问当socket绑定到一个指定的ip地址后为什么不能接受广播数据?

zhuyhu 2005-11-11 12:49:39
由于考虑到我的程序要在多网卡的机器上运行,所以我将网卡的ip地址绑定到了socket
server_addr.sin_addr.s_addr = inet_addr(servIP);但是这样就无法收到广播数据?同时我也绑定到了一个广播地址接受时发现每次客户端来的数据都连续接受两次。我想是因为我的客户端在启动时还不知道自己的IP地址所以发的广播地址是255.255.255.255,这样在服务器端有两块网卡就连续接受两次数据包,所以我想怎样才能让服务器端只接受一次广播数据包?同时在绑定到广播地址后也无法接受单播数据,这是为什么?能有好办法解决这问题吗?
...全文
317 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuyhu 2005-11-11
  • 打赏
  • 举报
回复
回复人: x86(大雪) ( ) 信誉:120 2005-11-11 15:16:38 得分: 0



不知道多播可以么?

能否介绍一下关于多播的用法?


x86 2005-11-11
  • 打赏
  • 举报
回复
不知道多播可以么?

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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