The Disappearing Windows Virtual External Switches Nuisance

As far as I know, Windows 7, 8, 10 and 11 Professional have no way of creating multiple persistent network connection profiles for user deployed external switches used by hyper-v installed systems; and that in itself is problematic because Windows updates usually wipe out the switches forcing annoying deletion and reconfiguration after the updates install. In Windows 10 you can create a virtual external switch in PowerShell which helps automate the process a bit, i/e save the commandlet to a text file and paste it into PowerShell when needed. However if you are using a bridged connection to obtain LAN wide WIFI, you can only create it in PowerShell on Windows 11. It is not an available function for Windows 10 PowerShell. My general field of endeavor is cross platform networking so I take this as significant problem. The most intelligent and willing dialogue I was able to open about the issue was at 4sysops. https://4sysops.com/wiki/create-a-hyper-v-virtual-switch-with-powershell/ . Included in the response is a link to an available after market software solution which would indeed solve the problem of saving networking connection profiles in Windows systems https://www.netsetman.com/en/pro and at $49 US is reasonably priced. Hyper-V itself is by far the best virtualization solution for Windows users wanting to run Linux systems in Windows given Microsoft’s partnerships with OEM hardware providers. Hyper-V is the most tunable virtualization solution for hardware from Intel and AMD. Linux systems running in Hyper-V often have no discernible lag in excess of normal bare metal installations with properly tuned adequate hardware in Hyper-V, in fact sometimes an advantage in performance. In any case for users like me the best solution to the problem is Linux networking tools.

Linux Remembers / Windows Forgets

The title above is the bottom line of the solution, and the bottom line in all cross platform networking solutions. In my office and home I have two Windows 10 Professional desktop machines, both with two Linux VMs that run in Hyper-V. I also have a big Debian desktop that runs four different Linux VMs in gnome boxes and a Debian server with a database for technical information and a couple of Linux VMs I use for testing repairing and configuring network issues in the field while connected to my laptop. I also have one desktop computer and one laptop running only Linux Lite. Everything deployed in my office can connect via WIFI one to the other, including all the VMs. My Linux systems are all Debian (Bullseye, Bookworm) or Debian based (LMDE, Bunsen Labs, Devuan) and Ubuntu based Linux Lite. I have Linux Lite deployed in gnome boxes, in qemu/kvm with virt manager, in Hyper-V, and on bare metal mainly to test its general functionality and installer under those different conditions. The disappearing switch issue in Windows 10 is probably more annoying to me than it would be to ordinary home users, but it is also easier to permanently solve for me. I pay a lot of money, around $2,000 a year to my ISP for big bandwidth so I can WIFI everything together, sometimes 20 devices at once and have a good signal two blocks away. My wife can stream to her phone or laptop with it from across the street a block up. I can not overstate how convenient a resource it is to me. I want every advantage I have to always work for me. I expect my WIFI to perform exceptionally well period, so I am not about to accept the annoying disappearing switch problem without coming up with a lasting solution or two. Aside from writing a DNS stub resolver for Windows integrated to allow multiple device connections statically to the routed LAN and with available USB passthrough (probably the best permanent solution) I can’t think of any other easy way forward. Since I write mainly for Linux Lite users what follows here is the simplest most user friendly way around Windows awkward way of USB passthrough and dongle management without utilizing privacy invading after market Windows software. Follow the steps below in order.

Step One: Start your Windows computer. Connect to the Internet with WIFI only. Do not use an ethernet connection to connect the Internet. Attach an ethernet cable between your Linux computer and your Windows computer.



Step Two: Start your Linux computer and connect to the Internet with WIFI.



Step Three: Open network manager on your Linux computer and create a new shared to other computers ethernet connection and give it a specific name. This will share the WIFI connection on your Linux computer to your Windows computer.



Step Four: Connect the new LAN on ethernet from Linux not from Windows. When prompted on your Windows computer allow it to be shared over the new LAN. Windows network will show the connection as connected but with no Internet connection as long as Windows is connected to the Internet with its own onboard WIFI.



Step Five: Open up Hyper-V manager and create a new virtual external switch and select the ethernet connection to your Linux machine and give the switch the same name you gave the connection on your Linux machine. Add it to your switches and select it so your Linux machine running in Hyper-V can connect to it.



Step Six: Start your Linux system installed in Hyper-V and save the connection in network manager with the same specific name. Take note of the IP address; should something like 10.42.0.60.



Result: Your Linux system running in Hyper-V will now be able to connect to all the devices on your routed LAN with WIFI including the SSH server on your Windows host if you have one installed. All the other systems on your routed LAN will be able to connect to your Linux system in Hyper-V with WIFI by tunneling through the SSH server on your Linux computer connected to your Windows computer with ethernet. Since the ethernet connection is treated as temporary by Windows (only shows up when you actually connect it from your Linux machine) there is nothing to wipe out due to Windows updates, and all the connection configuration information is saved in the two Linux systems. Essentially what you end up with is a Linux system running in Hyper-V with its own WIFI adapter, and its Windows host on its own WIFI adapter. Additionally, I cannot overstate how much Remmina and SSH servers ease cross platform networking.

Return to Index Of Tutorials