If you’re managing a VM in Hyper-V with multiple network adapters—such as in a firewall setup—it’s crucial to correctly configure VLANs. Often, you might need to set up a trunk on a specific interface, which can only be identified uniquely by its MAC address, especially when interface names are the same.
Identify the Adapter: First, determine the MAC address and switch name of the network adapters associated with your VM. Replace FORTIGATE-NEW with your VM’s name to find the correct adapter:
Get-VMNetworkAdapter FORTIGATE-NEW | fl macaddress, SwitchName
This will return something like:
MacAddress : 00155D450204
SwitchName : ASUS XG-C100C 10G PCI-E Network Adapter - Virtual Switch
MacAddress : 00155D450205
SwitchName : Internal
In this example, we will configure the “Internal” network adapter for a trunk.
Filter the Adapter Based on the MAC Address: This command filters out the specific adapter you want to configure by matching its MAC address. Ensure you replace "00155D450205" with the MAC address of the adapter you intend to use.
$adapter = Get-VMNetworkAdapter FORTIGATE-NEW | Where-Object {$_.MacAddress -eq "00155D450205"}
Configure Trunk and VLANs: After filtering the right adapter, this command sets up a trunk and specifies which VLAN IDs are allowed on this trunk. It also defines VLAN 70 as the native VLAN, meaning untagged traffic will be associated with VLAN 70.
Set-VMNetworkAdapterVlan -VMNetworkAdapter $adapter -AllowedVlanIdList "3111,2222" -Trunk -NativeVlanId 70
Verify the Configuration: Finally, confirm the VLAN configuration to ensure it has been applied correctly:
Get-VMNetworkAdapterVlan FORTIGATE-NEW
VMName VMNetworkAdapterName Mode VlanList
------ -------------------- ---- --------
FORTIGATE-NEW Network Adapter Access 70
FORTIGATE-NEW Network Adapter Trunk 70,2222,3111
Conclusion:
This approach effectively isolates traffic and manages network segmentation on a Hyper-V VM, especially in complex environments with multiple network adapters. Always ensure to replace placeholders with actual values relevant to your setup.