Computers in subnets or VLANs other than the PXE Server subnet, cannot boot into PXE for automation jobs to be executed.
Is it possible to configure the environment so that PXE clients on remote VLANs/Subnets are able to connect to the PXE server?
Computers booting into PXE rely on broadcast protocols to communicate with the PXE Server and download the boot file.
Broadcast traffic is normally not forwarded across routers and layer 3 switches unless they are configured to do so. Thus, by default it is not possible to boot a computer into PXE if it is not in the same subnet as the PXE Server.
If the information in article 178475 "Configuring PXE to work across VLANs" does not resolve this issue, there are two options that can be implemented:
Here is a more detailed explanation of the steps to review and understand:
Cisco routers by default do not forward broadcasts, but can be configured to do so quite easily. The protocols or services needed for PXE to function include DHCP, DNS, TFTP, BOOTP Client, BOOTP Server, Time Protocol, TACACS, NetBIOS, and NetBIOS Datagram. These protocols and the associated UDP ports will need to have broadcast capability enabled.
To do this, simply enter the command: ip helper-address xxx.xxx.xxx.xxx, (where xxx.xxx.xxx.xxx represents the IP address of of the computer to which the broadcasts should be forwarded. This command needs to be placed on the device (router, switch, or bridge) interface on where the broadcast is received.
By default, the IP helper-address command will forward these eight UDP ports:
UDP Port | Common Name |
69 | TFTP |
67 | BOOTP Client |
68 | BOOTP Server |
37 | Time Protocol |
49 | TACACS |
53 | DNS |
137 | NetBIOS |
138 | NetBIOS Datagram |
The addresses for the DHCP Server and the PXE Server have been added as well. When configured this way, PXE packages route without problems over multiple subnets and VLANs.