Wybudź komputer Magic Packetem z każdego urządzenia w sieci lokalnej. Kompletny przewodnik — gotowe komendy, gotowy skrypt.
enp3s0, eno1, eth0.ip link ip route get 1.1.1.1
sudo apt update sudo apt install ethtool
Supports Wake-on: ... g ... i Wake-on: g.sudo ethtool enp3s0 | grep -i wake
Wake-on: d)sudo ethtool -s enp3s0 wol g echo enabled | sudo tee /sys/class/net/enp3s0/device/power/wakeup
/etc/systemd/system/wol.service:sudo nano /etc/systemd/system/wol.service
[Unit] Description=Enable Wake-on-LAN After=network.target [Service] Type=oneshot ExecStart=/usr/sbin/ethtool -s enp3s0 wol g ExecStart=/bin/sh -c 'echo enabled > /sys/class/net/enp3s0/device/power/wakeup' [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl enable --now wol.service
sudo systemctl poweroff
$mac = "30:85:a9:46:bf:af" $broadcast = "192.168.1.255" $port = 9 $macBytes = ($mac -split "[:-]") | ForEach-Object { [Convert]::ToByte($_, 16) } $packet = [byte[]]((,0xFF * 6) + ($macBytes * 16)) $udp = New-Object System.Net.Sockets.UdpClient $udp.EnableBroadcast = $true $udp.Connect($broadcast, $port) [void]$udp.Send($packet, $packet.Length) $udp.Close() "Magic Packet sent to $mac via $broadcast:$port"
255.255.255.255
sudo apt install tcpdump sudo tcpdump -i enp3s0 -nn udp port 9 or udp port 7
Wake-on: d po restarciesystemctl status wol.servicesudo nmcli connection modify "Wired connection 1" 802-3-ethernet.wake-on-lan magic$mac = "30:85:a9:46:bf:af" $broadcast = "192.168.1.255" $port = 9 $macBytes = ($mac -split "[:-]") | ForEach-Object { [Convert]::ToByte($_, 16) } $packet = [byte[]]((,0xFF * 6) + ($macBytes * 16)) $udp = New-Object System.Net.Sockets.UdpClient $udp.EnableBroadcast = $true $udp.Connect($broadcast, $port) [void]$udp.Send($packet, $packet.Length) $udp.Close() "Magic Packet sent to $mac via $broadcast:$port"