如何讓虛擬機器可以接收實體網路卡的連接埠鏡像流量

如何讓虛擬機器可以接收實體網路卡的連接埠鏡像流量

情境描述

若您希望虛擬機器可以監控虛擬機器之間的網路流量,可以透過設定網路介面卡進階功能選項中的連接埠鏡像,設定其鏡像模式,在要複製輸入輸出封包的虛擬機器上選擇鏡像模式為【來源】,在要監控連接埠的虛擬機器上選擇鏡像模式為【目的地】。

imageimage

接著就可以在【目的地】的虛擬機器上執行相關監控流量的軟體。

若您希望在虛擬機器中監控透過Switch的Port Mirroring功能或是VLAN所傳送過來的流量,上述的設定就不適用,必須依照下一節的方式才能達到所謂的Hyper-V promiscuous mode下監控外部流量的目的。

實作步驟

開啟虛擬交換器管理員,在想要用來接收連接埠鏡像流量的虛擬交換器上啟用虛擬交換器的Microsoft NDIS Capture功能。

image

接著在虛擬機器中設定視窗裡將網路介面卡的連接埠鏡像之鏡像模式設定為目的地。

image

最後使用Add-VMSwitchExtensionPortFeature cmdlet來為虛擬交換器設定監控模式。

$VMSwitchPortFeature = Get-VMSystemSwitchExtensionPortFeature -FeatureName 'Ethernet Switch Port Security Settings'
$VMSwitchPortFeature.SettingData.MonitorMode = 2 #MonitorMode參數(0 = 無, 1 = 目的地, 2 = 來源)
Add-VMSwitchExtensionPortFeature -ExternalPort -SwitchName '虛擬交換器名稱' -VMSwitchExtensionFeature VMSwitchPortFeature

參考資料

How to set Hyper-V promiscuous mode for monitoring external traffic

Setting up Port Mirroring to Capture Mirrored Traffic on a Hyper-V Virtual Machine

致謝

感謝新碩資訊凌先生所提供的資訊。