wol/wol.py

15 lines
346 B
Python
Raw Permalink Normal View History

2017-09-25 17:34:21 +03:00
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])