доброго вечера :)
перевожу я свою сетевуху в PROMISCOUS mode, и она, таки да, говорит, что перевелась. Но по-факту ловит только пакеты предназначенные строго ей...
ioctl(args->sock_in, SIOCGIFFLAGS, &ifr_in);
ifr_in.ifr_flags |= IFF_PROMISC;
if (ioctl(args->sock_in, SIOCSIFFLAGS, &ifr_in)) {
perror("ioctl");
close(args->sock_in);
free(buffer);
return NULL;
}
ioctl(args->sock_out, SIOCGIFFLAGS, &ifr_in);
printf("ift_in = %x, IFF_PROMISC = %d\n", ifr_in.ifr_flags, !!(IFF_PROMISC & ifr_in.ifr_flags));
или anonymous тут был прав, и нужен hub?
[upd] конечно нужен! тупой вопрос, тему можно закрывать :)