Простий скрипт на мові Python3 для пробудження комп’ютера використовуючи функцію Wake-on-Lan. Скрипт перевірив на Windows 11.
import socket
import sys
def send_magic_packet(mac_address):
# Перетворення MAC-адреса у байтовий формат
mac_bytes = bytes.fromhex(mac_address.replace(':', ''))
# Створення 6 байтів з шаблону FF та MAC-адреса повторюється 16 разів
magic_packet = b'\xff' * 6 + mac_bytes * 16
# Створення сокета та відправка магічного пакета
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(magic_packet, ('<broadcast>', 9))
print("Magic packet sent successfully.")
except Exception as e:
print("Error sending magic packet: {}".format(e))
sys.exit()
# Виклик функції та передача MAC-адреса в якості аргументу
#замінити на мак адрес компютера в мережі
send_magic_packet('xx:xx:xx:xx:xx')
Потрібно назвати файл наприклад wol.py та викликати командою
python wol.py
А такий скрипт я використовую на Ubuntu
#!/bin/bash
# Введіть MAC-адресу пристрою, який ви хочете ввімкнути
mac_address="xx:xx:xx:xx:xx:xx"
# Викликаємо програму wakeonlan з вказанням MAC-адреси
wakeonlan $mac_address
потрібно встановити додатковий модуль wakeonlan
sudo apt-get install wakeonlan
запускаю без sudo
./wakeonlan.sh