SIP 301 Moved Permanently vs 421 Extension Required
SIP 301 (Moved Permanently) is a 3xx Redirection response, while 421 (Extension Required) is a 4xx Client Failure response. 301 indicates that the user can no longer be found at the address in the Request-URI. The client should direct future requests to the new address in the Contact header. In contrast, 421 means that the UAS needs a particular extension to process the request but the extension is not listed in the Supported header.
Description
The user can no longer be found at the address in the Request-URI. The client should direct future requests to the new address in the Contact header.
When You See It
When a user has permanently changed their SIP address. All future calls should be directed to the new URI.
How to Fix
Update your address book or routing tables to use the new Contact URI provided in the response.
Description
The UAS needs a particular extension to process the request but the extension is not listed in the Supported header.
When You See It
When the server requires a specific SIP extension that the client did not indicate support for.
How to Fix
Add the required extension to the Supported header and ensure your UA implements it. Check the response for which extension is needed.
Key Differences
301 is a 3xx Redirection response, while 421 is a 4xx Client Failure response.
SIP 301: The user can no longer be found at the address in the Request-URI. The client should direct future requests to the new address in the Contact header.
SIP 421: The UAS needs a particular extension to process the request but the extension is not listed in the Supported header.
You encounter 301 when when a user has permanently changed their SIP address. All future calls should be directed to the new URI.
You encounter 421 when when the server requires a specific SIP extension that the client did not indicate support for.
When to Use Which
For 301 (Moved Permanently): Update your address book or routing tables to use the new Contact URI provided in the response. For 421 (Extension Required): Add the required extension to the Supported header and ensure your UA implements it. Check the response for which extension is needed.