Códigos SIP

SIP 403 Forbidden: o que significa e como resolver

Resposta curta: SIP 403 Forbidden significa que o servidor entendeu a requisição e se recusou a atendê-la, e autenticar de novo não resolve. Em troncos no Brasil, a causa mais comum é a operadora não reconhecer o número de origem enviado. Confira o número no From e no P-Asserted-Identity e confirme com a operadora quais números o tronco pode usar.

SIP 403 na referência
Código403
Nome oficialForbidden
Classe4xx: falha da requisição
Definido emRFC 3261
Causas Q.850 que costumam vir junto21 (Call rejected), 55 (Incoming calls barred within CUG), 57 (Bearer capability not authorized), 87 (User not member of CUG)

Como o Monitor trata o SIP 403

A leitura depende do que deve atender o número, a pergunta que a 2N5 responde ao cadastrar cada circuito. Estas são as regras que o produto aplica hoje, geradas da mesma função que julga cada chamada de teste.

O que deve atender o númeroLeitura
Uma saudação ou mensagem gravada (a URA)Fora do ar
Um tom de teste ou serviço de ecoFora do ar
Outro: pode tocar ou ser atendidoFora do ar

O que o Monitor registra para uma URA: A operadora recusou esta chamada. A causa mais comum é a operadora não reconhecer o número de onde a chamada vem; também pode significar que este número está bloqueado ou suspenso, ou que a conta está sem crédito (SIP 403).

Uma chamada lida como Fora do ar não alerta ninguém sozinha: ela é repetida 3 vezes, a cada 2 minutos, e só 4 falhas seguidas abrem um incidente, com o código SIP e a causa Q.850 de cada chamada como evidência para a operadora. No ritmo padrão, cada circuito é testado a cada 15 minutos.

Se a operadora devolve o SIP 403 ao registro da conta de chamadas da 2N5, antes de qualquer chamada, o teste fica sem visibilidade: é um problema do lado da 2N5, não conta contra o circuito e não avisa o cliente.

O que significa o SIP 403 na prática?

Pela RFC 3261, o SIP 403 Forbidden indica que o servidor entendeu a requisição, mas se recusa a atendê-la. A autorização não vai ajudar e a requisição não deveria ser repetida. É diferente do SIP 401: no 401 o servidor ainda não sabe quem você é; no 403 ele sabe e decidiu negar.

Em troncos SIP no Brasil, o 403 é um dos códigos mais frequentes quando “o tronco registra, mas não liga”. A operadora aceitou o registro ou o IP, mas uma regra de negócio barrou aquela chamada: o número de origem, o destino, o estado da conta ou o endereço de onde a chamada veio. A frase de motivo e o header Warning às vezes dizem qual regra foi aplicada, e vale ler os dois antes de abrir chamado sobre o erro 403 SIP.

Causas comuns no Brasil

  • Número de origem (identificação do chamador) que não pertence ao tronco, enviado no From ou no P-Asserted-Identity por um ramal ou uma regra do PABX.
  • Número de origem em formato diferente do esperado pela operadora, por exemplo com ou sem DDD, com 0 à frente ou em E.164 (+55...).
  • Linha ou tronco bloqueado ou suspenso, por exemplo por falta de pagamento ou por um bloqueio administrativo.
  • Plano pré-pago ou com franquia sem crédito disponível para aquele tipo de chamada.
  • Destino bloqueado no contrato: celular, longa distância, internacional ou números de tarifação especial.
  • IP de origem não autorizado num tronco por IP, depois de uma troca de link de internet ou de uma migração do Asterisk, Issabel, FreePBX ou 3CX.

Como diagnosticar

  1. Capture com sngrep port 5060 e anote a frase de motivo do 403, o header Warning e o Reason: Q.850;cause=21, se houver (Q.850 cause 21, chamada rejeitada).
  2. No Asterisk ou FreePBX, ative pjsip set logger on (ou sip set debug on no chan_sip) e confira os headers From, P-Asserted-Identity e Remote-Party-ID do INVITE.
  3. Ligue para o mesmo destino usando o número principal do tronco como origem. Se funciona, o problema é o número de origem do ramal ou da rota.
  4. Ligue para destinos de tipos diferentes (fixo local, celular, longa distância) para ver se o bloqueio é por tipo de destino.
  5. No 3CX, ative o “Verbose logging” e revise o campo de identificação de saída configurado no tronco e na regra de saída.
  6. Confirme no portal ou com o financeiro da operadora se a conta está ativa e com crédito.

O que mandar para a operadora

  • Data e hora com fuso horário de algumas tentativas recusadas.
  • Número de origem (A) e número chamado (B), exatamente como saíram no INVITE.
  • Call-ID de pelo menos uma chamada recusada.
  • A linha completa da resposta, com frase de motivo, header Warning e Reason com a causa Q.850.
  • O IP público de onde as chamadas saem e quantas tentativas falharam.
  • O pcap da captura, quando disponível.

Perguntas frequentes

Por que recebo 403 só em algumas chamadas?

Quando o 403 aparece só para certos destinos, a operadora costuma estar bloqueando aquele tipo de chamada no seu contrato, como celular, longa distância, internacional ou números de tarifação especial. Quando aparece só para certos ramais, o problema geralmente é o número de origem que esses ramais enviam, que não pertence ao tronco.

Qual causa Q.850 acompanha o 403?

Pela RFC 3398, a Q.850 cause 21 (Call rejected) é a mais comum, e o 403 é traduzido de volta como cause 21. Também são convertidas em 403 as causas 55 e 87, ligadas a grupos fechados de usuários, e a 57, capacidade de portadora não autorizada. Na prática, a cause 21 é a que você mais vai ver.

Saiba disso antes dos seus clientes

O Monitor liga para cada circuito de voz o dia todo e entrega cada falha com o código SIP e a causa Q.850 como prova.