Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Instala y configura Wireshark

Ver el código fuente en GitHub

Wireshark es una herramienta de código abierto que puede decodificar protocolos de red en la pila de Thread, como IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Mesh Link Establishment), UDP y CoAP.

La herramienta de análisis de Pyspinel se conecta a un dispositivo Thread NCP o RCP y la convierte en un detector de paquetes promiscuo. Esto genera una transmisión de pcap (captura de paquete) que se guarda o se canaliza directamente en Wireshark.

Para usar Wireshark con Pyspinel, consulta las recomendaciones de instalación en el paso siguiente. También deberás configurar Wireshark para mostrar correctamente los paquetes de Thread y recibir las mediciones de RSSI.

Instala Wireshark

Linux

Abre una terminal y ejecuta los siguientes comandos para descargar e instalar Wireshark:

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

Te recomendamos ejecutar Wireshark como un usuario ajeno a root. Para ello, vuelve a configurar el paquete:

sudo dpkg-reconfigure wireshark-common

Cuando aparezca el cuadro de diálogo que pregunta "¿Los usuarios que no son superusuarios pueden capturar paquetes?", selecciona y, luego, agrega el usuario wireshark y actualiza los permisos del archivo:

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

macOS y Windows

Descarga e instala Wireshark. Para optimizar la seguridad de tu sistema operativo, consulta el artículo Wireshark: información específica de la plataforma sobre los privilegios de captura.

Configura los protocolos de Wireshark

Para configurar los protocolos, selecciona Preferencias... en Wireshark y expande la sección Protocols.

6LoWPAN

Selecciona 6LoWPAN de la lista de protocolos y verifica o cambia la siguiente configuración:

  1. Desmarca la opción Derive ID based on RFC 4944.
  2. Actualiza Contexto 0 con el prefijo local de malla para la red de subprocesos de destino.

OT Sniffer Wireshark 6LoWPAN

Wireshark usa configuraciones de contexto para analizar la dirección IPv6 comprimida y mostrar la dirección IPv6 y las direcciones de destino correctamente.

Para mostrar las direcciones de otros prefijos en la malla configurados en la puerta de enlace, actualiza otros ID de contexto con esos prefijos.

Para obtener el ID de contexto de un prefijo en la malla específica, consulta el TLV de los datos de red de Thread en cualquier mensaje de respuesta de datos de MLE. Por ejemplo:

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

CoAP

Selecciona CoAP de la lista de protocolos y establece CoAP UDP Port en 61631. Esto garantiza que se muestren los mensajes de TMF (como la solicitud de dirección).

IEEE 802.15.4

Selecciona IEEE 802.15.4 en la lista de protocolos y verifica o cambia la siguiente configuración:

  1. Configura 802.15.4 Ethertype (in hexadecimal) en &&tt;0x809a"
  2. Configura el conjunto de seguridad como encriptación AES-128, protección de la integridad de 32 bits.
  3. Haz clic en el botón Editar... junto a Claves de desencriptación, que es donde agregas la clave maestra de la red de Thread para la desencriptación de paquetes.

    1. Haz clic en + para agregar una clave de desencriptación.
    2. Ingresa la clave maestra de la red de Thread en la columna Desencriptación de clave.
    3. Ingresa "1" como el índice de claves de desencriptación.
    4. Selecciona Hash hash en el cuadro de lista Columna hash.

      OT Sniffer Wireshark IEEE 802.15.4

    5. Haz clic en OK para guardar la clave de desencriptación.

Thread

Selecciona Thread de la lista de protocolos y verifica o cambia la siguiente configuración:

  • Ingresa "00000000" para el contador de secuencias de subprocesos.
  • Desmarca Usar ID de PAN como los primeros dos octetos de la clave maestra.
  • Marca Adquirir automáticamente secuencia de comandos Thread.

Haz clic en el botón OK para guardar los cambios del protocolo.

Parte del tráfico de Thread podría analizarse como el protocolo ZigBee. Para mostrar estos dos protocolos de forma correcta, edita los protocolos habilitados en Wireshark:

  1. En Wireshark, vaya a Analyze y luego haga clic en Enabled Protocols.
  2. Desmarca los siguientes protocolos:

    1. LwMesh
    2. ZigBee
    3. ZigBee Green Power

Configura RSSI de Wireshark

Para mostrar RSSI en Wireshark, haz lo siguiente:

  1. Selecciona Preferences... y expande la sección Protocols. Luego, haz clic en IEEE 802.15.4.
  2. Establece el Formato de FCS:

    • Si se inhabilitó TAP IEEE 802.15.4: Metadatos TI CC24xx.
    • Si está habilitado el TAP IEEE 802.15.4: ITU-T CRC-16. Si sigues la guía de escaneo de paquetes del semiconductor nórdico nRF52840 DK, consulta la marca de --tap para obtener más información.
  3. Haz clic en OK para guardar los cambios y volver al menú Preferences.

  4. En Preferences, selecciona Appearance y, luego, Columns.

  5. Agrega una entrada nueva:

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

OT Sniffer Wireshark RSSI