Смысл ошибки
Сообщение «Попытка подключения не удалась, потому что от другого компьютера за требуемое время не получен нужный отклик» — это WSAETIMEDOUT, код 10060. Программа отправила запрос на установление соединения и не получила никакого ответа в отведённое время. Не отказ, а тишина.
Это существенно: если бы порт был закрыт, вы бы увидели отказ (код 10061). Тайм-аут же значит, что пакеты либо не дошли, либо ответ не вернулся. Чаще всего так ведёт себя сетевой фильтр, который молча отбрасывает пакеты, или недоступный узел.
Время ожидания зависит от программы и системы, обычно оно составляет от нескольких секунд до десятков секунд.
Причины по убыванию вероятности: Ошибка сокета 10060
Самая распространённая — брандмауэр на пути соединения, который просто отбрасывает пакеты: на вашем компьютере, на роутере, на сервере или у провайдера. Второе — узел выключен, недоступен либо указан неверный адрес.
Третья причина — проблемы связи: обрыв кабеля, слабый Wi-Fi, перегруженный канал, из-за которых пакеты теряются. Четвёртая — неверный порт или неверный маршрут: адрес из другой подсети без шлюза, ошибка в настройках промежуточного сервера.
Пятая — сервер перегружен и не успевает принимать новые соединения, очередь подключений заполнена.
Порядок проверки: Ошибка сокета 10060
Проверьте общее наличие сети: откройте любой сайт. Затем выполните ping для нужного адреса. Если ответ есть, узел жив, и ищите причину в порте или фильтрации. Если нет, это может быть как выключенный узел, так и запрет на ответы на ping, поэтому опирайтесь ещё и на другие способы.
Проверьте порт командой Test-NetConnection в PowerShell с адресом и номером порта. Результат покажет, удалось ли соединение. Если нет, попробуйте с другого устройства и из другой сети: совпадение результатов говорит о проблеме на стороне сервера.
Отдельно посмотрите настройки промежуточного сервера в программе и системе. Неверный промежуточный сервер даёт такой же тайм-аут, потому что запрос уходит в никуда.
Как исправить на своей стороне
Проверьте адрес и порт в настройках приложения и исправьте опечатки. Временно отключите брандмауэр и антивирус для теста, а при подтверждении добавьте правило для нужной программы или порта.
Переключитесь с Wi-Fi на кабель, проверьте роутер и перезагрузите его. Если работаете в корпоративной сети, узнайте у администратора, разрешён ли исходящий трафик на нужный порт.
Если вы поднимаете сервер сами, убедитесь, что порт проброшен на роутере, что программа слушает нужный адрес и что брандмауэр сервера пропускает входящие соединения.
Тайм-аут и настройки роутера
Если вы сами запускаете сервер дома, тайм-аут при подключении снаружи чаще всего связан с роутером. Проверьте, что порт проброшен на верный внутренний адрес, а этот адрес закреплён за компьютером и не меняется. Если адрес поменялся после перезагрузки, проброс указывает в пустоту, и запросы получают тишину.
Другой нюанс — провайдер, выдающий общий адрес нескольким абонентам: входящие соединения в таком случае недоступны, сколько бы вы ни настраивали проброс. Уточните у провайдера, какой у вас тип адреса, и не тратьте время на настройки, которые не могут сработать.
Не забывайте про промежуточный сервер и корпоративные сети: в них исходящие соединения часто разрешены только на ограниченный набор портов. Тайм-аут на нестандартном порту может означать не поломку, а действующее правило. Уточните у администратора, разрешён ли нужный порт, и не пытайтесь менять сетевые настройки, если политика организации этого не предусматривает.
Когда виноват сервер
Если с любого устройства и любой сети ответа нет, вероятно, сервер выключен, завис или закрыт брандмауэром для всех. Проверьте статус сервиса, если у него есть публичная страница состояния.
Если ошибка появляется только в часы пик, сервер, возможно, перегружен. Тогда помогает повтор попытки позже.
В любом случае сообщайте владельцу сервиса точное время и адрес. По этим данным легче найти запись в журналах и проверить, доходил ли ваш запрос до сервера.