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

Neste artigo, falaremos sobre o básico da captura e análise do tráfego SIP gerado pelos PBXs 3CX. O artigo é endereçado a administradores de sistema iniciantes ou usuários comuns cujas responsabilidades incluem a manutenção da telefonia. Para um estudo aprofundado do tópico, recomendamos que você conclua o Curso de treinamento avançado 3CX .

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

Se o 3CX for executado no Windows, você deverá instalar o Wireshark no servidor 3CX. Caso contrário, quando você tentar capturar, a seguinte mensagem será exibida.


Nos sistemas Linux, o tcpdump é instalado automaticamente quando você instala ou atualiza o 3CX.

Captura de tráfego


Para começar a capturar, vá para a seção da interface Home> SIP Events e selecione a interface na qual você deseja capturar. Você também pode capturar tráfego em todas as interfaces simultaneamente, exceto nas interfaces de encapsulamento IPv6.



No 3CX para Linux, você pode capturar o tráfego para o host local (lo). Essa captura é usada para analisar as conexões do cliente SIP usando a tecnologia 3CX Tunnel e o Session Border Controller .

O botão Traffic Capture inicia o Wireshark no Windows ou o tcpdump no Linux. Neste ponto, você precisa reproduzir rapidamente o problema, porque O Capture carrega o processador e ocupa espaço em disco suficiente.


Preste atenção aos seguintes parâmetros de chamada:

  • O número que foi chamado, que foi chamado por outros números / participantes da chamada.
  • A hora exata em que o problema ocorreu no relógio do servidor 3CX.
  • A rota da chamada.

Tente não clicar em outros locais da interface, exceto no botão "Stop". Também não clique em outros links nesta janela do navegador. Caso contrário, a captura de tráfego continuará em segundo plano e levará a uma carga adicional no servidor.

Obtendo arquivo de captura


O botão Parar interrompe a captura e salva o arquivo de captura. Você pode fazer o download do arquivo no seu computador para análise no utilitário Wireshark ou gerar um arquivo de suporte técnico especial que incluirá essa 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 é excluído automaticamente do servidor 3CX por motivos de segurança.

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

  • Windows: C: \ ProgramData \ 3CX \ Instance1 \ Data \ Logs \ dump.pcap
  • Linux: /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap

Para evitar o aumento da carga do servidor ou perda de pacotes durante a captura, o período de captura é limitado a 2 milhões de pacotes. Depois disso, a captura para automaticamente. Se você precisar de uma captura mais longa, use o utilitário Wireshark separado, conforme descrito abaixo.

Captura de Tráfego Wireshark


Se você estiver interessado em uma análise mais profunda do tráfego de rede, capture-o manualmente. Baixe o utilitário Wireshark para o seu sistema operacional aqui . Após instalar o utilitário no servidor 3CX, vá para Capture> Interfaces. Todas as interfaces de rede do sistema operacional serão mostradas aqui. Os endereços IP da interface podem ser exibidos no IPv6. Para ver o endereço IPv4, clique no endereço IPv6.



Selecione a interface para capturar e clique no botão Opções. Desmarque a opção Capturar tráfego no modo promíscuo e deixe o restante das configurações inalteradas.



Agora você deve reproduzir o problema. Quando o problema for reproduzido, pare de capturar (menu Capturar> Parar). Você pode selecionar mensagens SIP no menu Telefonia> Fluxos SIP.

Informações básicas sobre análise de tráfego - mensagem SIP INVITE


Considere os principais campos da mensagem INVITE SIP que é enviada para estabelecer uma chamada VoIP, ou seja, é o ponto de partida para a análise. Normalmente, o SIP INVITE inclui de 4 a 6 campos com informações usadas pelos dispositivos terminais SIP (telefones, gateways) e operadores de telecomunicações. A compreensão do conteúdo do INVITE e das mensagens a seguir geralmente ajuda a determinar a origem do problema. Além disso, conhecer os campos INVITE ajuda na conexão dos operadores SIP ao 3CX ou na combinação do 3CX com outras trocas SIP.

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



Request-Line-URI:


Request-Line-URI - o campo contém o destinatário da chamada. Ele contém as mesmas informações do campo Para, mas sem um Nome para Exibição.

Via:


Via - cada servidor SIP (proxy) pelo qual a solicitação INVITE passa, adiciona na parte superior da lista Via seu endereço IP e porta à qual a mensagem foi recebida. Em seguida, a mensagem é transmitida mais ao longo da rota. Quando o destinatário final responde à solicitação INVITE, todos os nós de trânsito "olham através" do cabeçalho Via e retornam uma mensagem ao remetente ao longo da mesma rota. Nesse caso, o proxy de trânsito SIP exclui 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 maneira que um endereço de email (usuário @ domínio, em que usuário é o número do ramal do usuário 3CX e domínio é o endereço IP local ou domínio SIP do servidor 3CX). Como o cabeçalho To, o cabeçalho From contém um URI e, opcionalmente, um nome de usuário para Nome para Exibição. No cabeçalho De, você pode entender exatamente como essa solicitação SIP deve ser processada.

O padrão SIP RFC 3261 estabelece que, se o Nome para exibição não for transmitido, o telefone IP ou o Gateway de VoIP (UAC) deverá usar o Nome para exibição "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. Pode ser o destinatário final da chamada ou um link intermediário. Normalmente, o cabeçalho contém um SIP URI, mas outros esquemas são possíveis (consulte RFC 2806 [9]). No entanto, URIs SIP devem ser suportados em todas as implementações SIP, independentemente do fabricante do equipamento. O cabeçalho Para também pode conter o Nome para Exibição do Nome para Exibição, por exemplo, Para: “Nome Sobrenome” (sip: 101@10.172.0.2>).

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

Contato:


Contato - o cabeçalho contém o SIP URI, pelo qual você pode entrar em contato com o remetente da solicitação INVITE. Este é um cabeçalho necessário e deve conter apenas um URI SIP. Faz parte de uma comunicação bidirecional correspondente à solicitação inicial do SIP INVITE. É muito importante que o cabeçalho do contato contenha as informações corretas (incluindo o endereço IP) nas quais o remetente da solicitação está aguardando uma resposta. O contato URI também é usado em comunicações adicionais, após o estabelecimento de uma sessão de comunicação.

Permitir:


Permitir - o campo contém uma lista de parâmetros (métodos SIP), separados por vírgula. Eles descrevem quais recursos do protocolo SIP esse remetente (dispositivo) suporta. Lista completa de métodos: ACK, ADEUS, CANCELAR, INFORMAÇÕES, CONVIDAR, NOTIFICAR, OPÇÕES, PRACK, REFERIR, REGISTRAR, ASSINAR, ATUALIZAR. Mais métodos SIP são descritos aqui .

Source: https://habr.com/ru/post/pt455381/


All Articles