diff --git a/wol.py b/wol.py new file mode 100644 index 0000000..a865ae4 --- /dev/null +++ b/wol.py @@ -0,0 +1,14 @@ +import socket + + +def wake(mac: str): + payload = [0xff] * 6 + [int(f'0x{x}', 16) for x in mac.split(':')] * 16 + + sock = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM) + sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) + sock.sendto(bytes(payload), ('ff02::1', 9)) + + +if __name__ == 'main': + import sys + wol(sys.argv[1])