Страница 1 из 1

UDP-сокеты с одинаковым портом

Добавлено: 2018-09-12 12:31:24
Abyrvalg
Привет, All!

Пишу под Фрёй маленькую программку, которая должна слушать мультикасты (UDP). В сокетах особо не разбираюсь, поэтому тупо скопипастил какой-то пример из интернетов. В нём, среди прочего, есть вот такой фрагмент:

Код: Выделить всё

      u_int yes=1;

      /* allow multiple sockets to use the same PORT number */
      if (setsockopt(fd,SOL_SOCKET,SO_REUSEADDR,&yes,sizeof(yes)) < 0) {
         perror("Reusing ADDR failed");
         exit(1);
      }
И тем не менее, если я запускаю параллельно две копии программы и заставляю слушать их разные мультикасты с одним и тем же портом (напр., 235.5.2.6:1234 и 235.5.2.211:1234), то более поздний экземпляр программы тут же вываливается с ошибкой bind: Address already in use.

Как это можно побороть?

UDP-сокеты с одинаковым портом

Добавлено: 2018-12-01 23:08:17
Alex Keda
а вы уверены что оно биндится к разным адресам?
больше похоже что к одному