无法打开多播套接字

时间:2009-12-14 13:51:19

标签: erlang sockets multicast zeroconf

我在Erlang中打开多播套接字以接收消息时遇到问题:

88> gen_udp:open(5353,[{reuseaddr, true}, {ip,{224,0,0,251}},{multicast_ttl,4},{multicast_loop,false},binary]).
{error,eaddrnotavail}

我检查了不同的IP地址和端口以及{active,false}选项,但没有任何帮助。可能是什么原因?

谢谢马蒂亚斯。

1 个答案:

答案 0 :(得分:0)

您是否尝试将选项{add_membership, {Addr, LAddr}}添加到:

  1. Addr是有问题的多播组(例如224.0.0.251)
  2. LAddr是本地接口(例如默认值为0.0.0.0)
  3.   

    1> gen_udp:开(5353,[{reuseaddr,   true},{add_membership,{{224,0,0,   251},{0,0,0,0}}},   {IP,{224,0,0,251}},{multicast_ttl,4},{multicast_loop,FALSE},二进制])。

         

    【OK,#端口< 0.454>}