Рекомендации по выбору портов для вашего приложения

У меня есть приложение, которое прослушивает порт для получения информации от сценариев на различных клиентских серверах. И мне нужно решить, какой порт я должен назначить приложению для привязки. Я могу просмотреть этот список и узнать, какие порты не использовать. assign, но я не понимаю, как разработчики решают назначать порты своим приложениям. Являются ли они просто случайными или существуют рекомендации по использованию определенных диапазонов портов для разных типов приложений?


person HyderA    schedule 22.04.2011    source источник


Ответы (2)


Это в основном случайно. Выберите порт из одного из неназначенных/частных диапазонов в списке IANA и надейтесь на лучшее.

Возможно, вы захотите спросить администраторов сервера и сети, есть ли порт, который они хотят, чтобы вы использовали, поскольку им может потребоваться настроить брандмауэры/маршрутизаторы/и т. д. (Они могут даже знать, какие порты используются, и дать вам окончательный ответ о пригодном для использования порте, но это было бы нетипично.)

Если ваше приложение не может открыть порт для прослушивания, вы должны убедиться, что кто-то увидит сообщение об ошибке. Вероятно, это означает, что что-то еще использует порт, поэтому вам необходимо разрешить конфликт. Точно так же, если клиенты подключаются к чему-либо через этот порт и получают «странные» выходные данные, убедитесь, что сообщение об ошибке передается надлежащим образом.

И не запрограммируйте этот номер порта ни в одном из ваших приложений. Сделайте его настраиваемым с помощью параметра командной строки, конфигурационного файла, переменной среды и т. д. Если вам сложно изменить его, вам обязательно нужно его изменить.

person Kristopher Johnson    schedule 22.04.2011

Ваша главная цель — получить тот, который обычно не используется, кроме того, выберите то, что вам нравится.

Иногда я проявляю творческий подход и нахожу способ вычислить значимую, но непонятную ссылку на приложение. Часто я преобразовываю символы в имени приложения в значения ascii, складываю их и, в зависимости от возможного значения, умножаю на другое число, чтобы получить его в диапазоне 1024-65000.

person Alan Barber    schedule 22.04.2011
comment
ПОЦЕЛУЙ я говорю. Закройте глаза и выберите первое число, которое вы визуализируете;) - person jgauffin; 22.04.2011