Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Adjusted from:
- # https://github.com/bentasker/Wake-On-Lan-Python and
- # https://stackoverflow.com/questions/28765352/wakeup-on-lan-with-python
- import socket
- import struct
- import sys
- import re
- def wake_on_lan(mac, ip):
- mac_fields = re.findall('([A-Fa-f0-9]{2})', mac)
- mac_packed = struct.pack(
- 'B' * 6,
- *[int(x, 16) for x in mac_fields])
- network_msg = b'\xff' * 6 + mac_packed * 16
- sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
- sock.sendto(
- network_msg,
- (ip, 9))
- def main():
- mac = sys.argv[1]
- ip = sys.argv[2]
- wake_on_lan(mac, ip)
- print('done')
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement