За да използвате "WakeOnLan" вие имате нужда от:
- мрежова карта, която поддържа WakeOnLan
- интерфейс на дъното, който поддържа тази функционалност
Повечето системи вече поддържат WakeOnLan, но трябва да се разреши от BIOS-a.
Трябва да инсталирате ethtool и да го стартирайте за да може да видите какви опции на wakeonlan се поддържат за вашата мрежова карта, както и коя е разрешена, т.е.
- Код за потвърждение: Избери целия код
#apt-get install ethtool
- Код за потвърждение: Избери целия код
root@root:~# ethtool eth0
Settings for eth0:
Supports Wake-on: g
Wake-on: d
Link detected: yes
Както се вижда, разполагаме с поддръжка на wakeonlan, но wakeonlan не е активен. За да променим това му състояние, трябва да изпълним
- Код за потвърждение: Избери целия код
root@root:~# ethtool -s eth0 wol g
и резултата вече е:
- Код за потвърждение: Избери целия код
root@root:~# ethtool eth0
Settings for eth0:
Supports Wake-on: g
Wake-on: g
Link detected: yes
След като вече активирахме wakeonlan, остана само едно условие да изпълним, а именно да научим MAC адреса на машината, която искаме да включим, което е изискване на software за wakeonlan.
Вариантите за научаване на MAC адреса са два:
- чрез изпълнение на ifconfig на съответната машина
- Код за потвърждение: Избери целия код
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0A:E6:F6:A3:F4
inet addr:192.168.1.80 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20a:e6ff:fef6:a3f4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2218390 errors:0 dropped:0 overruns:0 frame:0
TX packets:3098440 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1624008578 (1.5 GiB) TX bytes:1368310661 (1.2 GiB)
Interrupt:10 Base address:0xd400
- отдалечено засичане на MAC адреса (чрез arp кеша), при положение, че машината е включена.
- Код за потвърждение: Избери целия код
$ ping -c 1 sun
PING sun.my.flat (192.168.1.1) 56(84) bytes of data.
64 bytes from sun (192.168.1.1): icmp_seq=1 ttl=64 time=0.202 ms
--- sun.my.flat ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.202/0.202/0.202/0.000 ms
- Код за потвърждение: Избери целия код
skx@mystery:~$ /usr/sbin/arp sun
Address HWtype HWaddress Flags Mask Iface
sun ether 08:00:20:C2:1E:F6 C eth0
Както се вижда, MAC адреса е 08:00:20:C2:1E:F6.
Остана ни само да тестваме, а именно да изпълним:
- Код за потвърждение: Избери целия код
wakeonlan 08:00:20:C2:1E:F6
Sending magic packet to 255.255.255.255:9 with 08:00:20:C2:1E:F6
Източник: Основен