Вы можете слушать на любом порту, который вы хотите; Как правило, пользовательские приложения должны прослушивать порты 1024 и выше (через 65535). Главное, если у вас есть переменное число слушателей, это выделить диапазон для вашего приложения - скажем, 20000-21000, и CATCH EXCEPTIONS . Именно так вы узнаете, является ли порт непригодным (используется другим процессом, другими словами) на вашем компьютере.
Однако в вашем случае у вас не должно возникнуть проблем с использованием одного жестко закодированного порта для прослушивателя, если вы печатаете сообщение об ошибке в случае сбоя привязки.
Также обратите внимание, что большинство ваших сокетов (для подчиненных) не обязательно должны быть явно привязаны к определенным номерам портов - только сокеты, которые ждут входящих соединений (как, например, ваш ведущий здесь), должны быть сделаны слушателем и привязаны к порту. Если порт не указан для сокета до его использования, ОС назначит для него используемый порт. Когда мастер хочет ответить подчиненному, который отправляет ему данные, адрес отправителя становится доступным, когда слушатель получает данные.
Я полагаю, вы будете использовать UDP для этого?