Le mode promiscuité (« promiscuous mode ») sur une carte réseau lui permet d’accepter tout les paquets qu’elle reçoit, même si ceux-ci ne lui sont pas destinés.
Dans mon cas, l’activation du mode promiscuité couplé à du port mirroring et à ntopNG me permet de faire de l’analyse de trafic réseau sur mon cluster de machines virtuelles.
Création d’un commutateur virtuel
Création d’un commutateur virtuel (vNIC = virtual Network Interface Controller) en réseau externe bridgé sur la carte physique Broadcom NetXtreme gigabit Ethernet #2 (Ma carte physique qui s’appelle : Ethernet 4 – port mirroir).
Activation du mode promiscuité via Powershell
Création d’un script Powershell, qui a pour objectif de transférer les paquets reçus d’une carte physique (Broadcom NetXtreme gigabit Ethernet #2) sur une carte réseau virtuelle.
Dans mon cas, le commutateur virtuel (vNIC) qui recevras le trafic s’appelle ici : externe_port_mirroir
Fichier .ps1
Ce script nécessite le module Powershell pour Hyper-V d’installé ! Sans cela, les commandes retourneront une erreur.
$portFeature=Get-VMSystemSwitchExtensionPortFeature -FeatureName "Ethernet Switch Port Security Settings"
# None = 0, Destination = 1, Source = 2
$portFeature.SettingData.MonitorMode = 2
Add-VMSwitchExtensionPortFeature -ExternalPort -SwitchName externe_port_mirroir -VMSwitchExtensionFeature $portFeature
La variable externe_port_mirroir est a adapté suivant le nommage choisis du vNIC crée précédemment.
Il faut ensuite exécuté le script avec les droits administrateur.
Liaison avec la VM
Maintenant, il faut pointer une machine virtuelle sur ce commutateur virtuel, rien de plus simple :
1°) Sur la console Hyper-V, clic-droit sur la VM sélectionnée
2°) Paramètres => Carte réseau
3°) On point sur le commutateur virtuelle externe_port_mirroir
4°) Déroulement des fonctionnalités avancés, et on choisit Destination dans le mode Mise en miroir de ports
Une fois la carte réseau liée à la VM, tout est O.K ! Plus qu’à analyser le trafic 😉
Paramétrage avancés
Pour aller plus loin, il y a ce très bon billet disponible sur cloudbase.it
C’est sur ce même billet que contient le script Powershell vu plus haut. On y trouve en plus la possibilité de monitorer du trafic taggé (VLANs) et de choisir les tags que qui nous intéresses !