IPV6 kullanarak IPV4 yayın eşdeğerini nasıl yapacağını anlamaya çalışıyorum.IPV6 bağlantı yerel çok noktaya yayın
Engellemeyen bir IPV6 UDP soketi oluşturuyorum.
yan yayın itibareni anlamıyla sadece dinlemek tarafında port 12346.
üzerinde sendto "FF02 :: 1" yapıyorum ben şu bu yüzden gruba katılmanız gerekiyor keşfetti:
ipv6_mreq membership;
memset(&membership.ipv6mr_multiaddr, 0, sizeof(in6_addr));
membership.ipv6mr_multiaddr.u.Word[0] = htons(0xff02);
membership.ipv6mr_multiaddr.u.Word[7] = htons(0x0001);
membership.ipv6mr_interface = 0;
if(enable)
{
if (0 != setsockopt(m_Socket, SOL_SOCKET, IPV6_JOIN_GROUP, (char*)&membership, sizeof(ipv6_mreq)))
{
DisplayError();
return false;
}
}
Ancak setsockopt daima "WSAENOPROTOOPT" değerini döndürür. Niye ya? Bu konuda bana yardım eden var mı? Tam bir kaybettim.
Düzenleme: "IPPROTO_IPV6" düzeyini değiştirdim ancak şimdi bir "WSAEINVAL" alıyorum.
@bdonlan: Şerefe. Gonan kendim yaptım ama unuttum :) – Goz