Wake-on-LAN Packet Builder
Builds the actual magic packet bytes for a given MAC address, and gives you ready-to-run send commands for Linux, Windows and Python. A browser can't send raw UDP broadcast packets itself — that's a genuine platform restriction, not a limitation of this tool — so this builds the packet and hands you the command to fire it from wherever you actually have network access.
What a "magic packet" actually is
It's deliberately simple: 6 bytes of 0xFF, followed by the target's 6-byte MAC address repeated 16 times — exactly 102 bytes, no headers, no handshake. A NIC with Wake-on-LAN enabled watches for this exact byte pattern even while the rest of the machine is powered off, because the network interface stays in a low-power listening state specifically for this. Spot that pattern, and it triggers the motherboard to power on — which is also why WoL works at the hardware level regardless of what OS (or whether any OS at all) is currently loaded.
Why it has to be sent as a broadcast
The target machine is off — it has no IP address to send a packet to. That's why magic packets go to the broadcast address (255.255.255.255 for the local subnet, or a subnet-directed broadcast like 192.168.1.255 if you need to reach a different subnet from outside it) rather than a specific host address. Port 9 (the discard port) is the traditional convention, though plenty of implementations happily also accept port 7. The NIC is watching the raw Ethernet frame for the magic byte pattern, not actually processing IP/UDP the normal way — the broadcast is just the transport mechanism to get those bytes onto the wire.
The setup that actually has to be right for this to work at all
- Wake-on-LAN has to be explicitly enabled in the target machine's BIOS/UEFI and in the OS network adapter settings — both, not just one
- Most consumer routers block broadcast traffic between subnets by default, so waking a machine from outside its local network typically needs a port-forward rule or a WoL relay running inside that network
- Some NICs only respond to WoL from a fully powered-off (S5) state, others only from sleep/suspend (S3) — check which your specific hardware actually supports, since this varies more than people expect
- A stale ARP entry on some network gear can occasionally interfere with broadcast delivery — this is one of the more annoying "it should work but doesn't" gotchas people hit with WoL across VLANs specifically