Bind 421 to one request and PJSIP leg
Record the timestamp and timezone, symptom, request method and Request-URI, PJSIP endpoint or trunk, Call-ID, CSeq, top Via branch, every Supported token, responder and every Require token in the 421 response. Determine whether Asterisk generated 421 for an inbound request or received it on an outbound leg. Do not assign the response to a phone, Asterisk or a provider from a display label alone.
With authorization, enable pjsip set logger on only for one bounded reproduction, then disable it and protect identities, authentication material, numbers and bodies. Correlate Asterisk's inbound and outbound channels without treating the back-to-back user agent as one end-to-end transaction.
Find the required token and prove real capability
Compare Require in the response with Supported in the original request byte-for-byte and look up the token in the current IANA registry. Establish which endpoint, provider, SBC, application or template requires the extension and why baseline SIP is insufficient. A 421 without Require, a token already advertised or an unregistered token remains interoperability evidence.
Do not fix the status by adding a header alone. Prove that the sending endpoint implements the extension's required behavior and that the loaded configuration will advertise it on the affected leg. Global Supported injection can falsely claim capability and shift the incident into a later transaction.
Inspect Asterisk 100rel policy when that token is named
Current res_pjsip documentation gives the endpoint 100rel option four behaviors: no, required, peer_supported and yes. As a UAS, required rejects an incoming request that did not advertise 100rel with 421; as a UAC it places 100rel in Require on outgoing requests. Other modes advertise, refuse or use reliable provisional responses under their documented conditions.
Inspect the loaded endpoint object and the actually deployed Asterisk release before changing the setting. In FreePBX, retain GUI and module ownership rather than editing generated PJSIP configuration as a durable fix. A policy on one endpoint does not prove the same policy on a provider or phone leg.
Follow the reliable provisional exchange
RFC 3262 uses 100rel for reliable provisional responses and PRACK. When 100rel is required, preserve the new request's Supported value, each reliable 18x response, RSeq value, PRACK request, RAck correlation, response to PRACK and final INVITE response. Capability advertisement alone is incomplete if the exchange does not follow.
Keep missing or mismatched PRACK, 408 or 481 responses and final call failure distinct from the original 421. Early-media audio can coexist with this negotiation, but it does not turn 100rel into an SDP, codec, RTP, NAT or session-timer setting.
Correct narrowly and test required and baseline paths
Correct only the demonstrated owner: an endpoint that should truthfully advertise the extension, an Asterisk endpoint policy that unnecessarily requires it, or a peer whose requirement conflicts with the agreed service. Preserve the prior value and rollback trigger. Do not weaken a genuinely required semantic or advertise unsupported behavior just to remove 421.
Repeat one authorized request and confirm Supported, Require, provisional responses, PRACK where applicable, the final response and user-visible result. Also verify the explicit failure or fallback expected for a peer that truly lacks the extension. No PBX, endpoint, proxy, option tag, 100rel policy, provisional response, PRACK exchange, media path or live call was tested for this guide.
pjsip show endpoint <endpoint>
pjsip set logger on
# Reproduce one authorized request and capture Supported, 421 and Require.
pjsip set logger offSources & applicability
Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.
- IETF RFC 3261: applying extensions and 421 ↗
- IETF RFC 3262: reliability of provisional responses ↗
- Asterisk res_pjsip endpoint 100rel option ↗
- Asterisk collecting debug information ↗
- IANA SIP option-tag registry ↗
Examples require adaptation to your topology. No live PBX or hardware testing is claimed.