Developer Tools
Wake-on-LAN Packet Builder
Build a Wake-on-LAN magic packet from any MAC address in your browser. Hex, hexdump, Base64, C, Python, Go, PowerShell, and Bash output, no signup.
Wake-on-LAN magic packet builder
Accepts colon (AA:BB:CC:DD:EE:FF), hyphen (AA-BB-CC-DD-EE-FF), Cisco (AABB.CCDD.EEFF), or bare 12-hex (AABBCCDDEEFF).
Parsed as AC:DE:48:00:11:22.
SecureOn password (optional)
4-6 bytes of hex appended to the packet. Required only when the target NIC is configured with SecureOn.
Magic packet
102 bytes
6-byte sync stream + 96-byte target (16 x MAC). Send as the payload of a UDP datagram to the subnet broadcast on port 7 or 9.
Sync stream
6 bytes
FF FF FF FF FF FF
Target MAC x 16
96 bytes
AC:DE:48:00:11:22
SecureOn password
0 bytes
Not included.
Packet output
Copy the packet in the format that matches your tool, language, or shell.
ffffffffffffacde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122acde48001122
Where to send it
- UDP port 9 or 7. Port 9 (discard) is the modern default; port 7 (echo) is the original choice from the AMD spec. Either works because the NIC inspects the L2 payload, not the destination port.
- Destination IP. Use the subnet broadcast (for example 192.168.1.255) for the LAN you want to wake. The 255.255.255.255 limited broadcast works only on the local segment and is often dropped by routers.
- Routed WoL. To wake a host across subnets, configure the upstream router to forward directed broadcasts (Cisco: `ip directed-broadcast`) or run a WoL relay on the target subnet.
- NIC configuration. The target NIC must have Wake-on-LAN enabled in BIOS, in the OS NIC properties (Windows: Magic Packet allow), and the cable must be connected. Wireless WoWLAN works on some NICs but is far less reliable.
- SecureOn. When enabled, the NIC ignores the magic packet unless the 4-6 trailing bytes match the configured password. The password is stored in plain text on the NIC and is visible to any tool with access to the wire.
How to use
- Paste the target MAC address. Colon (AA:BB:CC:DD:EE:FF), hyphen (AA-BB-CC-DD-EE-FF), Cisco (AABB.CCDD.EEFF), and bare 12-hex are all accepted. Errors are reported per group so you can see which segment is malformed.
- If the target NIC is configured with SecureOn, tick Include SecureOn password and paste the 4 to 6 byte hex password. Separators are tolerated. The Show toggle controls visibility; nothing is stored.
- Read the packet summary card to confirm the byte count (102 by default, 106 to 108 with SecureOn) and the three-section anatomy (sync stream, MAC x 16, optional password).
- Open the output tab that matches your toolchain. Hex (continuous) is the typical input for xxd -r -p, hexdump is best for documentation and Wireshark fixtures, Base64 is handy for HTTP transports, and the language tabs (C, Python, JavaScript, Go) produce ready-to-paste byte literals.
- Use Copy output to copy the rendered packet, or click Download .bin to save the raw bytes as a binary file you can pipe to a UDP sender.
- Send the packet to the broadcast address of the target subnet on UDP port 7 or 9. The PowerShell tab is a self-contained sender for Windows; the Bash tab uses xxd and BSD/OpenBSD netcat to drop the packet on 255.255.255.255 from any Unix-like host.
About this tool
Wake-on-LAN Packet Builder produces the exact bytes a NIC needs to wake a sleeping or powered-off machine. Paste the target MAC address in any common format (colon AA:BB:CC:DD:EE:FF, hyphen AA-BB-CC-DD-EE-FF, Cisco AABB.CCDD.EEFF, or bare 12-hex) and the tool builds the AMD-style magic packet: six bytes of 0xFF as the synchronization stream, followed by the 6-byte MAC address repeated 16 times for a total of 102 bytes. An optional SecureOn password (4 to 6 hex bytes) is appended when your NIC is configured to require one, lifting the total to 106 to 108 bytes. The output panel exposes every format an admin or developer typically needs: continuous lowercase or uppercase hex, space-separated hex, a 16-byte-wide hexdump with offset and ASCII gutter, Base64, a const unsigned char array for C, a bytes literal and a list-style bytes() for Python, a Uint8Array for JavaScript, a []byte slice for Go, a ready-to-run PowerShell snippet that drops the packet on a UDP broadcast, and a Bash one-liner that pipes the hex through xxd into netcat with the -u and -b flags. The packet is also downloadable as a .bin file so you can pipe it straight into a custom sender, a Wireshark fixture, or a unit test. The MAC address is validated as it is typed; multicast addresses (I/G bit set), locally administered addresses (U/L bit set), and the FF:FF:FF:FF:FF:FF broadcast are flagged because real NICs only wake on their own unicast MAC. The sending tips panel covers the practical details, including UDP ports 7 and 9, the difference between 255.255.255.255 and the subnet broadcast, routed Wake-on-LAN with ip directed-broadcast, NIC configuration requirements (BIOS, OS magic packet allow, link state), and the SecureOn security model. Every byte is built in your browser; the MAC and password never leave the page, and the .bin download is created from a local Blob.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
MAC Address Formatter
Convert and validate MAC addresses across IEEE, Cisco, decimal, EUI-64, and IPv6 forms.
Open tool
DeveloperMAC Address Generator
Bulk random MAC address generator with notation, casing, OUI lock, and the I/G and U/L bit controls.
Open tool
DeveloperIP Address Validator
Validate IPv4 and IPv6 addresses, classify reserved ranges, and batch check a list of IPs.
Open tool
DeveloperIP Address Converter
Convert IPv4 between dotted-decimal, decimal, hex, binary, and octal with per-octet breakdown.
Open tool
DeveloperSubnet Calculator
IPv4 CIDR network, broadcast, host range, mask, and binary view.
Open tool
DeveloperCIDR Range Calculator
Batch CIDR to IP range, range to CIDR, and contains test for IPv4 and IPv6.
Open tool