Catturare traffico di rete su Vmware

A volte è necessario catturare il traffico di un’interfaccia di rete per fare debugging ma non è possibile accedere direttamente alla VM o non è possibile installare del software di cattura.

Grazie a degli strumenti messi a disposizione del virtualizzatore è possibile catturare il traffico a livello di host ESXi. La cosa è semplice basta attivare SSH collegarsi all’host (via SSH) e usare questi comandi.

Supponiamo di dover catturare il traffico di rete generato e destinato alla VM chiamata portale01.

esxcli network vm list restituisce la lista delle virtual machine accese sull’host con il relativo World ID. World ID ci serve per recuperare il port id associato ad una scheda di rete virtuale.

[root@hostesxi01:~] esxcli network vm list
World ID  Name                     Num Ports  Networks
--------  -----------------------  ---------  -------------------------------------------------
 3793931  client_w10                       1  dvportgroup-157
 3767983  srv01                      	   1  dvportgroup-248
 3712391  myvm01	                   1  dvportgroup-248
 3483210  client_w7	                   1  dvportgroup-248
 3672782  portale01                        1  dvportgroup-248
 3463560  portale02		           1  dvportgroup-248

esxcli network vm port list ci restituisce il port id partendo dal World ID che abbiamo ottenuto dal comando precedente. Aggiungiamo al comando l’opzione -w seguita dal World ID associato alla VM portale01.

[root@hostesxi01:~] esxcli network vm port list -w 3463560
   Port ID: 47106373
   vSwitch: dvsGestione
   Portgroup: dvportgroup-248
   DVPort ID: 6374
   MAC Address: 00:50:56:82:ab:12
   IP Address: 0.0.0.0
   Team Uplink: vmnic2
   Uplink Port ID: 67108168
   Active Filters:

Qui possiamo notare che il port id è 47106373, quindi possiamo finalmente usare questo numero per avviare la cattura dei dati che verranno messi in un file chiamato portale02-dump.pcap che si troverà nella directory /tmp dell’host esxi:

pktcap-uw --switchport 47106373 -o /tmp/portale02-dump.pcap

Il comando può essere interrotto premendo la combinazione di tasti CTRL +C. Poi il file può essere prelevato con un programma come Filezilla o Winscp e analizzato con Wireshark o altri strumenti.