Ошибки · Решение
TLS alert 120 no_application_protocol: что означает и как исправить
ALPN negotiation не нашла прикладной протокол, который поддерживают обе стороны.
Короткий ответ
TLS alert 120 no_application_protocol. ALPN negotiation не нашла прикладной протокол, который поддерживают обе стороны. Сверьте код с официальной поддержкой производителя и выполните только безопасные шаги.
Что означает ошибка
ALPN negotiation не нашла прикладной протокол, который поддерживают обе стороны.
Возможные причины
- Клиент предлагает только h2, а endpoint настроен лишь на http/1.1, или наоборот.
- TLS proxy не передаёт/не поддерживает нужный ALPN identifier.
- Сервис ожидает специализированный ALPN, отсутствующий в ClientHello.
Что проверить
- Проверьте ALPN list в ClientHello и список протоколов endpoint.
- Сравните результат на прямом backend и через proxy/load balancer.
- Убедитесь, что приложение действительно слушает протокол, который рекламирует TLS слой.
Безопасные шаги
- Настройте пересечение ALPN протоколов на клиенте и сервере.
- Исправьте TLS terminator, если он удаляет или подменяет ALPN.
- После изменения подтвердите negotiated protocol в handshake log.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- При no_application_protocol приложите client ALPN list и server ALPN policy владельцу ingress/TLS endpoint.
Похожие ошибки
- /errors/tls-alert-unexpected-message/
- /errors/tls-alert-bad-record-mac/
- /errors/tls-alert-record-overflow/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.