This commit is contained in:
2026-01-19 10:38:30 +01:00
parent c29038b12b
commit cfe5a04493
2 changed files with 49 additions and 0 deletions

View File

@@ -57,6 +57,8 @@ MeszelyIstvan@682da8f717950.com
WinPass WinPass
MicrosoftAuth MicrosoftAuth
Kapelou2025
000 000
pandA#...#min pandA#...#min

View File

@@ -0,0 +1,47 @@
import socket
import struct
def send_wol_packet(mac_address, ip_address='255.255.255.255', port=9):
"""
Elküld egy Wake-on-LAN "magic packet"-et.
:param mac_address: A felébresztendő eszköz MAC-címe (pl. "AA:BB:CC:DD:EE:FF" vagy "AABBCCDDEEFF").
:param ip_address: A cél IP-cím (általában broadcast cím a helyi hálózaton).
Alapértelmezett: '255.255.255.255'
:param port: A cél port (általában 7 vagy 9).
Alapértelmezett: 9
"""
if len(mac_address) == 12:
pass
elif len(mac_address) == 17:
mac_address = mac_address.replace(':', '').replace('-', '')
else:
raise ValueError("Érvénytelen MAC-cím formátum. Használj 'AABBCCDDEEFF' vagy 'AA:BB:CC:DD:EE:FF' formátumot.")
# A "magic packet" felépítése: 6 bájt FF, majd 16-szor a MAC-cím
data = b'FFFFFFFFFFFF' + (bytes.fromhex(mac_address) * 16)
# UDP socket létrehozása
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) # Broadcast engedélyezése
try:
sock.sendto(data, (ip_address, port))
print(f"WOL csomag elküldve a {mac_address} MAC-címre a {ip_address}:{port} címre.")
except Exception as e:
print(f"Hiba történt a WOL csomag küldésekor: {e}")
finally:
sock.close()
# Példa használat:
if __name__ == "__main__":
import sys
if len(sys.argv) < 2:
print("Használat: python wakeonlan.py <MAC_CÍM> [IP_CÍM] [PORT]")
sys.exit(1)
mac_address = sys.argv[1]
ip_address = sys.argv[2] if len(sys.argv) > 2 else '255.255.255.255'
port = int(sys.argv[3]) if len(sys.argv) > 3 else 9
send_wol_packet(mac_address, ip_address, port)