c# 特定源组播该怎么写?

dota3c 2014-06-12 12:31:24
我在网上查到的是这样写的,但是发现收不到数据,但是登陆交换机发现组播路由表已经建立起来了,接收的有,但是转发是0,
这段代码哪里有问题。
文章地址:http://blog.csdn.net/guoweifeng1987/article/details/11715903

Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 5980);
s.Bind(ipep);
byte[] membershipAddresses = new byte[12]; // 3 IPs * 4 bytes (IPv4)
Buffer.BlockCopy(multicastIp.GetAddressBytes(), 0, membershipAddresses, 0, 4); //组播地址
Buffer.BlockCopy(sourceIp.GetAddressBytes(), 0, membershipAddresses, 4, 4); //组播源地址
Buffer.BlockCopy(localIp.GetAddressBytes(), 0, membershipAddresses, 8, 4); //本地接收地址
socket.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddSourceMembership, membershipAddresses);
...全文
145 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

110,532

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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