Update 19th February 2018:
This article has had a lot more attention than I ever expected! This has bought to light several issues with the process as well as changes made to Hyper-V and ESXi that break the process. You could wade through all 256 comments and assemble the corrections yourself, but user @Gambit has helpfully done this for me! So I’ve included the summary here:
@Tom Watson: Adding a line to /etc/vmware/config with vmx.allowNested = “TRUE”
Since all VM’s will be running nested (whole point of article) this is a must if you want them to start! The alternative is adding this line to every VMX file for each guest, Toms solution was much more elegant.
@burnett437: Configure ESXi Management vSwitch “accept” “promiscuous mode”. Apparently this was a known issue even in nested ESXi 5.5. While the host network will operate for a while without problem, the “promiscuous mode” policy will eventually be tripped and you wont be able to talk to the host at random times (I originally thought it was stability issues with the Tulip driver). Now I think this has to due with the nature of nested virtual switches (a VMWare vSwitch insude of a Hyper-V Virtual Switch). When this happens I found you could “down/up” the management vnicX to get it back, but just set the setting not worry about it.
@me: Network threat detection doesn’t like nested virtual switches either. My Symantec Endpoint Client would occasionally block traffic coming from my local NIC (vSphere Client/vSphere Converter) to this nested Host (Windows Firewall did NOT seem to care), but SEP occasionally tripped cause all “suspicious” addressing to the nested host.
@me: Use vSphere converter for guest images coming from other VMWare products….duh. ESXi doesn’t like split vhdk’s, guest won’t boot. This is a beginner mistake, but this article is for Hyper-V admins that may not know the subtle nuances between VMWare products.
@RichMD: I like the idea of hardware pass-through on the NIC. I may tinker with this because it may resolve several issues, not just ESXi v6.5 NIC blacklist issue.
Theoretically, passing the physical NIC directly to the nested ESXi Host could/should resolve the “promiscuous mode”, “Network Threat Protection” and even the “Half Duplex Legacy Adapter Requirement” (very slow network performance) problems. I may revisit this…I think my server board has a 2nd NIC I could try this with if I get the time.
The original article starts here:
Recently I’ve been playing around with the new Hyper-V Nested Virtualization feature within Windows 10 (build 10565 and greater) and Windows Server 2016. It is pretty cool to be able to create virtualized lab environments running that contain Hyper-V clusters. But what if we want a lab that contains VMWare ESXi Hypervisors running on Hyper-V host. I couldn’t find the process documented anywhere and I couldn’t even confirm if it should be possible. But after lots of asking a lot of annoying questions – thanks Adam Burns – Googling and hair pulling I managed to get it going:
So this seems like a good topic for a blog post.
What You’ll Need
You are going to need a few things to get this working:
- A Hyper-V host running on Windows 10 (built 10565 or greater) or Windows Server 2016 TP4.
- Enable-NestedVM.ps1 – A PowerShell script for enabling Nested Virtualization in a Hyper-V VM. Click here to get the file from the Microsoft team on GitHub.
- A VMWare account – just sign up for one here if you don’t already have one.
- VMWare PowerShell CLI installed – I used 6.3 release 1 that I downloaded from here.
- ESXi-Customizer-PS.ps1 – A PowerShell script for injecting network drivers into an ESXi 5.x/6.x ISO. I downloaded it from here.
I suggest you download all of the above items to a working folder – I called mine d:\ESX-In-Hyper-V, so these instructions will reflect that, but you can call your folder what ever you like.
You should end up with a folder containing these files:
And before you ask: No, you don’t need an VMWare ESXi 6.0 ISO – this will get downloaded and produced for us.
The Process
Part 1 – Prepare an ESXi 6.0 ISO with Network Drivers
The biggest problem I ran into when trying to install ESXi onto Hyper-V was that the ESXi kernel doesn’t come with drivers for the Microsoft Virtual Network Adapter or the Microsoft Legacy Network Adapter (emulates a DECchip 21140). So you’ll need to inject these drivers into the VMWare ESXi 6.0 ISO. Luckily there is a script available and the appropriate drivers DECchip 21140 (called “net-tulip” for some reason) that makes this process a breeze:
- Install WMWare PowerCLI.
- Open a PowerShell console.
- Enter the following commands:
CD D:\ESX-In-Hyper-V\ .\ESXi-Customizer-PS-v2.4.ps1 -v60 -vft -load net-tulip
- After a few minutes the VMWare ESXi 6.0 ISO will be downloaded and the “net-tulip” drivers merged with it:
The ISO will now be available in the D:\ESX-In-Hyper-V folder:
Part 2 – Create the Hyper-V VM
- In Hyper-V Manager create a new Virtual Machine:
- Click Next.
- Select Generation 1 and click Next.
- Set the Startup Memory to at least 4096MB.
- Uncheck Use Dynamic Memory for this Virtual Machine:
- Click Next.
- Don’t bother to Configure Networking on the next step – just click Next.
- Select Create a new virtual hard disk and set the Size to 10GB (this is just going to be the boot disk for the ESXi Hypervisor):
- Click Next.
- Select Install an operating system from a bootable CD/DVD-ROM.
- Select Image file (.iso) and browse to the ISO created in Part 1.
- Click Next then click Finish to create the Virtual Machine:
- Right click the new Virtual Machine and select Settings.
- Select the Processor node and increase the Number of Virtual Processors to at least 2:
- Select the existing Network Adapter node and click Remove:
- Select the Add Hardware node and select Legacy Network Adapter:
- Click Add.
- Select a Virtual Switch to connect the ESXi Host to.
- Click OK.
The Virtual Machine is almost ready to start up, but there is one more thing to do.
Part 3 – Enable Nested Virtualization
Before the starting up the Virtual Machine we need to enable Nested Virtualization Extensions on it. This is done by running a PowerShell script.
- Open a PowerShell console.
- Enter the following commands (adjusting the vmName to match the name of your Virtual Machine):
CD D:\ESX-In-Hyper-V\ .\Enable-NestedVm.ps1 -vmName 'VMWARE ESXi Host 1'
- Enter Y when asked to confirm any of the changes:
- The Virtual Machine is now ready to have ESXi installed into it.
If you run into any problems with enabling nested virtualization, I’d recommend reviewing the documentation. Covering all the possible ways Nested Virtualization might not be configured correctly is beyond the scope of this post. Also, this is still a preview feature and so may still have issues.
Part 4 – Boot ESXi Virtual Machine
- Start up the ESXi Virtual Machine and make sure you’re connected to it so you can see the ESXi boot screen:
- Quickly press Tab.
- Add the ignoreHeadless=TRUE to the Boot Options:
- Press Enter.
- The ESXi Installation system will start up.
- After a couple of minutes the VMWare ESXi 6.0.0 Installer will start up:
- You can now go through the ESXi installation process.
- You will receive this warning during the installation process but you can ignore it:
- The installation process will begin:
- Once the ESXi installation has completed you will see this message:
- Eject the ESXi Installation ISO before rebooting the Virtual Machine:
- Press Enter to reboot the VM.
Part 5 – Configure the ESXi Boot Options
The final thing we have to do is permanently set the boot options for the ESXi host so that the ignoreHeadless setting is always set to TRUE.
- When the ESXi machine reboots, quickly press SHIFT-O to set the boot options.
- Add the ignoreHeadless=TRUE to the Boot Options:
- Press Enter to boot up the ESXi host:
- Once the ESXi has booted up, press F2.
- Enter the root login credentials that were set during the ESXi installation process.
- Select Troubleshooting Options and press Enter.
- Select Enable ESXi Shell and press Enter:
- Press ALT+F1 to bring up the console:
- Enter your root credentials.
- Enter the following command:
esxcfg-advcfg --set-kernel "TRUE" ignoreHeadless
- Press ALT+F2 to return to the main ESXi screen.
The ESXi host can now be restarted without having to worry about the ignoreHeadless=TRUE setting.
You now have a fully running ESXi Host running inside a Hyper-V Virtual Machine. I shouldn’t have to point out that this is a completely unsupported way of installing an ESXi Host and should never be used for production workloads. But at least we now have a way of running ESXi Hosts in a Hyper-V Lab environment.
Here’s hoping that someone finds this useful!
Finally, Successful, but the method is complex.
1) Try to install ESXi 5.5
2) Upgrade ESXI 5.5. to 6.0
3) After firstly upgrade 6.0 , Please re-edit boot option
4) Re-do Part 5
5) Completed
You can enjoy esxi 6.0 now
Test Platform : Nested Windows Server 2016
Test Software : Vmware Workstation 14 pro
LikeLiked by 1 person
Well done! That is excellent information and great news! Very awesome!
LikeLike
Thank you . However I tested to install and try to mount other disk inside the hyper-v , it have some issues:
1) try to add vhd disk to other IDE controller ( 0 or 1), Then fail to mount in ESXI
2) try to add vhd disk to SCSI controller , Then fail to mount in ESXI
LikeLiked by 1 person
Finally. I Found the latest version esxi iso block the net-tulip
Blocked Build version: ESXi-6.0.0-20171104001-standard (Build 6921384)
Worked Latest version: ESXi-6.0.0-20170604001-standard (Build 5572656)
I totally disappointed to vmware why blocked the net-tulip driver?
prntscr.com/hu3r7g
LikeLiked by 1 person
Great info Billy! Any info as to why VMWare blocked the net-tulip driver? That seems like a bit of a slap in the face – but perhaps it is considered legacy and not something they want to continue to have to support.
It is a shame that VMWare make it so hard to experiment with and learn ESXi.
LikeLike
I think i give up this solution , Because Vmware communities forum, no any one follow up the issue
Link https://communities.vmware.com/message/2636295?tstart=0#2636295
LikeLike
That is a bit sad that it is not being progressed! It would be fantastic if VMWare would just add a Hyper-V compatible networking driver to the ESXi 6.x host image.
LikeLike
Thank you so much for this! I was struggling getting this to work, but it did once I used the correct version.
LikeLiked by 1 person
Respected Daniel I perform the same method up to part 1 but now in part 2 when i start to add new virtual machine in Hyper V it does not works and niether gives the option of new VM.
secondly when I want to connect to server the following error occurs.Virtualization is also in BIOS .
The error is ” DESKTOP- OOKJJMO” Check that the virtual machine management is running and that you are authorized to connect to server.
Your help will be highly appreciated
LikeLike
HI Taj,
Does the VM start up in Hyper-V – e.g. show as started? What version of Windows are you using as your host?
Thanks
Dan
LikeLike
NO BECAUSE HYPER V DOES NOT GIVE ME NEW VM OPTION.ONLY GIVES ME “CONNECT TO SERVER OPTION” BUT WHEN I TRY TO CONNECT TO LOCAL SERVER the above mentioned error arise. I am deeply depressed
I am using windows 10 pro 32 bit (10.0, build 10586)
need your help at earliest time and thanks for nice reply and sorry for bothering you again and again….
LikeLike
Hi Taj,
Ah, right, I now understand. This is because you’re using 32-bit Windows 10. Hyper-V is only supported on 64-bit version of Windows 10 (see https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/hyper-v-requirements).
So you’ll need to update to a 64-bit version of Windows 10 – but you’ll want to ensure you’ve got at least 8GB RAM for running an ESXi host on a Hyper-V VM.
I hope that helps! Sorry it isn’t better news.
Thanks
Dan
LikeLike
Hi,
I am getting a “no network adapter” error at part 4.5. I have tried external, internal legacy but still the same error?
LikeLike
Hi Stuart,
What version of ESXi are you installing? Is it 6.0 or 6.5?
Also, if you look at some of the comments above, this problem seems to have started occurring in Hyper-V since a recent patch. I haven’t been able to confirm this though.
LikeLike
Daniel,
I can confirm that whether I use ESXI 6 or 6.5 I am getting the same no network adapter error on a Windows 2016 Hyper-V with the latest patches.
This process does not work for me any longer. 😦
I have searched to see if maybe a new net_tulip driver was released but it does not appear to be the case.
If anyone figures this out I will be forever grateful 🙂
LikeLike
This is sad news 😦 Thanks for posting this!
LikeLike
VMWare just released the Open Source Disclosure Packages for ESX 6.7:
https://communities.vmware.com/message/2781151#2781151
This might enable a re-compile of the net-tulip drivers to support 6.7. Anyone up for giving it a go?
LikeLike
The only workaround I have found is selecting the ESXi-6.0.0-20170604001-standard build by replacing -v60 with -sip and selecting option 29 for ESXi-6.0.0-20170604001-standard.
From what I have read vmware has blocked tulip past that verison.
Command I used : .\ESXi-Customizer-PS-v2.5.1.ps1 -sip -vft -load net-tulip
The install worked fine for me after that.
LikeLiked by 3 people
This worked for me as well! Suggest this method to be listed in the guide. Otherwise, excellent guide!
LikeLike
This worked for me as well. make sure you check the image selection because today it was selection 35.
LikeLike
This worked for me. Thanks!
LikeLike
A pleasure – cheers!
LikeLike
Selecting that specific version of ESXi using the sip works a treat. Thanks Brian!
LikeLike
Hi, kindly advise where or what I am doing wrong here. I have gone to run the script to enable nested VM and get a whole load of errors as below
PS C:\ESX-In-Hyper-V> .\Enable-NestedVm.ps1 -vmName ‘VMWARE ESXi Host 1’
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:5 char:3
+ 1 param([string]$vmName)
+ ~~~~~
Unexpected token ‘param’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:14 char:3
+ 9 if([string]::IsNullOrEmpty($vmName)) {
+ ~~
Unexpected token ‘if’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:15 char:8
+ 10 Write-Host “No VM name passed”
+ ~~~~~~~~~~
Unexpected token ‘Write-Host’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:16 char:8
+ 11 Exit;
+ ~~~~
Unexpected token ‘Exit’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:21 char:4
+ 15 $4GB = 4294967296
+ ~~~~
Unexpected token ‘$4GB’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:30 char:4
+ 22 $myWindowsID = [System.Security.Principal.WindowsIdentity]::GetCur …
+ ~~~~~~~~~~~~
Unexpected token ‘$myWindowsID’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:31 char:4
+ 23 $myWindowsPrincipal = New-Object System.Security.Principal.Windows …
+ ~~~~~~~~~~~~~~~~~~~
Unexpected token ‘$myWindowsPrincipal’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:35 char:4
+ 26 $adminRole = [System.Security.Principal.WindowsBuiltInRole]::Admin …
+ ~~~~~~~~~~
Unexpected token ‘$adminRole’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:39 char:4
+ 29 if ($myWindowsPrincipal.IsInRole($adminRole)) {
+ ~~
Unexpected token ‘if’ in expression or statement.
At C:\ESX-In-Hyper-V\Enable-NestedVm.ps1:41 char:8
+ 31 $Host.UI.RawUI.WindowTitle = $myInvocation.MyCommand.Definitio …
+ ~~~~~
Unexpected token ‘$Host’ in expression or statement.
Not all parse errors were reported. Correct the reported errors and try again.
+ CategoryInfo : ParserError: (:) [], ParseException
+ FullyQualifiedErrorId : UnexpectedToken
PS C:\ESX-In-Hyper-V>
LikeLike
Hi There,
It sounds like the file Enable-NestedVm.ps1 has been downloaded corrupt in some way? Can you redownload it from the Microsoft GitHub repo? The first line of the file must be param([string]$vmName)
HTH
LikeLike
Thank you! Got the script from Microsoft GitHub – with first line as described. It worked!
LikeLiked by 1 person
Awesome article. I wish the author would revisit and update with many of the comments that include requirements for making this work. I had to read almost every comment to see that many others had ran in to many of the same issues I had, and posted decent resolutions.
Some things that the article should be updated on was:
@Tom Watson: Adding a line to /etc/vmware/config with vmx.allowNested = “TRUE”
Since all VM’s will be running nested (whole point of article) this is a must if you want them to start! The alternative is adding this line to every VMX file for each guest, Toms solution was much more elegant.
@burnett437: Configure ESXi Management vSwitch “accept” “promiscuous mode”. Apparently this was a known issue even in nested ESXi 5.5. While the host network will operate for a while without problem, the “promiscuous mode” policy will eventually be tripped and you wont be able to talk to the host at random times (I originally thought it was stability issues with the Tulip driver). Now I think this has to due with the nature of nested virtual switches (a VMWare vSwitch insude of a Hyper-V Virtual Switch). When this happens I found you could “down/up” the management vnicX to get it back, but just set the setting not worry about it.
@me: Network threat detection doesn’t like nested virtual switches either. My Symantec Endpoint Client would occasionally block traffic coming from my local NIC (vSphere Client/vSphere Converter) to this nested Host (Windows Firewall did NOT seem to care), but SEP occasionally tripped cause all “suspicious” addressing to the nested host.
@me: Use vSphere converter for guest images coming from other VMWare products….duh. ESXi doesn’t like split vhdk’s, guest won’t boot. This is a beginner mistake, but this article is for Hyper-V admins that may not know the subtle nuances between VMWare products.
@RichMD: I like the idea of hardware pass-through on the NIC. I may tinker with this because it may resolve several issues, not just ESXi v6.5 NIC blacklist issue.
Theoretically, passing the physical NIC directly to the nested ESXi Host could/should resolve the “promiscuous mode”, “Network Threat Protection” and even the “Half Duplex Legacy Adapter Requirement” (very slow network performance) problems. I may revisit this…I think my server board has a 2nd NIC I could try this with if I get the time.
LikeLiked by 1 person
Hi There, really great feedback – and I’d definitely love to go back and update the article with all the updated info. I’ve just not had the time to bring it all together and confirm what does/does not work – I’m primarily working in the cloud space now (no ESXi for me 😦 ). But what I’ll do is copy/paste your summary there (which is fantastic BTW) and link it at the top to help others find the info. Thanks again for your feedback!
LikeLike
I get an error when trying to connect to the v-front online depot.. says could not download from depot at https:….index.html, skipping file not found…
LikeLike
You’re not behind some sort of proxy or firewall that is blocking the download?
LikeLike
Hello everybody,
So I started to following the steps to awesomeness and ran into my first issue. Instead of downloading the VMware PowerCLI which caused me problems, I followed this:
https://blogs.vmware.com/PowerCLI/2017/04/powercli-install-process-powershell-gallery.html
Hopes this helps anyone.
LikeLiked by 1 person
Thanks for the info Jose!
LikeLike
I’m also facing “No Network Adapters” issue, Legacy, server 2012R2, HV Version: 6.3.9600.16384
LikeLike
I’ve successfully installed ESX in Hyper-V on my Windows 10 desktop. The problem I am having is I am unable to boot from the CD-ROM inside a ESX VM. I’ve tried mounting the ISO directly from the ESX datastore to the VM and configured the VMWare VM to mount to the host CD-ROM device, where I mounted the ISO in the ESX VM in Hyper-V. All I get is a black screen with a solid cursor. Any ideas?
LikeLike
Hi Ed, I’m not sure it is possible to mount the optical drive of the Hyper-V host so that it appears as an optical disk in the ESXi host. It might be possible, but I’ve never tried. Anyone else?
LikeLike
Got it ESXi working today on the image Daniel reported as working after dogged persistence! Now next step, add hard drives and install windows 2016 servers in the nested environment. Thanks Daniel for doing the hardwork to uncover this solution.
LikeLike
Were you able to complete this. I get an error when booting the Windows VM inside ESX that states I need to remove the Hyper-V Role
LikeLike
Yes, I was able to do this. But I didn’t run into this error. But I would expect this issue to occur if the Windows VM inside the ESXi host did have the Hyper-V Role enabled. This would happen unless the VMWare equivalent of nested virtualization was enabled on the ESXi host.
LikeLike
I never get to boot the VM to install an OS. Hyper-V role is only on the Host running the ESX VM
LikeLike
Followed these steps and I got the error: Failed to start the virtual machine.
VMware ESX and Hyper-V are not compatible. Remove the Hyper-V role from the system before running VMware ESX.
When I tried to start the VM. My Hyper-V host is Windows 2016
LikeLike
Ok, reviewed the steps, added a line via vi to /etc/vmware/config ignoreHeadless=TRUE and it worked. I tried it on v60 and v65, seems like the NIC drives stopped working on v65.
LikeLiked by 1 person
That is some great info David. I wasn’t sure exactly which version it stopped working on.
LikeLike
First of all thank you very much for this epic article! As Brian Blair told above the installation only worked for me after selecting option 29 for ESXi-6.0.0-20170604001-standard. However I’m facing the following issue; I’m only able to access ESXi VM through the IPv6, impossible to reach IPv4 (either vSphere Client nor ping command). I tried several firewall configurations and ESXi static network configurations without success. Any idea? Thank you all in advance!
LikeLike
Hi Manuel,
I’m glad the article was useful! The process is certainly pretty hit and miss I’m afraid. I’ve run the process on various different configurations of Hyper-V host machine and can’t find a clear correlation with config and what actually works. I’ve usually had to create a private hyper-V network and then create a gateway VM connected to the private network to use as a NAT to get traffic in/out. But even that sometimes doesn’t work. Sorry I can’t be of more help.
LikeLike
I have successfully (sort of) got this running. ESXi 6.0.0 (build 6856897) appears to be happy on my Server 2016 instance. I can connect via vSphere and create new machines. The problem is I can never get them to start correctly to install an OS.
I have downloaded an MSDN ISO of Server 2016 and placed it into a folder called ISO on my datastore. I can create a new machine in the same datastore and it appears to be OK until I try to start it.
The VM boots and shows the “loading files” splash screen that you would expect for a Windows installation. The VM then reboots and goes to a black screen with a non-flashing cursor and does nothing else. I left it for 30 minutes and it does not progress.
The log file shows this:
2018-04-20T14:16:53.863Z| mks| W115: VNCENCODE 3 failed to allocate VNCBlitDetect
2018-04-20T14:16:53.863Z| mks| W115: VNCENCODE 3 disabling VNCBackBuffer
2018-04-20T14:17:08.713Z| vcpu-0| I125: Intel VT enabled.
2018-04-20T14:17:08.721Z| vcpu-0| I125: Triple fault.
2018-04-20T14:17:08.721Z| vcpu-0| I125: MsgHint: msg.monitorEvent.tripleFault
2018-04-20T14:17:08.721Z| vcpu-0| I125+ A fault has occurred causing a virtual CPU to enter the shutdown state. If this fault had occurred outside of a virtual machine, it would have caused the physical machine to restart. The shutdown state can be reached by incorrectly configuring the virtual machine, a bug in the guest operating system, or a problem in VMware ESX.—————————————
2018-04-20T14:17:08.723Z| vcpu-0| I125: Vigor_MessageRevoke: message ‘msg.monitorEvent.tripleFaultRestart’ (seq 19657) is revoked
2018-04-20T14:17:08.723Z| vcpu-0| I125: CPU reset: hard (mode 2)
2018-04-20T14:17:08.724Z| vcpu-1| I125: CPU reset: hard (mode 2)
I am a Hyper-V and Windows guy – not a VMware admin. I have no idea what is causing this or why.
One thing I have noticed as strange is that the ESXi host has 16GB of RAM allocated to it in Hyper-V and the ESXi main screen indicates that. But in Resource Allocation in vSphere it shows my total memory capacity as 12223 MB. So somehow vSphere is not seeing all the RAM.
LikeLike
I’m in the same boat- I’m a hyper-V guy – so hopefully an ESX person has some idea what might be causing this. I do suspect that the memory issue could be related…
LikeLike
Read some of the other comments right through. You will only be able to run 32 bit OSes nested on your virtual ESXi hosts.
Also add the following line to /etc/vmware/config
vmx.allowNested = “TRUE”
LikeLike
Hi, I tried to install the installation according to the given instructions. During installation part 4 step 5, I get the error “nfs41client failed to load”. Do you know what caused the error?
LikeLiked by 1 person
HI Dennis, I have not come across any issue like this I’m sorry. It certainly sounds like something related to networking, but beyond that it is a mystery. I’m sorry I can’t help with that one…
LikeLike
Hi I have followed your guide which is very good btw but I am still not detecting any Network adapters?
LikeLike
I finally got this to work after I messed around with it most of the day trying to install 6.0. I could not get past the tulip driver block so I dropped back to 5.5 and the install was a breeze. Now the biggest issue I have is that only the few Gen 1 VM’s I have can communicate with the ESXI host. None of the Gen 2 machines can see or communicate, though the ESXI host will pick up a DHCP address from the DC running Gen 2. It seems apparent that there is no communication between the legacy network adapters and the Gen 2 adapters. Has anyone found a fix or a workaround for this? I am not attempting to set this up for production work (Obvoiusly) but would like to use it for training. The problem is, while I need to train on VMWare based products, my entire virtual environment is Hyper-V. NONE of the training VM’s is Gen 1 (Of course) so if anyone knows of a workaround or solution to this issue i would be grateful.
LikeLike
Same here!
And some SCSI drivers would also be nice. I can’t passthrough my disks now.
LikeLike
When I run command:
.\ESXi-Customizer-PS-v2.4.ps1 -v60 -vft -load net-tulip
I get error: WinError 10054
An existing connection was forcibly closed by the remote host
LikeLike
Hi There,
I’ve not seen that one at all I’m sorry. Any other details shown?
LikeLike
It means you got disconnected by the remote webserver from VMWare. Maybe a firewall issue between you and the internet?
LikeLike
There is a tweet about this issue from the ESXi-Customizer-PS developer here: https://twitter.com/VFrontDe/status/998868087586934785
LikeLike
Great tip! Thank you
LikeLike
I would love to say this has worked for me. Ive tried a number of different options but all result in ‘no compatible network adaptor found’. Ive tried deploying in a HyperV cluster, on a HyperV standalone. The Network Switch the Legacy Network Adaptor is connected to can be either a SET or LACP Switch, as I don’t have a ‘spare’ NIC to create a vSwitch against. Just wondering if this maybe the issue, before I purchase some extra hardware. Thank you.
LikeLike
Hi Phil, it does feel like either Microsoft has changed something of VMWare has, but over time these methods have become less and less reliable. I wish I could give you confidence that this will work on any hardware set up, but it is pretty hit and miss. I’ve never had a problem, but clearly many have. I don’t generally work on Hyper-V or VMWare any longer so don’t have an opportunity to test much.
LikeLike
Hi Daniel! Could you please help me? i try to download ESXi5.5 image with included net-tulip drivers for HyperV but this proccess failed with following error: [WinError 10054] An existing connection was forcibly closed by the remote host . Couid you please clarify how i can download it? i can donwload only 6.0, but this version have issue with network adapter. Thanks in advance
LikeLike
Hi There, This sounds like a lower level network error. Are you possibly downloading this from behind some network device like a proxy?
LikeLike
Hi Daniel! thank you for reply but i connected directly to router without any proxy. I could to download the ESXI 6.0(ESXi-6.0.0-20180604001-standard-customized.iso) by the script but other versions failed with mentioned error. Could you please clarify is it possible to direct download the customized image from some repository?
LikeLike
I’m not actually sure if any other versions are available in the repository still. They may have been removed (causing the error you’re seeing). Unfortunately I’m not the repository owner so don’t have much visibility/control over it 😦
LikeLike
Installed ESXi 6.0 on Windows Server 2016 Build 1607.
One thing I noticed: net-tulip doesn’t work on latest builds of ESXi 6.0. I was getting “No Network Adapters”. And it blacklisted on 6.5+.
So, I had to use 1st build of ESXi 6.0.
And to use 1st builds, you need to add “-sip” flag and choose oldest build:
.\ESXi-Customizer-PS-v2.6.0.ps1 -sip -v60 -vft -load net-tulip
LikeLike
+++ useful info there! Thank you!
LikeLike
Hi,
thanks for this great tutorial. I ran into a few problems. Some I could resolve, but with one I am stuck. This is the output
PS C:\ESXI in Hyper-V> .\Enable-NestedVM.ps1 -vmName “ESXi”
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:11 Zeichen:5
+ 202 812 698 MicrosoftDocs/Virtualization-Documentation
+ ~~~
Unerwartetes Token “812” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:11 Zeichen:9
+ 202 812 698 MicrosoftDocs/Virtualization-Documentation
+ ~~~
Unerwartetes Token “698” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:11 Zeichen:13
+ 202 812 698 MicrosoftDocs/Virtualization-Documentation
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Unerwartetes Token “MicrosoftDocs/Virtualization-Documentation” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:18 Zeichen:16
+ @theodthompson theodthompson Fixed network config bug; cleaned up men …
+ ~~~~~~~~~~~~~
Unerwartetes Token “theodthompson” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:19 Zeichen:17
+ @theodthompson @scooley @remylarrieu
+ ~~~~~~~~
Unerwartetes Token “@scooley” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:19 Zeichen:26
+ @theodthompson @scooley @remylarrieu
+ ~~~~~~~~~~~~
Unerwartetes Token “@remylarrieu” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:21 Zeichen:5
+ 168 lines (133 sloc) 5.17 KB
+ ~~~~~
Unerwartetes Token “lines” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:21 Zeichen:16
+ 168 lines (133 sloc) 5.17 KB
+ ~~~~
Unerwartetes Token “sloc” in Ausdruck oder Anweisung.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:21 Zeichen:15
+ 168 lines (133 sloc) 5.17 KB
+ ~
Schließende “)” fehlt in einem Ausdruck.
In C:\ESXI in Hyper-V\Enable-NestedVM.ps1:21 Zeichen:20
+ 168 lines (133 sloc) 5.17 KB
+ ~
Unerwartetes Token “)” in Ausdruck oder Anweisung.
Es wurden nicht alle Analysefehler berichtet. Korrigieren Sie die berichteten Fehler, und versuchen Sie es erneut.
+ CategoryInfo : ParserError: (:) [], ParseException
+ FullyQualifiedErrorId : UnexpectedToken
I have no clue what is going wrong. Does anybody know how to fix this?
LikeLike
.\ESXi-Customizer-PS-v2.6.0.ps1 -v55 -vft -load net-tulip
works
LikeLike
I having no luck. Either manually injest net-tulip or using ESXi customizer. No NIC Detected on Windows server 2016 Version 10.0.14393
LikeLike
I got this to work recently with an older version of ESXi (6.0.20150404001).
I used this command:
.\ESXi-Customizer-PS-v2.6.0.ps1 -sip -vft -load net-tulip -v60
and then selected the version mentioned above.
There may be newer versions that work , but I haven’t tried.
I can yell you that the latest 6.0, 6.5 and 6.7 versions do not work.
When loading the tulip driver, they all report this error:
Missing namespace com.vmware.vmkapi#v2_0_0_0
LikeLike
Thanks for the info Luis! Great stuff, appreciated.
LikeLike
Hi, i have it all running, ip assigned by DHCP but, i cant access the MGMT page?
any ideas?
LikeLike
The MGMT page of the ESXi host on the VM? Are you trying to access it from the Hyper-V host? You might need to ensure you’ve got the Hyper-V VSwitch that is connected to the ESXi host VM to be internal or external (not private).
LikeLike
Will these instructions help me get vmware player install and images working on windows 10 with hyper-v hypervisor installed? I’m asking so I can use https://techsviewer.com/install-macos-high-sierra-vmware-windows-pc/ instructions without having to uninstall my Hyper-V services configuration.
LikeLike
Hi Daniel, first of all thanks for this tuto.
I have my hyper-V runinng, inside of the hyper-v I have 4 machines running, 2 windows and 2 ESXi hosts.
I can ping from hyper-v host both Windows machines, inside of this machines I can ping the hyper-v host and other windows machine…but i can’t ping my ESXi hosts, inside from one ESXi host i can ping the other ESXi host and can’t ping the windows machines. Do you have any clue? I have a internalNAT switch.
Thanks
LikeLike
Hi Joao, many people have seen similar problems and have posted solutions above in the links. I’d recommend having a look and see if any of the solutions resolve the issue for you.
LikeLike
Hi Joao F, were you ever able to figure this out? I am having exactly the same issue. Bizarrely, I can ping the ESXi host from Windows 7 with a legacy network adapter, but not from anything else. It’s driving me crazy.
LikeLike
hi all,
the offline bundle available on vmware website has the legacy network adaptor blocked, i tried 5.5 and 6.0.
if any one has 6.0 which was downloaded about 3 years ago, please share the installer.zip
LikeLike
At beginning i had troubles with NIC but works with Args -sip & -v60 and selected Version of 2015.
Thanks all!
LikeLike