Wireshark installieren und konfigurieren

Quellcode auf GitHub ansehen

Wireshark ist ein Open-Source-Tool, mit dem Netzwerkprotokolle im Thread-Stack decodiert werden können, z. B. IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Mesh Link Establishment), UDP und CoAP.

Das Pyspinel-Sniffer-Tool verbindet sich mit einem Thread-NCP- oder RCP-Gerät und wandelt es in einen promiskuitiven Paket-Sniffer um. Dabei wird ein PCAP-Stream (Paketerfassung) generiert, der gespeichert oder direkt an Wireshark weitergeleitet werden kann.

Informationen zur Verwendung von Wireshark mit Pyspinel finden Sie in den Installationsempfehlungen im nächsten Schritt. Außerdem müssen Sie Wireshark so konfigurieren, dass Thread-Pakete richtig angezeigt und RSSI-Messungen empfangen werden.

Wireshark installieren

Linux

Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus, um Wireshark herunterzuladen und zu installieren:

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

Wir empfehlen, Wireshark als Nutzer auszuführen, der nicht root ist. Dazu müssen Sie das Paket neu konfigurieren:

sudo dpkg-reconfigure wireshark-common

Wählen Sie im Dialogfeld „Sollen Nutzer, die keine Superuser sind, Pakete erfassen können?“ die Option Ja aus. Fügen Sie dann den Nutzer wireshark hinzu und aktualisieren Sie die Dateiberechtigungen:

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

macOS und Windows

Laden Sie Wireshark herunter und installieren Sie es. Informationen zum Optimieren der Sicherheit für Ihr Betriebssystem finden Sie unter Wireshark – Plattformspezifische Informationen zu Erfassungsberechtigungen.

Wireshark-Protokolle konfigurieren

Wenn Sie Protokolle konfigurieren möchten, wählen Sie in Wireshark Einstellungen… aus und maximieren Sie den Bereich Protokolle.

6LoWPAN

Wählen Sie in der Liste der Protokolle 6LoWPAN aus und prüfen oder ändern Sie die folgenden Einstellungen:

  1. Entfernen Sie das Häkchen bei ID gemäß RFC 4944 ableiten.
  2. Aktualisieren Sie Context 0 mit dem lokalen Mesh-Präfix für das Ziel-Thread-Netzwerk.

OT-Sniffer Wireshark 6LoWPAN

Wireshark verwendet Kontextkonfigurationen, um die komprimierte IPv6-Adresse zu parsen und die IPv6-Quell- und Zieladressen korrekt anzuzeigen.

Wenn Sie die Adressen für andere On-Mesh-Präfixe anzeigen möchten, die am Gateway konfiguriert sind, aktualisieren Sie andere Kontext-IDs mit diesen Präfixen.

Wenn Sie die Kontext-ID für ein bestimmtes On-Mesh-Präfix abrufen möchten, sehen Sie sich das Thread-Netzwerkdaten-TLV in einer beliebigen MLE-Daten-Antwortnachricht an. Beispiel:

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

CoAP

Wählen Sie in der Liste der Protokolle CoAP aus und legen Sie CoAP UDP Port auf 61631 fest. So wird sichergestellt, dass TMF-Nachrichten (z. B. Anfragen zur Adresse) angezeigt werden.

IEEE 802.15.4

Wählen Sie in der Liste der Protokolle IEEE 802.15.4 aus und prüfen oder ändern Sie die folgenden Einstellungen:

  1. Legen Sie 802.15.4 Ethertype (in Hex) auf „0x809a“ fest.
  2. Legen Sie für die Sicherheitssuite die Option „AES-128-Verschlüsselung, 32-Bit-Integritätschutz“ fest.
  3. Klicken Sie neben Entschlüsselungsschlüssel auf die Schaltfläche Bearbeiten. Hier fügen Sie den Masterschlüssel des Thread-Netzwerks für die Paketentschlüsselung hinzu.

    1. Klicken Sie auf +, um einen Entschlüsselungsschlüssel hinzuzufügen.
    2. Geben Sie den Masterschlüssel des Thread-Netzwerks in die Spalte Entschlüsselungsschlüssel ein.
    3. Geben Sie „1“ als Index des Entschlüsselungsschlüssels ein.
    4. Wählen Sie im Listenfeld der Spalte Schlüssel-Hash die Option Thread-Hash aus.

      OT-Sniffer Wireshark IEEE 802.15.4

    5. Klicken Sie auf OK, um den Entschlüsselungsschlüssel zu speichern.

Thread

Wählen Sie in der Liste der Protokolle Thread aus und prüfen oder ändern Sie die folgenden Einstellungen:

  • Geben Sie „00000000“ für den Thread-Sequenzzähler ein.
  • Entfernen Sie das Häkchen bei PAN-ID als erste zwei Oktette des Masterschlüssels verwenden.
  • Setzen Sie ein Häkchen bei Thread-Sequenzzähler automatisch abrufen.

Klicken Sie auf die Schaltfläche OK, um die Protokolleinträge zu speichern.

Einige Thread-Traffics werden möglicherweise als ZigBee-Protokoll analysiert. Bearbeiten Sie die aktivierten Protokolle in Wireshark, um diese beiden Protokolle korrekt anzuzeigen:

  1. Klicken Sie in Wireshark auf Analyze (Analysieren) und dann auf Enabled Protocols (Aktivierte Protokolle).
  2. Entfernen Sie die Häkchen aus den folgenden Protokollen:

    1. LwMesh
    2. ZigBee
    3. ZigBee Green Power

Wireshark RSSI konfigurieren

So lassen Sie RSSI in Wireshark anzeigen:

  1. Wählen Sie Einstellungen… aus, maximieren Sie den Bereich Protokolle und klicken Sie dann auf IEEE 802.15.4.
  2. Legen Sie das FCS-Format fest:

    • Wenn IEEE 802.15.4 TAP deaktiviert ist: TI CC24xx-Metadaten.
    • Wenn IEEE 802.15.4 TAP aktiviert ist: ITU-T CRC-16. Wenn Sie der Anleitung zum Paketsniffing für den Nordic Semiconductor nRF52840DK folgen, finden Sie weitere Informationen zur --tap Flagge.
  3. Klicken Sie auf OK, um die Änderungen zu speichern und zum Menü Einstellungen zurückzukehren.

  4. Wählen Sie unter Einstellungen die Option Darstellung und dann Spalten aus.

  5. So fügen Sie einen neuen Eintrag hinzu:

    • Title: RSSI
    • Typ: Benutzerdefiniert
    • Felder: wpan.rssi

OT Sniffer Wireshark RSSI