WDS2012 - cannot boot from a VM into PXE

H Experts,

I have installed a WDS2012 Server for deployment.
The boot image and capture images are done.
For test I want to use a vm from vmware.
But I cannot boot via pxe.
Do you have any ideas ?

or is it not possible with a vm ?
Eprs_AdminSystem ArchitectAsked:
Who is Participating?
vivigattConnect With a Mentor Commented:
Check the WAN link for ports connectivity. I sent the list of required ports earlier.
You can use zenmap/nmap for instance for some host located in "network B" to check the opened ports on "DeployServer".
Telnet can be used to check TCP ports only...
Rob StoneConnect With a Mentor Commented:
It is possible - http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vsphere.vm_admin.doc%2FGUID-ABDA2AC1-9799-4C9C-B2A0-97CBB5E78D68.html

Have you configured the network settings on the VM so it can reach the DHCP/DNS/AD server?

You can check the DHCP log file too.
MaxEL_UAConnect With a Mentor Commented:
I'm not familiar with VMware,but in Hyper-V there is a setting to block DHCP anouncements. I had same problems after migration of WDS form Hyper-V 2008R2 to 2012, where this option appeared.
Making Bulk Changes to Active Directory

Watch this video to see how easy it is to make mass changes to Active Directory from an external text file without using complicated scripts.

Eprs_AdminSystem ArchitectAuthor Commented:
yes the dns an ad is reachable from the vm.
The only thing is I have gateway
Eprs_AdminSystem ArchitectAuthor Commented:
now I want to boot from a physical client into PXE and I have the same error.
TFTP timeout...

Why TFTP ?
In services I cannot see any TFTP server service running.
vivigattConnect With a Mentor Commented:
PXE booting a VMWare guest is absolutely possible.
But the problem is not with VMs since you also have it with physical clients.

TFTP is the service that offers boot files to PXE clients. It is required when PXE booting.
The TFTP Service can be actually embedded in some other service (I don't know for sure for WDS2012, you could check what processes listens on UDP port 69:
netstat -ba -p UDP | grep :69
and if you do have something then:
netstat -ba -p UDP > %temp%\udp.txt
notepad %temp%\udp.txt
and search :69 in the text file. The name of the process listening on UDP 69 is on the next line

Some leads:
Check this article:

Check the firewall on the server as well.
TFTP port (UDP 69) must be opened.
If WDS/PXE and DHCP runs on the same server, check my article and its comments:
and make sure you comply with the rules. In particular DO NOT SET DHCP OPTIONS 66 and 67 (when using a real PXE server this can cause issues)
Eprs_AdminSystem ArchitectAuthor Commented:
ok I will check this now
Eprs_AdminSystem ArchitectAuthor Commented:
still not working.
Is it a problem when the gateway shows always ?
Eprs_AdminSystem ArchitectAuthor Commented:
see the picture...
vivigattConnect With a Mentor Commented:
Your PXE portion does work, since you can download WDSNBP and it takes control of your client and tries to contact WDS server. This is where it fails...
It tries to contact a WDS service running on Check what is going on on that server.
As far as I can tell, it should be able to contact it (no IP routing/gateway issue on first sight)
Eprs_AdminSystem ArchitectAuthor Commented:
Strange is, last week it was working and no changes were made.
What can be the problem with the WDS ?
Eprs_AdminSystem ArchitectAuthor Commented:
WDS role is installed
Boot Image is created
Capture Image is set

All was working, now I always get
Eprs_AdminSystem ArchitectAuthor Commented:
now I also changed the NIC type from VXNET3 to E1000
But the same error.
Eprs_AdminSystem ArchitectAuthor Commented:
has ist to do with the broadcast of the client, because it is another subnet ?
Eprs_AdminSystem ArchitectAuthor Commented:
do you have any idea ?
because I cannot boot from VM into PXE.
See below:

The Following Client started TFTP Download:

Client IP:
Filename: boot\x64\pxeboot.com
File Size: 25358
Client Port: 2072
Server Port: 64970
Variable Window: false

The Following Client completed TFTP Download:

Client IP:
Filename: boot\x64\pxeboot.com
File Size: 25358
Client Port: 2072
Server Port: 64970
Variable Window: false

A Non-Shared buffer created for reading file C:\RemoteInstall\boot\x64\pxeboot.com was deleted.
vivigattConnect With a Mentor Commented:
if the client is on another subnet, you have to make sure that it can communicate with the WDS server. The gateway in particular must be set.
Is your PXE server on the WDS server or is it on another host in the same subnet as the client? Since the PXE portion does work, it seems that subnet/gateway settings for the the client and PXE server to communicate is OK.
vivigattConnect With a Mentor Commented:
Check firewall and ACL settings on your routers/switches.
This link:
lists the ports that need to be opened.
Eprs_AdminSystem ArchitectAuthor Commented:
Look, I have two DHCP servers.
From one site it is working with a physical client.

The vm is in another location and connects to another DHCP server.
See the picture before. The settings are ok.
But I am still not possible to connect to the WDS with a vm....
vivigattConnect With a Mentor Commented:
Could it be that the VM uses the DHCP that is in its own subnet?
If so, does it PXE-boots off a server it its own subnet but then can't reach the WDS server in the other subnet? Have you set the default gateway for the subnet in which the VMs stand?
Also, make sure that your DHCP servers do NOT have any options 66 or 67 ste. This can interfere with PXE operations.

Do you know that you can have a single DHCP server serving several subnets, provided that you have set a dhcp relay (ip-helper in Cisco world) to forward to central DHCP server the DHCPDISCOVER packets sent by clients in their own subnet on broadcast address?

More about PXE and DHCP interaction in my article:
(and its comments)
Eprs_AdminSystem ArchitectAuthor Commented:
the vm gets the ip 10.2.4.x
This is the site where the vmware is located.

The wds server has the ip
This subnet is for servers.

You have seen the client gets the dhcp settings....
I do not understand what is wrong ?
Eprs_AdminSystem ArchitectAuthor Commented:
the physical client on another site works with another dhcp server.

The client has IP 10.1.4.x
The WDS server has
And in this scenario the gateway is also set automatically.
You see the subnets are different, but I can boot with pxe.
vivigattConnect With a Mentor Commented:
I can't tell if the subnets are different without subnet masks...
10.x.x.x/ is the same subnet
10.2.x.x/ is the same subnet too.

From what I can see in the picture you posted, the client VM had an IP address of, was served by dhcp server and tried to use as its WDS server.
Since its gateway is, the subnet mask is certainly (client and gateway must be in the same subnet) so all the devices would be in the same subnet, as far as I can tell...
Can you send your DHCP configurations and explain your subnetting?
Eprs_AdminSystem ArchitectAuthor Commented:
our network is devided in two parts.
PART A has all DHCP client 10.1.4.x
here the pxe boot with a physical machine works.
And I tested another VM from proxmox, this also works.
Here the DHCP settings ok, I think.

PART B has all DHCP client 10.2.4.x
here the pxe boot is not working.
Both DHCP servers are set up with 66 and 67
Where is the error here ?
vivigattConnect With a Mentor Commented:
what are the subnets?
As I told you, 10.x.x.x/ is a single subnet, and 10.x.x.x is usually used with subnet mask.

Regarding your other question:
The error setting dhcp option 66 and 67 when you also have a PXE service, is that you create a conflict!
DHCP options 66 and 67 are used to send to the client the details about tftp server and boot file name. If you set them directly in DHCP, you don't need a PXE server per se.
A PXE server will send these details in DHCP messages that do not offer any IP address.
Now when a PXE client gets a DHCP answer that contains option 66 and 67, it usually ignore what PXE server said.
This is particularly crucial when you have several architectures that rely on PXE. Lets say that you have x86 and x64 clients. They can't use the same NBPs, so the PXE server has some logic to send the correct NBP depending on the architecture of the client. The client sends a PXE/DHCP request with its architecture detailed in DHCP option 60... don't get confused here, the PXE client SENDS a DHCPDISCOVER packet in which the Dhcp option 60 is set. It is received by DHCP server which ignore this client set DHCP 60 option. It is ALSO received by PXE Server which examine this client-set DHCP option and sends to the client the NBP that corresponds to its architecture.
If you have set option DHCP 67 in DHCP itself, the client uses the NBP name that DHCP sent in its DHCPOFFER messages, ignoring what PXEServer sent.

For helping you better, can you let us know what are the IP addresses of DHP Servers and WDS servers that you want to use with "PART B"? ANd let us know the DHCP-based IP config that a client in Part B will get.
Eprs_AdminSystem ArchitectAuthor Commented:

yesterday I found out, in NETWORK A it is working with the DHCP settings.
And in NETWORK B pxe boot with vmware vm´s is not working.
The subnet is a 16bit subnet mask.

Yesterday I also enter the same data to the DHCP B, like in DHCP A.
As you can see in the picture, the IP of the WDS is
The WDS works very well with the NETWORK A, 10.1.4.x /16
Routing is ok here.
Eprs_AdminSystem ArchitectAuthor Commented:
On the NETWORK A , I have a /16 subnet
On the NETWORK B , I have a /21 subnet
vivigattConnect With a Mentor Commented:
Without having any details about your DHCP settings for network B, the routing scheme etc, I can't help much...
Can you please let us know:
- DHCP settings for NETWORK B
- IP setting for Network B (IP range, subnetmask, which seems to be 21bits, gateway, dhcp options)
- router setting (firewall and the like) for routing packets from Network B to Network A were the WDS server resides.
Eprs_AdminSystem ArchitectAuthor Commented:
Ok, here they are:
IP Pool, subnet:
006-DNS ,
015-DNS Domain domain.local
042-NTP server
046-WINS NBT 0x8

And I made a test for routing.
The vm client always gets the IP
Now I gave this IP to a WIN8 test vm.
From this vm I could ping the WDS server.
And from the WDS server I could ping the WIN8 test vm.

Any ideas what is wrong here ?
vivigattConnect With a Mentor Commented:
What is the address of "deployserver"?
If so, it is in the same subnet as NETWORK B (because the range is - for your subnet which is
Could it be that NETWORK A and NETWORK B are in the same subnet and that you have then 2 DHCP servers in the same subnet, which is never a good thing unless they are actually made to work together (split scopes or failover)?

DHCP options 66 and 67 should not be set in DHCP options (check my previous messages) and you should set an ip-helper/dhcp relay from NETWORK B to "DeployServer", so that "DeployServer" gets the , (but I don't think this is the issue, unless your VM is 32bits only, because then you are forcing a 64bits installation).

There may be some other factors to consider. Have you checked the logs on "DeployServer"?
Eprs_AdminSystem ArchitectAuthor Commented:
Yes the IP of WDS is
NETWORK A and NETWORK B are two different sites locations.
We are connected over WAN.
Therefore we have 2 DHCP servers, but the scope is different of course.

What I don´t understand, in each manual about setting up WDS2012, they also explain to set 66+67 in DHCP. Now you say not.
But how the client can find the WDS server over the network, when booting in PXE mode ?

How and where to setup the DHCP relay or IP HELPER ?

Yes I have checked the logs on WDS, nothing strange.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.