Russian Qt Forum

Qt => Вопросы новичков => Тема начата: billidean от Февраль 07, 2016, 20:47



Название: udp-сокеты и доступ к портам
Отправлено: billidean от Февраль 07, 2016, 20:47
Добрый день всем.
Пишу программу работы по UDP по разным портам, используются порты 11681-11683, и 1024-1026.
Столкнулся с такой проблемой: при запуске программы из креатора нет приема данных с портов 1024-1026, по портам 11681-11683 прием идет стабильный. Сниффер показывает приход данных на комп с адресами портов 1024-1026, но программа не срабатывает на них.
Долго курил :) ... Затем взял полученный .ехе-шник, поместил в отдельную папку, кинул туда библиотеки... запустил от имени администратора, и все заработало нормально по всем портам.

Кто может подсказать манипуляции, которые позволят предоставить админ.-права программе при запуске её из креатора. Потому что постоянно копировать .ехе-файл в другую папку не есть гуд.


Название: Re: udp-сокеты и доступ к портам
Отправлено: kuzulis от Февраль 07, 2016, 21:23
1. Вообще-то для юзерских вещей зарезервированы порты с номерами > 40000, ЕМИП
2. Нет разницы при работе от администратора или пользователя.
3. UDP сообщения вообще могут не доходить
4. Возможно проблемы с фаерволом.

Цитировать
Кто может подсказать манипуляции, которые позволят предоставить админ.-права программе при запуске её из креатора.

Запустить сам криэйтор от администратора?


Название: Re: udp-сокеты и доступ к портам
Отправлено: billidean от Февраль 08, 2016, 06:18
Запуск креатора от имени админа тоже пробовал, не помогало.
Если бы UDP-пакеты не доходили, я бы наверное и в сниффере их не видел.

Мне вообще не понятно, что происходит, почему именно для этих портов происходит такая ситуация:-(:-(

У меня есть еще один проект, более старый, который работает с этими же портами... собственно это почти тот же самый проект, только начальная его версия. Так вот при запуске его из креатора работа со всеми этими портами ведется нормально.

Я просто в ауте от такого стечения обстоятельств.


Название: Re: udp-сокеты и доступ к портам
Отправлено: Bepec от Февраль 08, 2016, 10:34
Неверно. Сниффер включает неразборчивый режим и принимает абсолютно все пакеты проходящие через сетевую карту. А вам нужно просто сравнить пакеты, которые принимаются программой и которые не принимаются. В различии и будет ответ.


Название: Re: udp-сокеты и доступ к портам
Отправлено: qate от Февраль 08, 2016, 12:49
1. каков результат bind в случаи неприема ?
2. что говорит netstat до и после запуска программы ?
3. выключен ли firewall ?
4. mac адреса не меняются ?


Название: Re: udp-сокеты и доступ к портам
Отправлено: Racheengel от Февраль 08, 2016, 15:57
Конечно, маловероятно, но похоже на то, что креатор каким-то образом сам использует данные порты...
А когда запущен креатор И отдельно программа - она работает или нет?


Название: Re: udp-сокеты и доступ к портам
Отправлено: qate от Февраль 08, 2016, 16:06
Конечно, маловероятно, но похоже на то, что креатор каким-то образом сам использует данные порты...
А когда запущен креатор И отдельно программа - она работает или нет?

нет необходимости гадать, если есть команда netstat


Название: Re: udp-сокеты и доступ к портам
Отправлено: billidean от Февраль 08, 2016, 19:47
В-общем, на сегодняшний день ситуация такая - независимо от того как программа запущена, из креатора или сама по себе, даже и без админ.прав, она не принимает пакеты на портах 1024-1026 до тех пор, пока не запустишь запись логов в WireShark'e  :-\ :-\ :-\

Как только запускаю WireShark и стартую запись потока, то программа работает на ура.

!!!?????


Название: Re: udp-сокеты и доступ к портам
Отправлено: qate от Февраль 09, 2016, 12:37
чтото в твоей системе, разбираться придется самостоятельно
и всеже неясно зачем используются порты 1024-1026, см. https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers


Название: Re: udp-сокеты и доступ к портам
Отправлено: billidean от Февраль 09, 2016, 21:59
Нашел в инете про доступные для приложений порты, плюс ссылка от qate помогла (спасибо). Выбрал другие порты и все стало хорошо.