Информация

Использование любой информации, размещённой на настоящем сайте, в том числе любых изображений и/или их частей возможно только по письменному согласованию с правообладателем такой информации (Луньков В.Н.).
Использование любой информации, размещённой на настоящем сайте, в том числе ссылок на ресурсе infostart.ru не допускается .

FreeBSD. Пробуждение компьютеров по сети средствами wol.

Возникла потребность при необходимости удаленно включать новоиспеченный Ubuntu Server Edition. Вспомнил как ранее мы решали подобную задачу с помощью [WOL], с одноименным портом у FreeBSD wol и решил применить имеющийся опыт.

Установка wol.

Переходим в каталог порта и поскольку опции у порта отсутствуют приступаем к установке:

# cd /usr/ports/net/wol
# make install clean && rehash

Ждем окончания установки порта.

Использование wol.

Берем за правило читать man:

# man wol

Или на худой конец help:

wol --help
Usage: wol [OPTION] ... MAC-ADDRESS ...
Wake On LAN client - wakes up magic packet compliant machines.

    --help          display this help and exit
-V, --version       output version information and exit
-v, --verbose       verbose output
-w, --wait=NUM      wait NUM millisecs after sending
-h, --host=HOST     broadcast to this IP address or hostname
-i, --ipaddr=HOST   same as --host
-p, --port=NUM      broadcast to this UDP port
-f, --file=FILE     read addresses from file FILE ("-" reads from stdin)
    --passwd[=PASS] send SecureON password PASS (if no PASS is given, you
                    will be prompted for the password)

Each MAC-ADDRESS is written as x:x:x:x:x:x, where x is a hexadecimal number
between 0 and ff which represents one byte of the address, which is in
network byte order (big endian).

PASS is written as x-x-x-x-x-x, where x is a hexadecimal number between 0
and ff which represents one byte of the password.

Report bugs to 

Согласно мануалу нам достаточно знать MAC-адрес компьютера, который необходимо будить. MAC-адрес можно непосредственно посмотреть на удаленном компьютере или из FreeBSD, с помощью arp зная его IP-адрес:

# arp 10.197.0.1
? (10.197.0.1) at 00:15:e9:8e:56:02 on msk0 expires in 1200 seconds [ethernet]

Теоретически параметров необходимых для пробуждения удаленного компьютера достаточно но при попытке запуска:

# wol -v 00:15:e9:8e:56:02

получаем следующее сообщение, и продолжающий спать удаленный компьютер:

Waking up 00:15:e9:8e:56:02 with 255.255.255.255:40000...

И вспоминая прошлые пляски с бубном запуска утилиты wol, вспоминается, что необходимо явно задавать сеть удаленного компьютера, если у FreeBSD несколько интерфейсов(неведомый науке факт, может баг, а может фича утилиты):

# wol -v 00:15:e9:8e:56:02 -i 10.197.0.255
Waking up 00:15:e9:8e:56:02 with 10.197.0.255:40000...

Удаленный компьютер оживает! Усыпляем который по необходимости через ssh.

Комментариев нет: