socket sur une plage d'adresse IP [C] - C - Programmation
Marsh Posté le 19-06-2006 à 11:02:12
si tu veux faire du multicast, alors contente toi de rejoindre ton groupe multicast et d'envoyer la sauce
Marsh Posté le 19-06-2006 à 11:33:58
Et comment je fais si je veux recevoir plusieurs groupes multicast? Ah tu me donnes une idée comment abonner plusieurs adresses à un groupe.
Marsh Posté le 22-06-2006 à 11:58:36
Bonjour, je vous fais part de mes découvertes.
char IP[14]="238.192.23.51";
struct ip_mreq imr;
...
imr.imr_multiaddr.s_addr = inet_addr(IP); //htonl(INADDR_ANY); /* adresse du groupe */
imr.imr_interface.s_addr = htonl(INADDR_ANY); /*adresse locale*/
if (setsockopt(sdr, IPPROTO_IP, IP_ADD_MEMBERSHIP, (void *) &imr, sizeof(struct ip_mreq)) < 0) {
perror("setsockopt - IP_ADD_MEMBERSHIP" );
exit(1);
};
Maintenant je veux écouter toutes les adresses multicast soit de 224.0.0.0 à 239.255.255.255. Comment je fais sans passer par une boucle? Je ne peux m'abonner à toutes les adresses par INADDR_ANY.
Marsh Posté le 19-06-2006 à 10:43:44
Bonjour,
je voudrai savoir si il est possible qu'un client écoute sur plusieurs adresses IP simultanément avec le même socket. Je précise que je suis sur le même port et en UDP pour faire du multicast. Ou bien faut-il créer une socket par adresse?
Par exemple je voudrai écouter la plage d'adresses 239.192.*.*
Merci de poster vos codes sources si possible.
Message édité par Kimilsung le 19-06-2006 à 10:58:59