Короткий ответ
Клиент чаще выбирает временный исходящий порт автоматически, а сервер слушает известный порт. Один и тот же номер TCP и UDP относится к разным пространствам. VPN-клиент создаёт собственные сокеты для туннеля, но приложения продолжают работать со своими обычными соединениями.
Слушающий и исходящий порт
Сервер ожидает входящие соединения на известном порту. Клиенту система назначает временный исходящий порт, благодаря чему одновременно могут работать тысячи соединений к одному адресу.
Сокет — не физический разъём
Это объект операционной системы с состоянием и очередями данных. Для установленного TCP-соединения важна комбинация исходного и конечного адресов и портов, а не один номер.
Что может блокировать соединение
Firewall, оператор или сервер могут фильтровать адрес, порт или протокол. Ошибка порта отличается от DNS-сбоя: имя уже разрешилось, но транспортное соединение не установилось.
Чек-лист действий
- Сохраните точный текст ошибки и адрес сервиса.
- Проверьте доступность на другой сети.
- Не открывайте входящие порты роутера без необходимости.
- Учитывайте различие TCP и UDP для одного номера.
- Не публикуйте конфигурацию сервера вместе с ключами.
Что часто делают неправильно
- Называть порт отдельным сервером.
- Открывать все порты ради устранения одной ошибки.
- Путать локальный порт приложения и внешний проброс роутера.
- Менять firewall без записи исходных правил.