Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

SIP_421_EXTENSION_REQUIRED IP-Телефония и СКУД

SIP Error 421 Extension Required: решение проблем с обязательными расширениями SIP

Обновлено: 24.08.2026
  • Сервер сбрасывает запрос INVITE или REGISTER с кодом 421 Extension Required.
  • В ответе сервера содержится заголовок Require со списком расширений, которые клиент обязан задействовать.
  • Клиентские устройства (IP-телефоны, домофоны) не могут зарегистрироваться на облачной АТС или операторском SBC.

1. Анализ требований сервера в SIP-ответе

Проанализируйте полученный ответ 421 с помощью sngrep:

SIP/2.0 421 Extension Required
Require: 100rel, timer
Server: Carrier-Edge-SBC

Ошибка 421 сообщает, что политика безопасности или архитектура сервера требует обязательного использования расширений (в примере — надежная доставка ответов 100rel и таймеры сессий timer), которые клиент не указал в своем заголовке Supported.

2. Включение требуемых расширений в FreePBX / Asterisk

Для включения генерации заголовка Supported: 100rel, timer отредактируйте /etc/asterisk/pjsip.conf:

[trunk-carrier]
type=endpoint
100rel=yes
timers=yes
timers_min_se=90
timers_sess_expires=1800

3. Настройка расширения Outbound (RFC 5626) и Path (RFC 3327) в Kamailio

Если registrar-сервер требует заголовок Path для маршрутизации NAT, убедитесь, что прокси добавляет его в запрос регистрации:

route[REGISTRAR] {
    if (is_method("REGISTER")) {
        # Добавление заголовка Path
        add_path();
        save("location");
        exit;
    }
}

4. Конфигурация оконечных абонентских устройств

В настройках учетной записи IP-телефона активируйте:

  • PRACK (100rel): включите переключатель Enable PRACK / 100rel.
  • Session Timers: активируйте Enable Session Timer (RFC 4028).
💡 Практика специалистов: При работе с транками мобильных операторов (IMS) требование 100rel и timer является жестким стандартом 3GPP. Убедитесь, что ваш пограничный шлюз не вырезает заголовки Supported при транзите.

Частые вопросы (FAQ)

Чем ошибка 421 отличается от 420?

Ошибка 420 означает, что клиент потребовал от сервера опцию, которую сервер не умеет. Ошибка 421 означает обратное: сервер требует от клиента обязательного использования конкретного расширения, которое клиент забыл или не умеет поддерживать.

Обязан ли сервер присылать список расширений в ответе 421?

Да, согласно RFC 3261 раздел 21.4.19, ответ 421 обязан содержать заголовок 'Require', перечисляющий расширения, которые должны быть активированы клиентом.

Почему операторы требуют обязательного включения Session Timers (timer)?

Таймеры сессий позволяют операторам автоматически выявлять и освобождать зависшие вызовы (ghost calls), возникающие при внезапном разрыве связи без отправки сообщения BYE.

Что делать, если старый аппаратный IP-телефон не поддерживает требуемое сервером расширение?

Единственный способ — отключить обязательность данного расширения на стороне сервера/SBC (перевести из режима 'required' в режим 'supported' или 'optional').

Полезные материалы
Рекомендуем