O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

Neste artigo, vamos abordar os fundamentos da captura e análise do tráfego SIP gerado pelo PBX 3CX. O artigo é destinado a administradores de sistema iniciantes ou usuários comuns responsáveis pela manutenção da telefonia. Para um estudo mais profundo do tema, recomendamos seguir Curso Avançado de Treinamento 3CX.

O 3CX V16 permite capturar tráfego SIP diretamente através da interface web do servidor e salvar no formato padrão PCAP do Wireshark. Você pode anexar o arquivo de captura ao entrar em contato com o suporte técnico ou baixá-lo para análise pessoal.

Se o 3CX estiver em execução no Windows, é necessário instalar o Wireshark manualmente no servidor 3CX. Caso contrário, ao tentar capturar, você receberá a seguinte mensagem.
O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

Em sistemas Linux, a ferramenta tcpdump é instalada automaticamente durante a instalação ou atualização do 3CX.

Captura de tráfego

Para iniciar a captura, vá à seção da interface Principal > Eventos SIP e selecione a interface em que deseja realizar a captura. Também é possível capturar tráfego em todas as interfaces simultaneamente, exceto nas interfaces de tunelamento IPv6.

O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

No 3CX para Linux, é possível capturar tráfego para o host local (lo). Essa captura é usada para analisar as conexões de clientes SIP por meio da tecnologia 3CX Tunnel e Session Border Controller.

O botão 'Captura de tráfego' inicia o Wireshark no Windows ou tcpdump no Linux. Nesse momento, você deve reproduzir rapidamente o problema, pois a captura sobrecarrega o processador e ocupa espaço considerável no disco.  
O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

Preste atenção nos seguintes parâmetros da chamada:

  • O número de onde foi feita a chamada, para onde foi feita a chamada e outros números / participantes da chamada.
  • O tempo exato em que o problema ocorreu, segundo o relógio do servidor 3CX.
  • A rota da chamada.

Tente não clicar em outros locais da interface, exceto no botão 'Parar'. Além disso, não navegue por outros links nesta janela do navegador. Caso contrário, a captura do tráfego continuará em segundo plano e causará uma carga adicional no servidor.

Obtenção do arquivo de captura

O botão 'Parar' interrompe a captura e salva o arquivo de captura. Você pode baixar o arquivo para o seu computador para análise na ferramenta Wireshark ou gerar um arquivo especial para o suporte técnico, que incluirá esta captura e outras informações de depuração. Após o download ou inclusão no pacote de suporte técnico, o arquivo de captura é removido automaticamente do servidor 3CX por motivos de segurança.

No servidor 3CX, o arquivo está localizado no seguinte caminho:

  • Windows: C:ProgramData3CXInstance1DataLogsdump.pcap
  • Linux: /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap

Para evitar sobrecarga no servidor ou perda de pacotes durante a captura, o período de captura é limitado a 2 milhões de pacotes. Após isso, a captura é interrompida automaticamente. Se você precisar de uma captura mais longa, use a ferramenta separada Wireshark, conforme descrito abaixo.

Captura de tráfego com a ferramenta Wireshark

Se você estiver interessado em uma análise mais aprofundada do tráfego de rede, capture-o manualmente. Baixe a ferramenta Wireshark para seu sistema operacional daqui. Após a instalação da ferramenta no servidor 3CX, vá para a seção Capture > Interfaces. Aqui serão mostradas todas as interfaces de rede do sistema operacional. Os endereços IP das interfaces podem ser exibidos no padrão IPv6. Para ver o endereço IPv4, clique no endereço IPv6.

O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

Escolha a interface para captura e clique no botão Options. Desmarque a opção Capture Traffic in promiscuous mode e deixe as outras configurações inalteradas.

O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

Agora você deve reproduzir o problema. Quando o problema for reproduzido, pare a captura (menu Capture > Stop). Você pode filtrar as mensagens SIP no menu Telephony > SIP Flows.

Fundamentos da análise de tráfego — mensagem SIP INVITE

Vamos considerar os principais campos da mensagem SIP INVITE, que é enviada para estabelecer uma chamada VoIP, ou seja, é o ponto de partida para a análise. Normalmente, o SIP INVITE contém de 4 a 6 campos com informações que são utilizadas por dispositivos SIP finais (telefones, gateways) e operadoras. Compreender o conteúdo do INVITE e das mensagens subsequentes geralmente ajuda a identificar a origem do problema. Além disso, conhecer os campos do INVITE é útil ao conectar operadoras SIP ao 3CX ou integrar o 3CX com outros PABX SIP.

Na mensagem INVITE, os usuários (ou dispositivos SIP) são identificados pelo URI. Normalmente, o SIP URI consiste no número de telefone do usuário + o endereço do servidor SIP. O SIP URI é bastante semelhante a um endereço de e-mail e é escrito como sip:x@y:Port.

O suporte técnico da 3CX responde: captura de tráfego SIP no servidor PABX

Request-Line-URI:

Request-Line-URI — este campo contém o destinatário da chamada. Ele contém as mesmas informações que o campo To, mas sem o nome de usuário exibido (Display Name).

Via:

Via — cada servidor SIP (proxy) que processa a solicitação INVITE adiciona seu endereço IP e a porta no topo da lista Via, onde a mensagem foi recebida. Em seguida, a mensagem é enviada adiante em seu caminho. Quando o destinatário final responde à solicitação INVITE, todos os nós de trânsito 'veem' o cabeçalho Via e devolvem a mensagem ao remetente pelo mesmo caminho. Nesse momento, o proxy SIP de trânsito remove seus dados do cabeçalho.

De:

De — o cabeçalho indica o iniciador da solicitação do ponto de vista do servidor SIP. O cabeçalho é formado da mesma forma que um endereço de e-mail (user@domain, onde user é o ramal do usuário 3CX e domain é o endereço IP local ou domínio SIP do servidor 3CX). Assim como o cabeçalho Para, o cabeçalho De contém um URI e, opcionalmente, o nome exibido do usuário (Display Name). A partir do cabeçalho De, é possível entender como processar essa solicitação SIP.

O padrão SIP RFC 3261 estipula que, se o nome exibido (Display Name) não for transmitido, o telefone IP ou o gateway VoIP (UAC) deve usar o nome exibido 'Anônimo', por exemplo, De: 'Anônimo' <sip:10000@10.172.0.2>.

Para:

Para — este cabeçalho indica o destinatário da solicitação. Isso pode ser tanto o destinatário final da chamada quanto um intermediário. Normalmente, o cabeçalho contém um SIP URI, mas outros esquemas são possíveis (veja RFC 2806 [9]). Todavia, o SIP URI deve ser suportado em todas as implementações do protocolo SIP, independentemente do fabricante do equipamento. O cabeçalho Para também pode conter um nome exibido (Display Name), por exemplo, Para: 'Nome Sobrenome' <sip:101@10.172.0.2>).

Normalmente, o campo Para contém um SIP URI que aponta para o primeiro (próximo) proxy SIP que irá processar a solicitação. Não precisa ser necessariamente o destinatário final da solicitação.

Contato:

Contato — o cabeçalho contém um SIP URI pelo qual o remetente da solicitação INVITE pode ser contatado. Este é um cabeçalho obrigatório, que deve conter apenas um SIP URI. Faz parte da comunicação bidirecional, correspondente à solicitação inicial SIP INVITE. É crucial que o cabeçalho Contato contenha informações corretas (incluindo o endereço IP) por meio das quais o remetente da solicitação espera uma resposta. O URI de Contato é utilizado em comunicações posteriores, já após o estabelecimento da sessão de comunicação.

Permitir:

Allow — o campo contém uma lista de parâmetros (métodos SIP) separados por vírgula. Eles descrevem quais capacidades do protocolo SIP este remetente (dispositivo) suporta. A lista completa de métodos é: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, PRACK, REFER, REGISTER, SUBSCRIBE, UPDATE. Mais detalhes sobre os métodos SIP estão descritos aqui.

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster