Forum Discussion
Bala Sundaram
Sep 24, 2018Brass Contributor
Hyper-V Default switch IP address range change. Ver 1809 Build 17763.1
Can one confirm IP address range changed to 192.168.X.Y Subnet 255.255.255.240 from 172.X.X.X Also changes the subnet randomly on every Hyper-V services startup. 192.168.X.Y . X can change from 5...
HotCakeX
Sep 04, 2019MVP
When you do a route print, you will see that the default vSwitch is not creating a persistent route but rather a temporary one. it's not a bug, it's intentional and the way Microsoft made it.
you can request a feature change through Feedback hub app.
the norm is that when people are running professional servers in their Hyper-V, they set external vSwitch as the network adapter for their VMs, it provides more functionality.
there is also another case when the host is connected to a VPN, if the guest VM use default vSwitch, it will have access to the same VPN as the host. but if the guest VM uses an external vSwitch, it will continue using the Direct Internet connection Even though the host is connected to the VPN. now if the default vSwitch was to get a static IP address forever, it would cause conflicts with host VPN and other scenarios where the subnet of the default gateway on the host changed.
with non-persistent routes like this, default gateway first examines and evaluates the network topology and then based on the available networks and subnets, chooses an IP address.
so again this is Not a bug, it's just how it's made.
I have a normal home router, my Windows 10 is connected wirelessly to it. in my Hyper-V I created an external virtual network adapter and connected all my VMs to that same external vSwitch. I run 3 Windows server 2019 and one of them is a VDI host (yes Nested Virtualization). all of these with a 20$ wireless network adapter and a simple normal home router. it can't be any simpler and easier than that.
I've worked with VirtualBox and VMware Workstation 15 as well, but still Hyper-V is the best.
sn00p
Sep 04, 2019Copper Contributor
HotCakeX NAT is not about routes, it's about network address translation. And that switch is for NAT isn't it? But it's black-boxed and the only configuration parameter opened (static IP address) is simply broken, changing randomly every time you boot your computer. Why? No clues, nobody does this except MS. And documentation either not complete or it's just a bug.
Again, switch is not allowed to change it's own address randomly if configured statically. If MS made it intentionally, they should fire their developers and hire professionals.
This scenario is a dead horse. It's usable only in few cases. Again, all other virtualization software do things right in few clicks but not MS. Why? No clues.
Windows costs money. And the thing you have to buy yet another software to make it works is just bad. Because it's working pretty weird out of the box and workarounds are broken too.
- mlmathewsSep 11, 2019Brass Contributor
sn00p The recreation of the Default Switch with a new subnet on every host reboot is definitely a bug. I'm migrating from VMware, where I use a virtual NAT network for all my VM's. I knew going in to the migration that Hyper-V has limited capabilities compared to VMware, but I didn't expect the networking to be so limited. Here's the issues I've run in to:
* - Default switch reconfigures on every host restart and there is no way to prevent it.
* - Default switch is the only way to have VM's on a virtual NAT...it's not possible to create a Internal Switch with NAT (correct?) that doesn't get reconfigured on every host restart
* - External switch must bridge to a specific host NIC. My host is a laptop that is sometimes docked and connected via ethernet and sometimes connected via wifi.
I'm new to Hyper-V (but not new to working with VMs and networking), so please correct me if I've overlooked solutions to any of the above.
- HotCakeXSep 11, 2019MVPI'm not sure about that part where you mentioned Hyper-V has limited functionality compared to VMware. I have worked VMware workstation 15 and its previous versions for years, each has it's own set of features.
Hyper-V default virtual switch is exactly made for the type of the environment you work at.
sometimes you connect to WIFI network and sometimes you connect using Ethernet cable.
each of those networks can have different set of IP addresses and subnets.
now if the default virtual switch were to create persistent routes instead of temporary ones (as it does now), it would have created problems for you because you'd have to jump in CMD each time the networks changed and set the correct routing table.
right now default Hyper-v virtual switch takes care of it automatically and it's for quick VM set up, casual VM works.
but if you want to set up servers in Hyper-V like i do, you should use external Hyper-v virtual switch. it has more functions and it gives the guest VM a static IP because it bounds it to a Real physical network adapter. that's exactly what server admins Need. usually servers use more than 1 physical network adapter. so using the external virtual switch, they can properly and separately assign each of them to a specific external virtual switch and utilize them perfectly in the guest OSes (servers). servers do need static IP addresses.
but if you just want to install a Windows 10 pro or home and do casual works then the default switch should suffice.- mlmathewsSep 11, 2019Brass Contributor
With VMware, I could configure my virtual NAT network subnet...I had it set to 192.168.5.X and the host and guest IP addresses on the subnet where static. So no matter where I happened to be working, my VM's were isolated on a NAT network with static IP addresses (which is important for the type of work I do)
With the Hyper-V Default Switch changing the subnet on every reboot, I'm having to log in the to my main VM (Windows Server 2016) and tell it that the "new network" that it is now connected to is a private network.
- mlmathewsSep 11, 2019Brass ContributorP.S. I'm running on build 1903
- HotCakeXSep 04, 2019MVPI didn't talk about NAT, not even a word in my comment.
why? i told you why in my previous comment but you seem to ignore the reasoning behind it and keep on saying how bad Windows is. i can also write a book about how bad Linux is. but it's not about that. whether or not Windows costs money is off topic and not related to this thread.
i told you the solution for your problem, it's to use External Switch. I don't see why you don't want to use it. you don't need another software for it. Hyper-V doesn't need another license to use, it comes built-in by Windows 10.
again I provided real life facts and reasoning for why Windows does what it does and how it is helpful in what situations.