Saturday, August 13, 2011

Включись!

Моя лінь продовжує змушувати мене мутити якісь нові штуки зі своїм залізом дома.
Хтось може включити свій комп віддалено? Не пробудити зі сну, а включити не натискаючи на кнопку повер? Я можу. Завдяки такій штуці, яка називається Wake-on-LAN. Ця фіча напевно була створена для того, щоб жосткі адміни могли, не піднімаючи сраки, включати комп'ютери навіть в найвіддаленіших кімнатах.


Мені пощастило мати комп'ютер з підтримкою цієї фічі (треба шоб був спеціальний проводок, який буде живити мережеву карту навіть при виключеному комп'ютері). Варто ще зазначити, що WOL працює тільки по езернету, дуже рідко які wifi карти його підтримують. Для цього мені довелось кинути кабель від wifi точки доступу до стаціонарного компа.

Першим ділом треба в біосі включити підтримку Wake-on-LAN (Resume-on-LAN).
Далі тре перевірити, чи ваш мережевий адаптер підтримує цю технологію. Пишем:
sudo ethtool eth0
має з'явитись шось таке
Supports Wake-on: g
якшо замість g якась інакша буква, то почитайте тут, як воно фіксається https://help.ubuntu.com/community/WakeOnLan

Далі командою ifconfig взнаєм MAC-адресу компа, який ми будемо включати.

Залишилось сформувати Magic Packet, який ми відішлемо на wifi роутер, а він, у свою чергу, по кабелю броадкастне (нагадую, що включення відбувається по MAC-адресі, бо комп'ютер то наш виключений і ip-шки в нього нема!) цей пакет на комп'ютер і увімкне його. Для цього в ubuntu є тулза etherwake. Команда виглядає так:

sudo etherwake -i wlan0 -p 192.168.192.168 00:11:22:33:44:55

Отож, ми формуєм UDP пакет, який містить MAC-адресу комп'ютера, що ми хочем включити, а також ip wifi роутера, щоб він бродкастнув цей пакет по всіх підключених девайсах. І відсилаєм цей сформований пакет по інтерфуйсу wlan0 (у мому випадку).

Вуаля - комп'ютер заводиться!

Тепер я можу не тільки виключати, керувати плейбеком відео-файлів (див. попередні пости), але і ВКЛЮЧАТИ домашній комп лежачи на дивані з ноутбука по wifi :)

Більше про Wake-on-LAN тут - http://en.wikipedia.org/wiki/Wake-on-LAN
і тут - https://help.ubuntu.com/community/WakeOnLan

No comments: