Site icon EfmSoft

Что означает код errno 100 (EADDRINUSE) в Windows?

 
Также может означать:
КонстантаТипОС
ERROR_TOO_MANY_SEMAPHORESОшибка WindowsWindows
HTTP_STATUS_CONTINUEHTTP-статусЛюбая
ENETDOWNerrnoLinux
EPROTOerrnomacOS
SYMBOLIC_INITIALIZATION_FAILEDКод BSODWindows
Предыдущий Следующий
EPROTO ENETUNREACH

EADDRINUSE

Что означает EADDRINUSE

EADDRINUSE означает, что запрошенная локальная комбинация address/port уже занята или конфликтует с существующим socket binding.

Что проверить

  • Перечислите sockets, уже bound/listening на этот port.
  • Проверьте SO_REUSEADDR/SO_EXCLUSIVEADDRUSE и порядок их установки.
  • Для IPv6 учтите dual-stack binding на ::, который может покрывать IPv4.

Как исправлять

Освободите конфликтующий listener, выберите другой port или настройте reuse согласно модели сервера. Не включайте reuse вслепую там, где требуется единственный владелец endpoint.

Для серверов с частыми перезапусками отдельно проверьте, остаётся ли конфликтующий listener в другом процессе, а не только соединения в TIME_WAIT: TIME_WAIT сам по себе обычно не объясняет занятый listening endpoint при корректной socket policy.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version