Every Virtual Machine runs an operating system that needs to apply monthly maintenance, add optional features, and install programs and libraries. Today all this basic maintenance is done through the Internet.
Hyper-V , like every other VM supervisor, has a built in support for a Default network configuration that allows every VM to access Internet services. If install a new Virtual Machine and specify no options, it will get the Default network that assigns network addresses, provides name lookup, and uses the host Windows 11 system as a gateway from which all VMs can access the same networks that your Windows applications use.
This means that there is no additional configuration to Hyper-V or VMs than what you are already doing on your computer to browse the Web and process Email. As you move from place to place and switch between Wi-Fi and wired networks, Hyper-V roams like all your other programs. Incidentally the Default network setup allows client programs on a Hyper-V virtual machine to access servers (shared files, databases, a Web server) running on the host Windows 11 system.
A Virtual Machine does not need networking to allow a client program to access a server on the same machine.
Hyper-V provides the “Virtual Machine Connection” program that runs on the host Windows system and presents to the user a simulation of a screen, keyboard, and mouse connected to any Virtual Machine. This works even if the VM has no network at all.
Therefore, a discussion of Hyper-V networking is necessary only if one Hyper-V virtual machine runs a server of some sort that needs to be accessed by client programs running on another VM, on the host system, or on an external computer on a physical network connected to the host computer.
If you do not . “Default” is its explict name, and it is also the default network for new VMs. It is created by Hyper-V when Windows boots up.
The Default network supplies network addresses and other parameters though DHCP to each VM. It provides a DNS service that resolved names by querying the Windows host operating system for name information. It provides a gateway function (NAT) that receives packets and forwards them to other computers and the internet using the best routing logic of the host Windows system. It automatically switches between wired, Wi-Fi, and VPN when the host switches, and roams between access points as you move from room to room.
You cannot replicate all the things that Default does yourself. As a result, unless you have to test a special VM configuration that only supports some other network connection arrangement, the recommendation is
Info |
---|
Normally connect the first network adapter on a generic VM to the Default network and let it dynamically configure itself. Then if you need something else, create additional network adapters connected to custom network configurations. The Default network will provide service if your computer has any network access. |
A client program running on a VM can use Default to get to the host computer, the local (home or Yale) network, the Cisco VPN, and the Internet. A client program running on the host computer or on a VM can access another VM by using its hostname followed by “.local” (although to make this work, a Linux VM may have to install the “avahi-daemon" package if it is not installed by default).
The Hyper-V “Virtual Machine Connection” program provides on your Windows desktop a simulation of a screen, keyboard, and mouse directly connected to any virtual machine without using any simulated networking.
Hyper-V custom networks are needed if a VM needs a permanent static IP address, or is to appear to be a separate real computer on a physical local network, or if you need special routing other than the host default.
If you never expect to have any of these requirements, you can stop reading here.
...
In a Datacenter run by a university, company, or cloud vendor, there are large specialized systems that create hundreds of virtual machines. Frequently they run specialized systems that partition the use of physical hardware such as disks and network adapters among virtual machines. To do this, they need For large applications they may dedicate a physical disk or disk partition to the exclusive use of one VM. They may also provide specialized network adapters that each behave as if one adapter is really they were dozens of separate adapters each of which devices, and each simulated device can be assigned directly hardware attached to a specific VM. The VM talks directly to the adapter and needs to have drivers that support that specialized hardware.
Even when there is no exotic network adapter, some other VM systems can dedicate a specific network adapter to the exclusive use of a single virtual machine. In this case the VM sees that actual hardware and must have driver support for that specific network adapter.
Hyper-V runs on any desktop or Laptop Windows 11 system. It works with all the devices that Windows already supports. You configure devices, including network adapters, using the same Windows Settings or Control Panel screens you have always used.
Specific adapter may have optional hardware features that you can set in Device Managertherefore needs a driver for that type of device.
Hyper-V runs on any desktop or Laptop Windows 11 system. It has no custom hardware. It supports just the standard Windows device drivers. This means that no VM will ever talk directly to dedicated hardware. VMs talk to Hyper-V, Hyper-V in the host Windows 11 Kernel talks to the standard Windows drivers for that device on the host system, and the Windows device drivers talk to the hardware.
Each model of each vendor’s network adapter card or chip has tuning parameters, or optional optimization features that an expert may choose to configure to optimize performance when the adapter is dedicated to a specific application or use. Most people don’t ever look at them, and few people understand how they work. You can usually get along fine by ignoring them:
...
Because the physical network adapter is installed in Windows with a Windows driver, this type of optional configuration remains under the control of the host Windows system. In Hyper-V, the VM does not need a driver that matches the specific network hardware, but it does need one driver to support a generic Hyper-V virtual network adapter device that Hyper-V creates on the VM. Windows, Linux, and some other operating systems (freeBSD which is popular with network appliances) have Hyper-V network drivers.
Hyper-V does not have the ability to directly connect a network adapter to a Hyper-V VM and pass-through its specific hardware features.
Generic Virtual Network Adapters
Hyper-V creates a much simpler generic virtual network adapter on each VM. It can also create a dummy virtual network adapter in the host Windows 11 operating system. These virtual network adapters can be used to communicate between VMs, and between the host operating system and the VMs, and no real network hardware is required.
There are times when a VM needs to communicate with an external network as if it were a physical computer. It needs to appear on the network with its own 6-byte Ethernet “address” ID and its own IP address. Devices on the physical network can then talk to it as they would any other computer.
Windows can share a physical network adapter with Hyper-V and though it with the VMs. To enable network adapter sharing, Windows splits the physical adapter into two Windows Devices that show up separately in Device Manager and Network Connections.
The old Device with the name of the physical adapter remains in place, but it loses the subset of its configuration parameters that are specific to the Windows host machine.
A new Hyper-V Virtual Network Adapter is created in the host Windows 11 system to receive the subset of communication options that are removed from the physical adapter. These include the 6-byte Ethernet ID and the TCP/IP Internet communication parameters (IP address, gateway, DNS servers, name lookup suffix, etc).
When Hyper-V associates a virtual network adapter on a VM to that physical adapter, the VM will have its own Internet communications configuration. After all, Windows and Linux running the the VM have their own network configuration panels to set Ethernet ID, IP address, gateway, and name servers independently of the host system, and the whole purpose of sharing a physical adapter with VMs is so that they can appear on the network as their own standalone computer.
You can tell Hyper-V to dedicate a physical network adapter to the exclusive use of Hyper-V. When you enter this command, Hyper-V does not create the second device in the host Windows system. Since the host system will no longer use this adapter for any network communications, any previous Internet configuration on that adapter is simply be discarded.
The Virtual Switch Meme
Hyper-V has decided to pretend that the VMs are like real computers connected to a wired network switch. You configure and name the “Virtual Switch”, then configure a virtual wired network adapter on each VM (and optionally on the host Windows system) and by command “connect” the virtual adapter to the switch. Optionally, you can associate a physical network adapter on the host computer with the “switch”, which then means that the VMs connected to that virtual switch can share that adapter, and optionally the host can continue to use it as well.
If you know nothing at all about how a real wired network switch works, then you better off in this one case. The Hyper-V “Virtual Switch” does not really have the kind of software or behavior that someone who understands networking would expect of any physical device. If your understanding is limited to “plug a bunch of computers into the same switch and they can talk to each other”, then that is a pretty good description of all that the Hyper-V networking configuration actually provides.
“Default” - Virtual Network without Configuration
When Hyper-V is installed, it creates a virtual switch called “Default”. You cannot delete it and you cannot configure it.
When you create a new VM, it usually gets a single virtual network adapter connected to “Default”.
The Default network assigns a randomly generated IP address to each VM (using the DHCP protocol).
It allows a VM to access the Yale Network, Home Network, and Internet through a Gateway function provided by the host Windows operating system. When any application on any VM tries to access a network service, it communicates through the Default Network to the Gateway. The Gateway separately connects to that remote service or computer on behalf of the client on the VM. The Gateway is an application on the Windows host system and uses whatever networks the host is currently connected to (wired, wireless). If you can access google.com from your browser on the host computer, the Gateway connects to it the same way. This means that a VM will transparently migrate with your laptop as you move from room to room and plug into or disconnect from any single network interface.
This behavior is so useful that I recommend that you configure every VM to have one adapter on the Default network to seamlessly support all your casual (non-developer) networking requirements.
The question then becomes whether you need a second network connection and how do you intend to use it?
A Simple set of Layers
If you read any book or take any course, you will be taught a list of 7 network Layers. To understand VM networking, we can reduce this to four layers.
The Program Interface - You may enter commands that talk to the network. You will provide these commands with the name of a computer or service, perhaps a port number, perhaps an application name, and perhaps a file name. The exact details depend on the operating system and programming language. Four our purposes, this all takes place in the “user” part of the system where you choose programs and, if you are a developer, where you write your own programs.
The Internet Protocol Support - This code existing in the Operating System Kernel. The Internet is based on two protocols named TCP and IP. IP routes your data through the Internet from your computer through intermediate gateways to the service you are using (google.com, youtube.com, weather.gov, etc.). TCP makes tracks the stream of bytes to make sure they all arrive and are reassembled in the correct order.
Ethernet - All networks today use Ethernet protocol to talk to small numbers of computers within a small area. Ethernet can be Wired, Wi-Fi, or Bluetooth. You cell phone probably support all three versions of Ethernet. What has made Ethernet successful is that any machine can connect to any network at any time. Each Ethernet adapter has its own 6-byte ID. Each packet of data has the 6-byte ID of the sender and the adapter to which it is being sent and the packet is normally limited to no more than 1500 bytes. There are then protocols for sending a packet to everyone on the network searching for a specific machine or service.
Hardware - Ethernet packets can run over a wire or radio. The adapter can be on the motherboard, or connected to a USB port, or on a docking station. It can be made by Intel, or RealTek, or Broadcom. This layer is a mess of different devices all doing the same thing but each in its own specialized way.
Hyper-V makes the rational decision to locate all its virtual networking logic at the Ethernet layer. Every Ethernet packet is no more than 1500 bytes long with a source and a destination. Ethernet packets can already be transmitted over wires, Wi-Fi, or Bluetooth, so why not just add Hyper-V as an alternate way to move the packets from one VM to another, or between VMs and the host computer.
Because the network is virtual, it is easiest to simulate a wired network. Wi-Fi has a connection process with channels and system ids and passwords. Bluetooth has pairing. With a physical wired network, you just plug each end of a cable into a jack, which you can simulate with virtual machine by a command or clicking a button on a configuration utility.
When someone plugs a wire into a real network switch, the switch doesn’t know what is at the other end of the wire. It could be a single computer, or it could be another switch connected to a hundred computers. The switch has to figure this out over time.
Hyper-V can cheat. It knows all the VMs and their virtual adapters. As soon as you connect something, Hyper-V knows its 6-byte Ethernet ID, and its IP addresses, and anything else that could be useful. Since it does not need to discover anything, it doesn’t need the logic or behavior of a real switch. So, there is no actual switch in a Hyper-V Virtual Switch. It is just a metaphor to guide network configuration.
Configured Hyper-V Virtual Switches
Default cannot be controlled. If you need the ability to assign addresses and configure networking on VMs, then you create your own named Hyper-V Virtual Switch.
There is a simple logic to all Hyper-V Virtual Switches, but it is obscured by a confusing utility and documentation that combines things that should be regarded as separate.
The Virtual Switch
The Switch has a name. Create a name that describes its intended purpose.
...
Unfortunately, the Hyper-V Manager GUI interface asks you to choose a “type of virtual switch” in order to create it. All switches are the same. At any time you can convert a Switch to External by connecting it to a Windows network adapter, and at any time you can make it Internal or Private by choosing to connect it to the host Windows 11 operating system or not. You can connect or disconnect it from anything at any time.
Network Adapters in the VM configuration
Each Hyper-V VM has a configuration including virtual disks and virtual network adapters. Each virtual disk is associated with a *.vhdx or *.iso file somewhere on the host disk, and each network adapter is either unconnected or connected to a named Virtual Switch.
...
Here there are two network adapters. The first adapter is connected to the Hyper-V Default switch/network. The second is connected to a Switch named “Bridge”. At any time you can disconnect a Virtual network adapter or connect it to another Switch. This simulates unplugging the Ethernet cable from a real computer and plugging in a cable connected to something else.
At any time you can add a new Network Adapter.
...
This is something like plugging a USB Ethernet adapter into a computer.
When you create a new Virtual Network Adapter you will be given a chance to connect it to any of the defined Virtual Switches or else to leave it unconnected for now:
...
Associate a Switch with a Physical Network Adapter and
Allow the Host Windows System to Connect to it
Any Virtual Switch can be exclusively associated with one physical network adapter on the host Windows system. You cannot attach two physical adapters to the same switch, and you cannot attach the same physical adapter to two switches.
When a Switch is associated with a physical adapter, then all of the VMs connected to that switch share that one adapter and can talk to whatever devices can be accessed through that adapter. If you know in advance that the Switch will always be associated with an adapter connected to a specific type of network, then you might name the Switch for that type of Network.
If you take the advice to always connect a VM to the Default Network and use it to connect to all public services on the Yale Network or Internet, then the only reason to have other adapters and switches is to have other types of small networks on which you have a special set of devices.
Having thought about this for a long time, the only clear suggestion I will make is to create a Switch associated with a physical wired Ethernet adapter that is connected one larger and more powerful machine (the “desktop” computer) which has more memory and disk storage than your laptop. While this desktop computer has its own connection to the Internet and may do other work on its own, you run a single Ethernet cable between your laptop and the desktop computer and use it to create a little private network that the two machines use to talk to each other. On each machine you create a Switch named Bridge that is associated with the Ethernet adapter connected to the other machine. Then VMs on one machine can talk to VMs on the other machine over the private Bridge.
There may be other uses for Switches and Adapters that arise from your own specific requirements. You could, for example, create one Switch called Yale that you use when your laptop is at Yale plugged into the Yale Network, and another Switch called Home that you use when your laptop is at home. As you move from work to home, you disconnect the Switch for one environment and connect the Switch for the other environment. That provides a way to manage VMs that should only run a Yale from others that should only run at home.
Separately, you can choose to connect the host Windows 11 system to a Switch by creating a Virtual Network Adapter in the real host Windows 11 system. Up to this point we have discussed virtual adapters on virtual machines, but this is a virtual adapter on your real laptop computer. It allows you to talk through the switch to your VMs.
It is very common that you start with a host operating system with one wired network adapter. You install Hyper-V and are about to create your first VM. You want to share your wired physical adapter with your VM. The way to do this is to create a Hyper-V Switch that is connected to the physical wired adapter, but which is also connected to the host operating system.
It is natural to think of a single operation to “share my wired adapter with Hyper-V VMs”. There is also a disruption in the host networking when you remove the physical adapter from the host system and attach it to the switch, then create a virtual adapter in the host operating system and attach it to the switch. More importantly, you may have configured network parameters for that adapter on the host (an IP address, network mask, gateway address, DNS server address, and other stuff that most people ignore but developers may carefully specify in advance). All this configuration is specific to the host Windows 11 operating system and is not something you share with the other VMS. So, what you want is for all that Internet configuration that is currently in the Windows configuration of the physical adapter to be moved from that now shared adapter and instead be used to configure the virtual network adapter that is being created to connect the Windows 11 host system to the Hyper-V virtual switch and through it to the now shared physical wired Ethernet adapter.
Removing the physical adapter from the host operating system and associating it with a Hyper-V switch is one configuration operation. Creating a new virtual adapter in the host system and attaching it to the switch is a separate operation. You could do them separately in either order, but then you would have to do all the manual reconfiguration over again. So, Hyper-V manager presents a GUI interface that combines the two operations, so the configuration moves automatically from the physical adapter to the virtual adapter when you share it, and if you decide to stop sharing it and return the physical adapter back to the exclusive use of the host Windows system the configuration moves back in the opposite direction. The Windows Device Manager will display and set them, but in a desktop or laptop computer the general-purpose defaults are usually best:
...
This hardware configuration can be done in Device Manager on the host Windows 11 system. Hyper-V and the VMs have no visibility to the actual hardware.
Generic Virtual Network Adapters
All VM supervisors create in the VMs a single type of emulated virtual network adapter. When PC virtual machines was a new idea, the system emulated some simple, cheap, universally supported network adapter card for which all operating systems already had drivers. However, it is expensive to simulate the low level behavior of hardware chips. Today all VM supervisors create an entirely imaginary simple high level network adapter card, and they generally write and distribute their own device driver for Windows, Linux, and as many other operating systems as there is market share. They make the source available so developers of any other operating system can write their own drivers.
These drivers simply make a software system call to Hyper-V in order to communicate over the network.
In addition to a driver that runs when Windows is running in a VM, Hyper-V has a different driver that can be used on the host Windows 11 operating system. This driver runs in the host Kernel and makes calls to the Hyper-V component also running in the host Windows kernel.
These virtual network adapters support the standard interface used by that operating system to configure networking parameters. Each network adapter has a 6-byte Ethernet address, and while it may be automatically configured from the network, it may also be statically configured with an IP address, gateway address, and DNS servers and default suffix strings. The host Windows system can set these values, and each VM can set its own values.
Developers may turn Hyper-V on immediately on any new computer. Others may start with a simple Windows machine, configure networking the way they want it, and then enable Hyper-V later on.
While you might add a new adapter for Hyper-V, it is often easier to share an existing already configured network adapter with Hyper-V and its virtual machines. When you do this, Windows splits the physical adapter into two Windows Devices that show up separately in Device Manager and Network Connections.
...
Above is a display of the Network Connections after Ethernet 2 (a Realtek USB controller) was shared with Hyper-V. The original Ethernet 2 hardware device remains, but it is no longer connected to the Internet. A new Hyper-V Virtual Ethernet Adapter was created by Hyper-V. The host Windows system is now connected to the Internet through the new virtual adapter. In reality Ethernet 2 and the new vEthernet are two aspects in Windows of the same hardware device.
The Device Manager hardware optimization options belong to the Ethernet 2 device. The Internet configuration options (IP address, DNS servers, 6-byte Ethernet ID, etc.) have been moved to the new vEthernet device.
Network Connections is one of the old Control Panel tools that go back to Windows 95. Today Microsoft is trying to get you to use the new Windows Settings panels, where Network Settings rather interestingly recombines the two Devices to simplify the view of end users:
...
Here the Internet setting have been combined with the hardware device type under the old physical device name of Ethernet 2.
If you choose to dedicate a physical network adapter to be used only by Hyper-V, there is no need for a virtual host adapter and any previous Internet configuration will simply be discarded.
The Virtual Switch Meme
VMware Workstation, Oracle VirtualBox, and Hyper-V all have the same network configuration problem and the same set of options. Other software combines a set of adapters on VMs, an optional virtual network adapter on the host system, and an optional physical network adapter into a named configuration object called a “Network”. Microsoft has chosen instead to call it a “Switch”.
The metaphor of connecting virtual adapters on virtual machines to ports on a virtual network switch is nice and simplifies creating diagrams, because you probably already have a switch image in your list of Visio diagram elements:
...
But calling this a Switch is not really helpful if you are trying to really understand how the thing really works.
How it Really Works
Inside the Kernel of the operating system, there is software that wraps the data into a TCP “packet” associated with a port number destination with data that supports recovering if packets are lost or reordered. The TCP packet is then broken into IP packets with the IP address of the sender and destination. The IP packet is then broken into one or more Ethernet packets with the 6-byte Ethernet ID of the sender and destination on the LAN.
Up to this point everything has been universal and hardware independent. The next step depends on whether the data is going over a wire, Wi-Fi, or Bluetooth, what chip is used, is it on the motherboard or USB, and many other things.
Therefore, the strategic way to design virtual networking is to let each system (Windows, Linux, …) on the host or in a VM just run their normal processing through TCP and IP to the point where they have an Ethernet packet. Then instead of using any hardware device, turn the packet over to Hyper-V for delivery on a named Switch/Network. The packet contains a destination 6-byte Ethernet ID and Hyper-V knows the 6-byte Ethernet IDs of every virtual Ethernet adapter on the host or VMs. If the destination is not one managed by Hyper-V and the Switch/Network has an associated physical network adapter, then send the packet out on the physical network.
The Hyper-V device drivers in a Linux VM, Windows VM, or Windows on the host simply hand packets off to Hyper-V, and Hyper-V also creates something in the Windows Kernel that talks to the device driver of any physical network adapter that has been assigned to it.
Configuring Hyper-V Virtual Switches
Every time it starts up, Hyper-V generates a new Switch called Default. VMs connect to it by default. In the host system, it is connected to a Gateway service that provides automatic configuration through DHCP to the VMs, a DNS service using the host operating system current name resolution, and the host operating system Routing tables to select the best current way to send data to external networks. You cannot meaningly configure of delete this service because it is recreated from scratch every time you restart Windows.
Other Virtual Switches can be configured using the graphic tool named Hyper-V Manager or by typing PowerShell commands into a Run as Administrator PowerShell session.
PowerShell is probably not the option you will choose, but it allows us to describe the process as simply and cleanly as possible without some confusion built into the Manager tool.
Create
To create a naked Switch with nothing attached to it, you provide a Name and, because Microsoft does not expect that most people want to create a switch with nothing, you have to explitly confirm that you want it to be of type Private:
Code Block |
---|
PS C:\Windows\System32> new-vmswitch -Name Example -SwitchType Private
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
Example Private |
A naked switch can be connected to virtual network adapters on VMs. VMs can use it to talk to each other.
Add just the Host
A switch with a host connection is identified by a SwitchType of Internal instead of Private.
You can create the switch with that SwitchType, or having previously create a naked Private switch you can change the type of the existing switch:
Code Block |
---|
PS C:\Windows\System32> set-vmswitch -Name Example -SwitchType Internal
PS C:\Windows\System32> get-netadapter
Name InterfaceDescription ifIndex Status MacAddress LinkSpeed
Ethernet Intel(R) Ethernet Connection (18) I219… 23 Disconnected C4-C6-E6-30-3F-37 0 bps
vEthernet (Example) Hyper-V Virtual Ethernet Adapter #4 66 Up 00-15-5D-02-A0-04 10 Gbps
... |
Windows now has a new virtual network adapter connected to the switch. Note the currently disconnected first adapter named “Ethernet” for the next example.
Create Switch with both a Physical Ethernet Adapter and a Host connection
There is a logical problem if you create an Internal Switch, use it for a while, and then decide to add a physical network adapter to it.
The existing physical adapter has Internet connection parameters associated with it (an IP address on the existing external physical network to which it was connected (say 192.168.3.*).
The existing host virtual adapter connected to the switch has connection parameters associated with it. Worse, the fact that it exists at all suggests that you configured an Internal network where all the adapters on all the VMs have internal IP addresses (say 192.168.10.*).
Adding this physical adapter to the switch physically bridges two networks with two different IP subnets. Now there is nothing wrong with that, and it could work, but Windows doesn’t know what to do with the IP address on the host virtual network adapter. So, it solves this problem in what may be the worst possible way by creating a second virtual host network adapter (as if your Device Manager was not bad enough already). Both end up connected to the Switch. The original virtual network adapter created when you made the switch Internal keeps its old IP address in 192.168.10.* while the new second virtual Ethernet adapter connected to the same switch gets the external IP address previously assigned to the physical network adapter in 192.168.3.*
That is probably not what you want. Start over.
Delete the old Internal switch and start over.
Create a new switch with the same name, but give it both the physical adapter and the option to allow the host Windows system (called the Management OS in this context) to use the new switch.
Code Block |
---|
PS C:\Windows\System32> New-vmswitch -Name Example -NetAdapterName Ethernet -AllowManagementOS $true
Name SwitchType NetAdapterInterfaceDescription
Example External Intel(R) Ethernet Connection (18) I219-LM
PS C:\Windows\System32> get-netadapter
Name InterfaceDescription ifIndex Status MacAddress LinkSpeed
Ethernet Intel(R) Ethernet Connection (18) I219… 23 Disconnected C4-C6-E6-30-3F-37 0 bps
vEthernet (Example) Hyper-V Virtual Ethernet Adapter #4 32 Disconnected C4-C6-E6-30-3F-37 0 bps |
You need to know the name of the physical netadapter (“Ethernet” from the previous example).
Hyper-V Manager Switch Configuration
In the Actions menu, click on Virtual Switch Manager …
In this panel there is an entirely useless option list asking what type of Switch you want to create.
...
It is useless because all it does it set the default choice among three radio buttons on the next form:
...
You give it a Name at the top and can change your mind and click any of the three radio buttons for Private, Internal, or External (where you then choose a physical network adapter from the list and click the Allow Management OS checkbox to create a host virtual network adapter with the Switch.
You can come back to this form and change the type of switch with the radio buttons, but you have the same IP subnet conflict problem changing from an existing Internal to External.
Network Adapters in the VM configuration
Each Hyper-V VM has a configuration including virtual disks and virtual network adapters. Each virtual disk is associated with a *.vhdx or *.iso file somewhere on the host disk, and each network adapter is either unconnected or connected to a named Virtual Switch.
...
Here there are two network adapters. The first adapter is connected to the Hyper-V Default switch/network. The second is connected to a Switch named “Bridge”. At any time you can disconnect a Virtual network adapter or connect it to another Switch. This simulates unplugging the Ethernet cable from a real computer and plugging in a cable connected to something else.
At any time you can add a new Network Adapter.
...
This is something like plugging a USB Ethernet adapter into a computer.
When you create a new Virtual Network Adapter you will be given a chance to connect it to any of the defined Virtual Switches or else to leave it unconnected for now:
...
VLANs
If you don’t know about VLANs or do not use them, ignore this.
...