Что означает код errno 49 (EADDRNOTAVAIL)?

 
Также может означать:
КонстантаТипОС
KERN_OPERATION_TIMED_OUTКод возврата ядра macOSmacOS
ippStsFeatureNotSupportedСтатус Intel IPPЛюбая
EUNATCHerrnoLinux
EDQUOTerrnoSolaris
PHASE0_INITIALIZATION_FAILEDКод BSODWindows
Предыдущий Следующий
EUNATCH EDQUOT

EADDRNOTAVAIL

Локальный исходный адрес нельзя назначить

EADDRNOTAVAIL означает, что операция запросила локальный адрес, который система сейчас не может использовать. Интерфейс мог потерять этот адрес, выбор исходного адреса может быть неверен для выбранного семейства либо автоматическое выделение локального адреса не нашло пригодного кандидата.

Это проверка локального адреса, а не утверждение, что удалённый узел отключён. Изменение удалённого DNS-имени или порта службы не исправит исходный адрес, который больше не настроен или не принадлежит ожидаемому интерфейсу.

Что записать

  • Установите, возникла ли ошибка при явном bind() или в connect(), когда ядро выбирало временную локальную конечную точку.
  • Сохраните выбранный локальный адрес, семейство адресов, индекс интерфейса, если доступен, и изменения сетевой конфигурации рядом со сбоем.
  • Если код закрепляет исходный адрес, отличайте желаемую политику от фактического состояния интерфейса: VPN, сон и пробуждение или перенумерация адресов могут сделать кэшированное значение недействительным.

Связанные ошибки

EADDRINUSE означает конфликт владения пригодным адресом. ENETUNREACH и EHOSTUNREACH относятся к маршруту до назначения после успешной проверки локальной адресации.

Ссылки


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