Visualizza l'origine su GitHub
Questa guida illustra come configurare Extcap per Wireshark per il sniffing dei pacchetti da una rete Thread.
Per utilizzare Pyspinel per lo sniffing dei pacchetti senza estensione, consulta Packet Sniffing with Pyspinel.
Configurare l'ambiente Stackdriver
Prima di iniziare, completa i seguenti passaggi:
- Esamina i Requisiti di sniffing dei pacchetti.
- Installa e configura Wireshark.
- Installa Pyspinel e le dipendenze con extcap.
Verifica
Questa guida è stata verificata con la Zolertia Firefly (Texas Tools CC2538 SoC) sui seguenti sistemi host:
- Debian 4.19.37 — Wireshark 3.0.4
- macOS Mojave 10.14.6 — Wireshark 3.0.5
- Windows 10 versione 17134 a 64 bit — Wireshark 3.0.6
Creazione e flashing dello shard
Le istruzioni di creazione e lampeggiamento variano in base alla piattaforma.
Per istruzioni sulla creazione e sul flashing del CC2538, consulta l'esempio di CC2538 per il file README su GitHub.
Per istruzioni generali sulla build, consulta Come creare OpenThread.
Utilizzare lo shard
La schermata di acquisizione di Wireshark viene visualizzata quando viene lanciato per la prima volta. Deve elencare le interfacce hardware collegate a uno snapshot OpenThread.
Acquisisci da una singola interfaccia
Se è la prima volta che utilizzi un'interfaccia, fai clic sul pulsante Opzioni a sinistra dell'interfaccia:
- Imposta il Canale sul valore che preferisci.
- Controlla TEEEE 802.15.4 TAP per assicurarti che le informazioni del canale siano incluse nell'output del pcap e possano essere visualizzate nella GUI di Wireshark.
- Seleziona Salva parametri all'inizio dell'acquisizione per assicurarti che questi parametri vengano salvati dopo l'inizio dell'acquisizione, per evitare di dover ripetere la configurazione la prossima volta che utilizzi l'interfaccia (a meno che non sia necessario modificare il canale).
- Fai clic su Avvio.
Se i parametri sono già salvati, inizia a sniffare selezionando l'interfaccia hardware e facendo clic sull'icona Wireshark in alto a sinistra.
Acquisisci da più interfacce
Seleziona tutte le interfacce hardware elencate nella schermata di acquisizione e fai clic sull'icona Wireshark in alto a sinistra.
Utilizza questi campi per identificare i singoli shard durante l'acquisizione da più interfacce:
- ID interfaccia (frame.interface_id): un identificatore dell'interfaccia utilizzato da Wireshark per identificare un'interfaccia di acquisizione.
- Nome interfaccia (frame.interface_name): nome dell'interfaccia utilizzato da Wireshark per identificare un'interfaccia di acquisizione.
- Canale (wpan-tap.ch_num) - Canale di acquisizione IEEE 802.15.4 (intervallo: 11-26)
Risoluzione dei problemi
Lo shard OpenThread non è elencato come interfaccia Wireshark
- Se hai installato più interpreti Python, assicurati che l'interprete Python 3 sia utilizzato dallo script extcap. Pyspinel non supporta Python 2.
- Verifica che l'hardware sia elencato su USB e che i driver siano caricati.
- Verifica che il firmware corretto (NCP o RCP) sia stato collegato all'hardware.
- Verifica che lo script Python che si trova nel percorso extcap sia eseguibile.
- Per OS X e Linux:
- Verifica che sia presente l'autorizzazione di esecuzione per il file
extcap_ot.py
:ls -l extcap_ot.py
- Se non hai l'autorizzazione di esecuzione (x), modifica le autorizzazioni:
chmod +x extcap_ot.py
- Verifica che l'interfaccia sia elencata:
extcap_ot.py --extcap-interfaces
- Verifica che sia presente l'autorizzazione di esecuzione per il file
- Per Windows:
- Verifica che l'interfaccia sia elencata:
extcap_ot.bat --extcap-interfaces
- Se viene chiuso con un errore Python, verifica che la versione di Python sia 3.x:
py -3 --version
- Verifica che l'interfaccia sia elencata:
- Per OS X e Linux:
Wireshark consente solo all'utente root di acquisire i pacchetti
Durante l'installazione di Wireshark su Ubuntu all'utente verrà chiesto di scegliere una delle seguenti opzioni:
- Creare il gruppo di utenti
wireshark
e consentire a tutti i membri di tale gruppo di acquisire i pacchetti. - Consenti all'utente di
root
di acquisire pacchetti solo.
Sconsigliamo vivamente di utilizzare Wireshark come utente root
. Se hai scelto questa opzione, modifica l'impostazione:
sudo dpkg-reconfigure wireshark-common
Se Wireshark è stato configurato per limitare l'acquisizione ai membri del gruppo wireshark
, potresti dover aggiungere al gruppo l'utente corretto:
sudo usermod -a -G wireshark user
Aggiungi anche l'utente corretto al gruppo dialout
:
sudo usermod -a -G dialout user
Chiudi e riavvia Wireshark per applicare le nuove impostazioni del gruppo di utenti.
Errore di formato Wireshark durante l'acquisizione su più interfacce USB su Windows
Questo è un problema noto per alcune versioni precedenti di Wireshark. Assicurati di utilizzare Wireshark 3.0.6 o versioni successive.