Настройка WakeOnLAN

Автор Craftsman, 15 ноября 2024, 15:52:22

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Craftsman

Всем привет!
Судя по ответам на вопрос тема не слишком популярная, да и по Инету инфорации немного.
Во всяком случае с ней столкнулся впервые, и понял, что настроить WakeOnLAN не так-то просто.
Сначала поробовал идти по официальному мануалу, и сразу напоролся на то, что потерял работу в сети, получив при загрузке вот такую обшибочку-

networking.service: Failed with result 'exit-code'.
ноя 14 14:04:07 govoryn systemd[1]: Failed to start networking.service - Raise network interfaces.

Видать, мануал устаревший, поэтому попробовал  иноземную статью. Статья тоже древняя, так что успеха тоже не имела.

Тогда пошел консультироваться у ИИ. Он надавал множество советов, в которых я часто уличал его в ошибках, он исправлялся, и так по кругу.
И даже когда редактирование конфигов не приводило к ошибкам, комп магическим пакетом на запускался.
В-общем, из этого роя тоже не вышло ничего.

Тогда призадумался - а собственно, в каком режиме должен находиться компьютер, чтобы стартовать его по сети?
ИИ снова услужливо подсказал, что он может быть в спящем режиме, режиме гибернации и вообще в выключенном.

Конечно, надежнее всего использовать в качестве ожидающего сигнал полное выключение компьютера, но у меня пока не получилось никак.

У кого-то получилось настроить Debian 12 для работы по WakeOnLAN?

Лия

#1
Цитата: Craftsman от 15 ноября 2024, 15:52:22Тогда пошел консультироваться у ИИ. Он надавал множество советов, в которых я часто уличал его в ошибках, он исправлялся, и так по кругу.
И даже когда редактирование конфигов не приводило к ошибкам, комп магическим пакетом на запускался.
В-общем, из этого роя тоже не вышло ничего.
Вот поэтому я ИИ и не доверяю :)

Цитата: Craftsman от 15 ноября 2024, 15:52:22У кого-то получилось настроить Debian 12 для работы по WakeOnLAN?
У вас сетевая карта висит на eth0?
$ ip a
Чем пользуетесь - ifupdown / systemd-networkd / NetworkManager?

ek-nfn

#2
Цитата: Craftsman от 15 ноября 2024, 15:52:22У кого-то получилось настроить Debian 12 для работы по WakeOnLAN?
у меня работает в локалке для выхода из ждущего режима (раньше использовал и для выключенного состояния), но со следующими тонкостями:

1) у меня не systemd, а SysV. В systemd еще в дебиане 9 намаялся с настройками и плюнул, уйдя на SysV. Сейчас, наверно, тех проблем уже нет, но не проверял, systemd обхожу стороной.

2) В команде wakeonlan -p 8 -i 192.168.4.255  mac_eth0 используется широковещательный IP, по IP целевого компа не будит. Оно и не важно. вроде прокатывает вообще без указания IP лишь по мас адресу;

3) самое сложное - найти и активировать в биосе нужные для пробуждения функции. а вариантов их названий может быть десяток:
Wake On LAN;
MAC Resume;
MAC/PME Power Up Control;
Power On By Onboard LAN;
Power Up By Onboard LAN;
Power On By PCI Devices
Resume on PCI Event;
Resume by LAN;
Resume By WOL;
Resume on LAN;
Resume on LAN/PME#;
Wake Up On LAN;
WakeUp by Onboard LAN;
WOL (PME#) From Soft-Off;
PME Events Wake Up
Resume by PME# Function;
Resume On PME#;
Wake On PME
Wake Up On PME;
Power on by Ethernet Card;
Power On By PCIE Devices (если сетевая карта подключена через PCI-E);
LAN/Ring Power On;
Modem Ring On/Wake On Lan;
Power On By Modem/Lan.

не забываем и в разделе Power (тоже могут быть разные названия) про разрешения по шине  PCI/PCIE.

4) Режим пробуждения eth0 по Magic включается в gui самого network-manager, вкладка ethernet

5) Настройка и использование ethtool стандартные

04 декабря 2024, 08:06:55
Цитата: Лия от 16 ноября 2024, 23:10:49Вот поэтому я ИИ и не доверяю

недавно мучил его по вопросу внешнеторгового дефицита США-Канада. Вертелся как уж на сковороде, но так и не дал конкретного ответа. Я устал задавать уточняющие вопросы и отстал от него. Так то врет не моргнув и глазом. В случае уличения во вранье, извиняется и дает другой ответ.   :D
Интеллект еще тот. Но по конкретным командам линукс и bash работает неплохо, с вероятностью выдачи рабочего варианта команды больше 90%. Сильно облегчает жизнь, избавляя от чтения манов.
Debian 12  -> Devuan 5 xfce -> MX Linux 23

yoric

Вот заблокируют этот ИИ, или деньги станут брать, что делать будем? Если навык чтения манов утратить))

Craftsman

#4
Пора и мне рассказать, чем закончилась возня по удаленному включению компьютера.
В BIOS моей материнки  опция называется  Дополнительно --> APM --> Power On By PCIE.
Ее надо включить, и на этом настройка компьютера заканчивается.

Далее настройка Debian:
1. Установить утилиту 'ethtool'
2. Проверить состояние  Wake-on-LAN командой -   
sudo ethtool enp3s0 | grep Wake-on
если выдаст -
Wake-on: d
- значит, WoL выключено.

3. Чтобы его включить, нужно выполнить -
sudo ethtool -s enp3s0 wol g
и снова проверить состояние, должно быть 'g'

4. Для сохранения настроек после перезагрузки компьютера с 'd' (отключено) на 'g' (включено для Magic Packet)
нужно отредактировать конфиг -
/etc/network/interfaces
добавив в него строку -
post-up /sbin/ethtool -s enp3s0 wol g

На управляющем компьютере:

1. Использовать консольную или GUI утилиту: 'wakeonlan' , 'gwakeonlan'

2. Если использовать включение в локальной сети, то можно использовать широковещательный MAGIC пакет.
Если включать извне, то нужно указывать IP-адрес включаемого компьютера.
При этом управление идет по UDP-протоколу.

Так вот, если включать компьютер из локалки, т.е. широковещательнымй "волшебным пакетом", проблем никаких нет, компьютер включается исключительно стабильно.

А вот извне, через роутер, что только не делал, включается, но только по настроению.

В роутере разрешал UDP порт как 9, так  7, но эффекта нет.
Так что эта проблема до сих пор не решена, конечная цель не достигнута  :(

Есть мысли?

05 декабря 2024, 01:14:22
Upd. Исправил описку.
Было: "Так вот, если включать компьютер из виртуалки"
надо: "Так вот, если включать компьютер из локалки"

Craftsman

#5
Никто не ответил, но мой пост окрасился в желтый цвет - что это означает?

Кстати, попробовал посылать целевой пакет и из локалки - то же не срабатывает!  ???
Значит, роутер тут не при чем.

Craftsman

Господа форумчане, а есть ли среди вас любопытные программисты?  :)
Которые заинтересовались бы этой темой.
Дело в том, что мне таки удалось реализовать включение удаленного Debian по WakeOnLan.
Результат: работает исключительно надежно.
В итоге у меня получилсь небольшая консольная програмка на Go, которую смастерил с помощью ИИ.
И теперь, прежде чем раздать ее неопытным желающим,  конечно, хотелось бы ее обернуть в какое-то привлекательное GUI.
Однако Craftsman старый дед и навыки программирования давно утратил, а последнее, на чем программировал, был Turbo Pascal от Borland на DOS.
Поэтому поднял Lazarus, попытался объединить его с Go, но так и не справился, хотя задачка по сути  очень проста.
Может, кто заинтереуется этим незамысловатым творением и доведет ее до кондиции?  ;)

ek-nfn

Цитата: Craftsman от 07 февраля 2025, 22:06:14И теперь, прежде чем раздать ее неопытным желающим,  конечно, хотелось бы ее обернуть в какое-то привлекательное GUI.
Однако Craftsman старый дед и навыки программирования давно утратил, а последнее, на чем программировал, был Turbo Pascal от Borland на DOS.

Есть варианты намного проще - псевдографический интерфейс. Куча вариантов:
• zenity
• dialog
• gmessage - GTK-клон программы xmessage;
• xmessage - выводит сообщение или запрос в окне (графический аналог команды /bin/echo);
• whiptail - создает диалоговые окна из скриптов;
• python-dialog - модуль на Python для создания несложных текстовых интерфейсов.
Debian 12  -> Devuan 5 xfce -> MX Linux 23

Craftsman

#8
Спасибки! :) Только почти все эти подпорки я уже рассматривал и парочку попробовал, но их возможности меня не очень устроили.
Например, на Lazarus я сделал появление и исчезновение надписей, кнопки, таймера обратного счета, и можно вообще сделать что угодно и разукрасить как угодно, а в этих подпорках как?
Если уж делать, то в приличной единой среде, которой является, например, Lazarus.

Попытался наваять на Lazarus  простейший пример, вроде работает.
Теперь его нужно как-то связать с Go.

Craftsman

#9
Новый поворот!  :D  Мне показалось более привлекательным управлять запуском моего персонального компьютера  с помощью email.
Т.е., если определенный юзер послывает на некий промежуточный почтовый сервер письмо, то получив его, этот сервер посылает магический пакет на мой персональный компьютер и включает его.

Вроде все настроил по этому howto, только Postfix при получении письма почему-то не запускает скрипт, который должен отослать пакет.
Хотя тут немного не то, мне нужно реагировать "не на определенный адрес", а "от определенного адреса", но все равно и это не работает.
Что же ему надо?