A small python module for wake on lan.

python, wakeonlan
pip install wakeonlan==2.1.0



Pypi version Supported Python versions Build Status Documentation Status Code coverage

A small python module for wake on lan.

For more information on the wake on lan protocol please take a look at Wikipedia.


To wake up a computer using wake on lan it must first be enabled in the BIOS settings. Please note the computer you are trying to power on does not have an ip address, but it does have a mac address. The package needs to be sent as a broadcast package.

As a python module

Import the module

>>> from wakeonlan import send_magic_packet

Wake up a single computer by its mac address

>>> send_magic_packet('ff.ff.ff.ff.ff.ff')

Wake up multiple computers by their mac addresses.

>>> send_magic_packet('ff.ff.ff.ff.ff.ff', '00-00-00-00-00-00',
...                   'FFFFFFFFFFFF')

An external host may be specified. Do note that port forwarding on that host is required. The default ip address is and the default port is 9.

>>> send_magic_packet('ff.ff.ff.ff.ff.ff',
...                   ip_address='example.com',
...                   port=1337)

A network adapter may be specified. The magic packet will be routed through this interface.

>>> send_magic_packet('ff.ff.ff.ff.ff.ff',
...                   interface='')

As a standalone script

usage: wakeonlan [-h] [-i ip] [-p port] [-n interface] mac address [mac address ...]

Wake one or more computers using the wake on lan protocol.

positional arguments:
  mac address  The mac addresses of the computers you are trying to wake.

optional arguments:
  -h, --help   show this help message and exit
  -i ip        The ip address of the host to send the magic packet to. (default
  -p port      The port of the host to send the magic packet to. (default 9)
  -n interface The ip address of the network adapter to route the magic packet through. (optional)


  • Python3.x