Помилка

Мережева помилка 10060: "Connection timed out"


Опис помилки

Клієнтська сторона не отримала відповіді від сервера протягом відведеного часу, зазвичай при спробі встановити з'єднання TCP. Найчастіші причини:


1. Віддалений сервер недоступний:

  • сервер не увімкнений, не слухає потрібний порт, або відповідає надто повільно;
  • вказано неправильну IP-адресу сервера, доменне ім'я або порт для підключення;
  • ви підключаєтеся за IPv6 адресою, а сервер працює за IPv4 чи навпаки;
  • програма на сервері може бути "завислою" або впала.


2. Втрата з'єднання:

  • немає з'єднання з мережею (не підключений або несправний мережевий кабель або Wi-Fi);
  • якість лінії зв'язку дуже погана і клієнт не встигає "достукатися" до сервера прийнятний час.


3. Заважає брандмауер, антивірус, VPN, NAT або проксі

  • ваші спроби підключення блокує антивірус або брандмауер, порт заблокований (локальний, віддалений або між ними);
  • деякі провайдери фільтрують порти (дуже часто, наприклад, 25 для SMTP);
  • антивірус помилково "влазить" у трафік між клієнтом та сервером і "ламає" його.


4. Проблеми маршрутизації:

  • ви намагаєтеся підключитися до адреси, яка недоступна з вашої мережі (помилки роутингу);
  • пакети "губляться" дорогою, хоча сервер доступний;
  • внутрішні дозволи DNS посилаються на IP, який недоступний з поточної мережі.

 

Вирішення проблеми

Послідовність дій під час перевірки зв'язку та конфігурації мережі має бути такою:

 

1. Запустіть cmd.exe

 

Відкрийте консоль. Меню "Пуск", "Виконати" (або Win+R), і запустіть cmd:

 

Запуск консолі Windows (cmd.exe)

 

2. Перевірка доступності комп'ютера сервера

 

У вікні консолі виконайте команду ping <ip_mychat_сервера> або tracert <хост_сервера>:

 

Виконання команди ping в консоли Windows

 

Якщо зв'язок є, переходимо до наступного пункту, якщо ні (пишеться "Перевищений інтервал очікування для запиту") — перевіряємо, чи увімкнений MyChat сервер і чи доступний комп'ютер в мережі. Також варто перевірити фізичне підключення комп'ютера та комп'ютера з MyChat Server до мережі. Якщо є втрати пакетів, також зверніть увагу — це може бути через поганий зв'язок (повільний канал, нестабільне з'єднання через супутник, проблеми в мережі з неправильно працюючим обладнанням або драйверами).


Якщо є втрати пакетів, запустіть ping <server_address> -t -l 1024. Протестуйте з'єднання пакетами по одному кілобайту протягом хоча б декількох хвилин.

 

3. Перевіряємо підключення до сервера за допомогою Telnet Client

 

Стандартно в системі він не встановлений, тому потрібно встановити Telnet Client через командний рядок (працює у Windows 10, 11 та Windows Server): dism /online /Enable-Feature /FeatureName:TelnetClient (підвищених привілеїв не потрібно).


Або через стандартний набір інструментів "Програми та компоненти" — "Увімкнення або вимкнення компонентів Windows":


Пошук встановленого Telnet Client у Windows

 

Шукаємо його у списку та встановлюємо:

 

Установка Telnet Client в Windows

 

Якщо відповіді немає (видає помилку з'єднання):

 

Виконання telnet в консолі Windows

 

Це означає, що неправильно налаштований роутер або файрвол, або порт 2004 заблокований антивірусом (на сервері, на клієнтському комп'ютері або десь між ними, якщо складна маршрутизація).

 

Зазвичай у випадках проблема вирішується додаванням MyChat Client і MyChat Server у виключення фаєрвола (брандмауера) і антивіруса. Або, для тесту, можна спробувати тимчасово відключити фаєрвол. Особливо це критично на серверній стороні — Windows Defender часто блокує порти, що слухають.


Стандартний перелік портів, які використовує MyChat.

 

4. Переконайтеся, що сервер слухає цей порт.


На сервері потрібно виконати в консолі netstat -an | find ":2004" - має бути статус LISTENING.


Також перевірте, що IP-адреса і порт, до яких підключається клієнт, ті самі, що слухає сервер (bind). Також переконайтесь, що в мережевих налаштуваннях MyChat Server встановлено "слухати все" (listen all), тому що якщо ви поставите там один мережевий інтерфейс, а підключатиметеся на інший, з іншої підмережі, з'єднання не працюватиме. Стандартно сервер слухає всі доступні локальні мережеві інтерфейси:


Набір мережевих налаштувань сервера MyChat messenger