14 lines
346 B
Python
14 lines
346 B
Python
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])
|