我是靠谱客的博主 过时时光,最近开发中收集的这篇文章主要介绍ubuntu下组播问题总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近公司项目做跨平台,在linux下遇到了组播数据接收的问题总结。

程序大概讲下,服务器A通过组播发出数据,服务器B接收A发出的组播数据,windows下收发一切正常。

在向linux(ubuntu16.04)移植时,服务器B接收不到组播数据,使用tcpdump是可以抓到组播数据的。

尝试了网上找到的很多方法,都没有解决,最后用了下面方法可以收到数据了:

1.组播地址加到路由表。 eg : route add -net 224.0.0.0 netmask 224.0.0.0 enp4s0

2.路由表增加一个地址为0.0.0.0且掩码0.0.0.0的默认路由。 eg : route add -net 0.0.0.0 netmask 0.0.0.0 enp4s0

3.程序中接收端socket绑定的本机地址改为0.0.0.0

运行OK。

从现象看还是路由表配置的问题,暂且如此修改可以收到数据了,收不到数据的根本原因还需调查。



最后

以上就是过时时光为你收集整理的ubuntu下组播问题总结的全部内容,希望文章能够帮你解决ubuntu下组播问题总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部