Instalar e configurar o Wireshark

Veja o código-fonte no GitHub

O Wireshark é uma ferramenta de código aberto que decodifica protocolos de rede na linha de execução pilha, como IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Estabelecimento de links de malha), UDP, e CoAP.

A ferramenta sniffer Pyspinel se conecta a um dispositivo Thread NCP ou RCP e o converte em um sniffer de pacote promíscuo, gerando um fluxo pcap (captura de pacote) para salvos ou encaminhados diretamente para o Wireshark.

Para usar o Wireshark com o Pyspinel, consulte as recomendações de instalação na para a próxima etapa. Também é preciso configurar o Wireshark para mostrar corretamente os pacotes de Thread e receber medições de RSSI.

Instalar o Wireshark

Linux

Abra um terminal e execute os seguintes comandos para fazer o download e instalar o Wireshark:

sudo add-apt-repository ppa:wireshark-dev/stable
sudo apt-get update
sudo apt-get install wireshark

Recomendamos executar o Wireshark como um usuário que não seja do root. Para fazer isso, reconfigure o pacote:

sudo dpkg-reconfigure wireshark-common

Quando aparecer a caixa de diálogo "Os não superusuários podem capturar pacotes?", selecione Yes, adicione o usuário wireshark e atualize as permissões do arquivo:

sudo adduser $USER wireshark
sudo chmod +x /usr/bin/dumpcap

macOS e Windows

Faça o download e instale o Wireshark. Para otimizar a segurança do sistema sistema, consulte Wireshark — informações específicas da plataforma sobre privilégios de captura.

Configurar protocolos do Wireshark

Para configurar protocolos, selecione Preferences... no Wireshark e expanda o Seção Protocolos.

LoWPAN

Selecione 6LoWPAN na lista de protocolos e verifique ou altere o seguinte configurações:

  1. Desmarque Derive ID conforme a RFC 4944.
  2. Atualize o Context 0 com o prefixo local da malha para a linha de execução de destino. em uma rede VPC.

OT Sniffer Wireshark 6LoWPAN

O Wireshark usa configurações de contexto para analisar o endereço IPv6 compactado e exibir os endereços IPv6 de origem e destino corretamente.

Para mostrar os endereços de outros prefixos da malha configurados no gateway, faça o seguinte: atualizar outros IDs de contexto com esses prefixos.

Para conseguir o ID de contexto de um prefixo específico na malha, consulte os dados da rede Thread. TLV em qualquer mensagem de resposta de dados do MLE. Exemplo:

Context 1: fd00:7d03:7d03:7d03::/64

CoAP

Selecione CoAP na lista de protocolos e defina a Porta UDP CoAP para 61631. Isso garante que as mensagens do TMF (como solicitações de endereço) sejam exibidas.

IEEE 802.15.4

Selecione IEEE 802.15.4 na lista de protocolos e verifique ou altere a seguintes configurações:

  1. Defina 802.15.4 Ethertype (in hexadecimal) como "0x809a".
  2. Defina o Pacote de segurança como "Criptografia AES-128, integridade de 32 bits". Proteção".
  3. Clique no botão Editar... ao lado de Chaves de descriptografia, que é onde você adicionar a chave mestra da rede Thread para descriptografia de pacotes.

    1. Clique em + para adicionar uma chave de descriptografia.
    2. Insira a chave mestra da rede Thread na coluna Chave de descriptografia.
    3. Digite "1" como o índice de chave de descriptografia.
    4. Selecione Hash da linha de execução na caixa de listagem da coluna Hash de chave.

      OT Sniffer Wireshark IEEE 802.15.4

    5. Clique em OK para salvar a chave de descriptografia.

Conversa

Selecione Thread na lista de protocolos e verifique ou altere o seguinte configurações:

  • Insira "00000000". Para o contador de sequência de linhas de execução.
  • Desmarque Usar o ID do PAN como os dois primeiros octetos da chave mestra.
  • Marque Adquirir automaticamente o contador de sequência de linhas de execução.

Clique no botão OK para salvar as alterações de protocolo.

Parte do tráfego de Thread pode ser analisado como o protocolo ZigBee. Para corretamente exibir estes dois protocolos e editar os protocolos ativados no Wireshark:

  1. No Wireshark, acesse Analyze e clique em Enabled Protocols.
  2. Desmarque os seguintes protocolos:

    1. LwMesh
    2. ZigBee
    3. ZigBee Green Power (link em inglês)

Configurar RSSI do Wireshark

Para exibir o RSSI no Wireshark:

  1. Selecione Preferências..., expanda a seção Protocolos e clique em IEEE 802.15.4.
  2. Defina o formato FCS:

    • Se o IEEE 802.15.4 TAP estiver desativado: metadados TI CC24xx.
    • Se o IEEE 802.15.4 TAP estiver ativado: ITU-T CRC-16. Se você estiver seguindo o guia Interceptação de pacote do NRF52840 de semicondutores nórdicos DK, consulte a flag --tap para mais informações.
  3. Clique em OK para salvar e retornar ao menu Preferences.

  4. Em Preferências, selecione Aparência e Colunas.

  5. Adicionar uma nova entrada:

    • Título: RSSI
    • Tipo: Custom
    • Campos: wpan.rssi

RSSI OT Sniffer Wireshark