Como capturar pacotes no Mikrotik

De Wiki BPF
Revisão de 11h38min de 7 de novembro de 2019 por Daniel Damito (discussão | contribs)
Ir para navegação Ir para pesquisar

Introdução

Certos problemas de rede só podem ser identificados mais profundamente através da análise de uma captura de pacotes. Através desta captura podemos identificar excesso de retransmissões, falhas em consultas em DNS, emissão de pacotes com IP de origem incorreto e diversos outros problemas que dificilmente veríamos de forma tradicional.

Existem diversas formas de se capturar pacotes em uma rede. O método mais usado geralmente é através do utilitário tcpdump do Linux. O Mikrotik possui das formas de se analisar pacotes: torch e packet sniffer.

Apesar de o torch também ser um recurso válido, ele é relativamente limitado à alguns detalhes dos pacotes. Por este motivo, iremos demonstrar neste artigo como capturar os pacotes utilizando o packet sniffer, pois podemos visualizar a captura localmente em nossos computadores com o Wireshark.

Requisitos

  • Um roteador Mikrotik;
  • Wireshark;
  • Winbox.

Salvando um arquivo de captura no Mikrotik

Em Tools > Packet Sniffer, preencha da seguinte forma:

Guia General

  • Memory Limit: a quantidade máxima de memória em KB que será usada para salvar a captura de pacotes. Geralmente 10000 KBs (10 MB) é suficiente para capturas normais.
  • Only headers: caso queira salvar apenas os cabeçalhos dos pacotes, marque esta opção. Se tiver dúvidas do que precisa, deixe-a desmarcada.
  • File name: nome do arquivo que será salvo no roteador. Utilize sempre a extensão .pcap para facilitar o reconhecimento do software padrão (Wireshark) no sistema operacional. Exemplo: ProblemasGoogle.pcap.
  • File limit: este será o tamanho máximo do arquivo. Este tamanho dependerá do que você deseja analisar.
Captura de pacotes mk 1.png

Guia Streaming

Como não iremos transmitir a captura em tempo real nesta seção, todos os campos desta guia podem ser deixados desmarcados e em branco.

Guia Filter

Esta guia é onde você configurará os filtros para selecionar o que exatamente deseja capturar.

Caso deseje utilizar mais de um filtro em um parâmetro específico, basta clicar na seta para baixo do lado direito do parâmetro. Para selecionar se o condicional será e ou ou, utilize o campo Filter Operation, explicado mais abaixo.

Os campos de Interfaces até CPU não são obrigatórios, portanto utilize apenas os filtros que te forem desejados. Caso não deseje filtrar nada específico, basta deixar todos esses campos em branco.

  • Interfaces: De qual interface deseja coletar a captura.
  • Mac Address: De qual endereço MAC de origem ou destino deseja coletar a captura.
  • Mac Protocol: De qual protocolo de camada 2 deseja coletar a captura.
  • IP Address: De qual IPv4 (obsoleto) de destino ou de origem deseja coletar a captura.
  • IPv6 Address: De qual IPv6 de destino ou de origem deseja coletar a captura.
  • IP Protocol: De qual protocolo de camada 4 deseja coletar a captura
  • Port: De qual porta deseja coletar a captura
  • CPU: De qual CPU deseja capturar os pacotes
  • Direction: Baseado na interface selecionado, qual sentido deseja capturar pacotes: rx (download) ou tx (upload).
  • Filter Operation: Quando um campo tiver mais de um parâmetro, a opção selecionada aqui decidirá se a condição será e ou ou. Exemplos:
    • Caso você adicione dois IPs no campo IPv6 Address e a condição aqui seja or, a captura irá coletar pacotes que coincidam com qualquer um destes IPs;
    • Caso você adicione dois IPs no campo IPv6 Address e a condição aqui seja and, a captura irá coletar apenas os pacotes que coincidam com os dois IPs ao mesmo tempo.
Captura de pacotes mk 3.png

Transmitindo a captura em tempo real para o Wireshark

Guia General

  • Memory Limit: A quantidade máxima de memória em KB que será usada para salvar a captura de pacotes. Geralmente 10000 KBs (10 MB) é suficiente para capturas normais.
  • Only headers: Caso queira capturar apenas os cabeçalhos dos pacotes, marque esta opção. Se tiver dúvidas do que precisa, deixe-a desmarcada.
  • File name: Este campo não será preenchido, visto que iremos transmitir a captura em tempo real para o Wireshark.
  • File limit: Este campo não será preenchido, visto que iremos transmitir a captura em tempo real para o Wireshark.

Guia Streaming

Esta guia é utilizada para configurar a transmissão remota para o computador local que está rodando o Wireshark. É aqui que configuraremos para que a captura seja lida em tempo real no Wireshark.

Guia Filter

Esta guia é onde você configurará os filtros para selecionar o que exatamente deseja capturar.

Caso deseje utilizar mais de um filtro em um parâmetro específico, basta clicar na seta para baixo do lado direito do parâmetro, como indicado no campo x do screenshot abaixo. Para selecionar se o condicional será e ou ou, utilize o campo Filter Operation, explicado mais abaixo.

Os campos de Interfaces até CPU não são obrigatórios, portanto utilize apenas os filtros que te forem desejados. Caso não deseje filtrar nada específico, basta deixar todos esses campos em branco.

  • Interfaces: De qual interface deseja coletar a captura.
  • Mac Address: De qual endereço MAC de origem ou destino deseja coletar a captura.
  • Mac Protocol: De qual protocolo de camada 2 deseja coletar a captura.
  • IP Address: De qual IPv4 (obsoleto) de destino ou de origem deseja coletar a captura.
  • IPv6 Address: De qual IPv6 de destino ou de origem deseja coletar a captura.
  • IP Protocol: De qual protocolo de camada 4 deseja coletar a captura
  • Port: De qual porta deseja coletar a captura
  • CPU: De qual CPU deseja capturar os pacotes
  • Direction: Baseado na interface selecionado, qual sentido deseja capturar pacotes: rx (download) ou tx (upload).
  • Filter Operation: Quando um campo tiver mais de um parâmetro, a opção selecionada aqui decidirá se a condição será e ou ou. Exemplos:
    • Caso você adicione dois IPs no campo IPv6 Address e a condição aqui seja or, a captura irá coletar pacotes que coincidam com qualquer um destes IPs;
    • Caso você adicione dois IPs no campo IPv6 Address e a condição aqui seja and, a captura irá coletar apenas os pacotes que coincidam com os dois IPs ao mesmo tempo.