- Удаленное включение компьютера через AnyDesk с функцией Wake On Lan
- Как настроить Wake on Lan
- Как включить Wake on Lan в Bios
- Как удаленно включить компьютер
- Подготовительные действия
- WakeMeOnLan
- Воспользуемся TeamViewer
- Удалённое управление питанием и перезагрузкой компьютера, при помощи внешнего девайса
- ▍ Итак, приступим.
- PC360
- Ремонт/настройка ПК и окружающих его устройств.
- Удаленное включение компьютера через локальную сеть.
Удаленное включение компьютера через AnyDesk с функцией Wake On Lan
Из статьи вы узнаете, как настроить функцию Wake on Lan в AnyDesk для включения питания на удаленном компьютере.
Как настроить Wake on Lan
Технология Wake on Lan предназначена для включения удаленного ПК по локальной сети. Для этого необходимо, чтобы подчиненный компьютер находился в спящем режиме, и функция была активирована в BIOS.
Если нужно ограничить управление, стоит активировать третью вкладку в списке «Enabled, but wake your device using the fallowing desks only». В окно ниже вписать один или несколько AnyDesk ID, которым разрешено управлять этим ПК.
Как включить Wake on Lan в Bios
Настройка Wake on Lan в Bios.
Сохранение и выход.
После данных настроек компьютер можно включать удаленно через программу AnyDesk. Если остались вопросы, можете задать их в комментариях.
Как удаленно включить компьютер
Технология удаленного включения (Wake on LAN) должна быть поддерживаемой BIOS и сетевой картой. Также, нам понадобится специальное приложение, функции которого позволяют отправить WOL-пакет удаленному ПК.
Благодаря современным достижениям, удаленный ПК включить можно не только с иного компьютера, но и с телефона. Также необходимо помнить, что включение компьютера в удаленном режиме предполагает активность сетевой карты — она должна получать питание в дежурном режиме.
Подготовительные действия
Первым делом, нужно настроить BIOS и сетевой адаптер на пробуждение. Неважно, какая это сетевая — встроенная или внешняя. Открыв главную программу ввода-вывода, найдем секцию, отвечающую за управление питанием — Power Management, например.
В этой секции надо найти параметры пробуждения.
Эти параметры могут носить различные названия, включая Wake on LAN, PowerOn By PCI Card, WOL from Soft-Off и прочее. Надо, чтобы данная опция была включена.
Вполне возможно, что понадобится включить и опцию на картинке ниже.
Для большей уверенности лучше ознакомиться со всеми параметрами пробуждения вашего BIOS. Ведь компьютер может просыпаться и от ТВ-тюнера, если задействована опция включения по PCI-Express, и после нажатия любой клавиши на клавиатуре, если задействованы опции связанные с PS/2-портом. В нашем случае нужен параметр, связанный с PCI-шиной, на которой размещен контроллер встроенной сетевой.
Автор также рекомендует:
Настроив BIOS, обязательно проверьте, поддерживается ли обсуждаемая технология вашим Ethernet-контроллером. Нам понадобится включить прием «магического» WOL-пакета, чтобы Ethernet-контроллер был настроен на его ожидание. WOL-пакет — это специальный Ethernet-кадр, состоящий из последовательности байт, содержащих MAC-адрес сетевой карты. Получив такой фрейм, Ethernet-карта генерирует сигнал на пробуждение ПК.
Итак, откроем центр управления сетями.
Далее, нам понадобится опция изменения параметров адаптера.
Откроем свойства сетевого адаптера.
Перейдем к его настройкам.
Включим WOL Пакет Magic и при необходимости включим Energy Efficiant Ethernet, Завершение Пробуждение.
Перейдем на вкладку управления электропитанием, где должна быть такая конфигурация.
WakeMeOnLan
Воспользуемся для наших целей небольшой программкой Wakmeonlan. Это приложение не нуждается в инсталляции. После его старта надо просканировать локальную сеть, чтобы Wakemeonlan нашла все сетевые устройства.
Работать она должна на ПК, с которого будет генерироваться WOL-фрейм для включения удаленного ПК. Так Wakemeonlan проводит сканирование:
Если в ходе сканирования приложение не обнаружило отключенный на данный момент компьютер, тогда есть возможность самостоятельного его добавления.
Добавим еще одно устройство вручную.
Нужно лишь внести в форму IP-адрес этого устройства и его MAC.
Определим нужные нам адреса, для чего запустим командную строку.
Выполним ipconfig с ключом /all.
Второй способ — заглянем в «Состояние адаптера».
Откроем окно Сведения.
Найдем интересующие нас адреса.
Добавив нужное устройство, обновим список.
Как видим, у нас уже три устройства.
После добавления, вы легко можете включить его в удаленном режиме, нажав кнопочку «Wake up Selected Computer».
Воспользуемся TeamViewer
Выполненная предварительная настройка позволит запустить функцию Wake on LAN такого приложения как TeamViewer. Чтобы удаленно разбудить ПК, необходимо обеспечить следующее:
— Кабельное подключение к интернету.
— Компьютер переведен в один из режимов: гибернация, сон или мягкое выключение (Пуск и Завершение работы).
Очень важно выключить быстрый запуск в таких операционках, как Windows 8 и 10. Ваши экземпляры TeamViewer должны быть связаны с учетной записью программы. При этом все устройства должны принадлежать одной LAN.
Во вкладке опции приложения нужно активировать функцию Wake-on-LAN и настроить конфигурацию, кликнув одноименную кнопочку. Выбрав опцию «Другие приложения в той же локальной сети», добавьте TeamViewer ID тех устройств, с которых разрешено пробуждать данный компьютер. Для создания условий включения по публичному IP-адресу придется подсоединяться с динамическим DNS, который также придется настраивать на роутере сети. Рассмотрим все шаги по порядку.
Авторизуемся в TeamViewer (или регистрируемся).
Прежде всего, свяжем все компьютеры с существующим аккаунтом.
Окно предупреждения о необходимости связи с аккаунтом.
Привязка с помощью кнопочки «Связать».
В нижней части отображается установленная связь.
Нам понадобится сконфигурировать функцию Wake on Lan.
Устанавливаем флажок у других приложений TeamViewer.
Добавляем ID TeamViewer-а, компьютер которого будет отсылать WOL-пакет.
Разбудить удаленный ПК можно из своей учетной записи TeamViewer, где отображаются все привязанные к ней устройства. Нужно лишь нажать кнопочку в виде кнопки питания, что приведет к отсылке WOL-фрейма на Ethernet-карту избранного электронного устройства.
Чтобы удаленно включать ПК из другого устройства, надо настроить BIOS и Ethernet-карту. В BIOS понадобится настроить политику пробуждения ПК по сигналу сетевой, которая находится в активном состоянии, обеспечиваемая дежурным питанием. Также, нужно настроить Ethernet-контроллер на прием WOL-пакетов. Понадобится еще специальная программа для генерирования WOL-пакета. Такой программой может быть, например, Wakemeonlan или TeamViewer.
Удалённое управление питанием и перезагрузкой компьютера, при помощи внешнего девайса
Каждый пользователь компьютера сталкивался хотя бы раз в своей жизни с такой ситуацией: ты ушёл к себе на работу, почти доехал до неё и вдруг вспомнил,- что забыл взять со своего личного компьютера какую-то очень важную вещь.
Ехать обратно — опоздаешь на работу. А ведь ситуация может развиваться и гораздо более драматично: допустим, человек поехал куда-то далеко за рубеж, в отпуск, и там ему приходит важный звонок, по результатам которого ему необходимо передать своему визави,- определённые документы. А документы остались дома! А дом находится за границей!
Или вот ещё такая беда: ваш персональный компьютер является мощной графической станцией, на которой установлено множество тяжёлых программ для работы с графикой, программными продуктами. А вы перемещаетесь по городу, имея в руках всего лишь «тонкий» клиент, в виде ноутбука…
Из этого описания становится понятно, что «тонкий» клиент не обладает соответствующей производительностью, для запуска множества высокопрофессиональных программ и проектов. Да и если даже он у вас достаточно мощный, — это в принципе неудобно, каждый раз синхронизировать проекты с «тонким» клиентом. Как быть в описанных выше ситуациях — мы и поговорим в этой статье.
На самом деле, указанная проблема очень легко решается: установкой на ваш персональный компьютер системы удалённого включения/выключения и перезагрузки. Этот подход позволит всегда иметь под рукой всю мощь вашей домашней машины и все необходимые документы, и проекты, хранящиеся на ней.
До начала описания своей разработки, хочу сказать, что конечно, она не является единственно возможным способом для удалённого включения выключенного компьютера. Например, хорошо известна технология Wake-on-LAN. Суть этой технологии заключается в том, что она позволяет включить выключенный компьютер, отправкой специального пакета на его MAC-адрес.
Сетевой адаптер компьютера, поддерживающего Wake-on-LAN, находится в этот момент в режиме пониженного потребления и анализирует все пакеты на него. Если одним из поступающих пакетов окажется так называемый magic packet, сетевой адаптер выдаст сигнал на включение питания компьютера.
Согласно wiki: Magic packet — это специальная последовательность байтов, которую для нормального прохождения по локальным сетям можно вставить в пакеты транспортного уровня, не требующие установки соединения (например, протокол UDP или устаревший IPX). Обычно для Wake-on-LAN пакеты протоколов верхнего уровня рассылают широковещательно, так как в случае динамического присвоения адресов неизвестно, какой IP-адрес соответствует какому MAC-адресу. Однако, для корректного прохождения через маршрутизатор, запрещающий широковещательные пакеты, можно послать пакет по какому-то определённому адресу.
Из минусов данной технологии стоит отметить, что она:
В любом случае, я подумал, что создание девайса, о котором пойдёт дальше речь, будет интересной затеей, так как:
▍ Итак, приступим.
Некоторое время назад, решение указанной проблемы было достаточно затруднённым: необходимо было обладать достаточно высоким уровнем профессионализма и наличием глубоких знаний в области электроники, чтобы собрать требуемое для решения этой задачи устройство.
С появлением платформы Arduino, данная задача существенно облегчилась, однако, она продолжала оставаться достаточно неудобной в своей реализации, ввиду наличия клубка проводов, соединяющих требуемые компоненты, либо, ввиду необходимости покупки соответствующих wi-fi шилдов.
В текущее же время, этот вопрос ещё более облегчился, из-за появления платы espressif esp32. Для тех, кто не знает, это двухъядерный модуль, содержащий множество необходимых для любого самодельщика свойств. В рамках же данного проекта, нас будет интересовать наличие встроенного wi-fi модуля.
Использование этой платы позволит нам легко и просто построить требуемое устройство, не загромождая всё проводами и за достаточно малую цену. Рискну предположить, что суммарная стоимость компонентов нашего решения не превысит 350-400 руб.
Для того, чтобы создать устройство, нам понадобится всего лишь четыре резистора, два мосфет- транзистора и плата esp32.
По набору компонентов, искушённый читатель сразу понял, что мы будем делать: с помощью esp32 мы будем управлять ключами на основе мосфет-транзисторов.
При использовании мосфет-транзистора нужно иметь в виду один нюанс: транзистор должен открыться полностью, если этого не произойдёт, то он в работе будет сильно греться и будет фактически, работать в роли резистора.
В данном конкретном случае, это, конечно, не так важно, так как мы будем коммутировать достаточно малые токи кнопки включения/выключения и reset-a.
Конечно, можно не напрягаться и взять релейные модули для ардуино:
Но это не наш путь и вот почему: а) щелчки реле; б) наклёп контактов; в) высокое энергопотребление релейным модулем.
Оно нам надо? Нет, оно нам не надо 🙂
Так как мы хотим сделать «всё красиво» — мы будем использовать специальные мосфеты с логическим уровнем.
В рамках данного проекта, я выбрал мосфет-транзистор IRLZ44NPBF. У него порог срабатывания от 2 Вольт. То, что надо.
Как собрать ключ на мосфете — можно почитать тут.
По поводу конкретных силовых исполнительных устройств более-менее всё понятно. Однако нам ведь нужно ещё и каким-то образом «рулить» esp32 внешнего интернета!
То есть, задача в общем виде представляется следующей: некий интерфейс из внешнего интернета, зная IP адрес esp32, может отдавать ей команды.
Однако, подключение к устройству, находящемуся в сети за роутером, может стать неудобством, ввиду, как минимум, смены IP адреса у управляемого устройства, после каждой перезагрузки.
Да, вы скажете, что IP на самом деле не меняется, он может поменяться, только если кто-нибудь из домашних тоже подключится к сети, в тот момент, пока esp32 перезагружается, и ей придётся взять другой свободный IP.
Как бы там ни было, но все эти частности не важны, так как данный вопрос можно решить намного проще, чем выяснять какой текущий IP у платы и каким образом его сообщить во внешний интернет: для этого мы будем использовать протокол mqtt. Для тех, кто не сталкивался, вкратце можно сказать, что протокол предназначен для интернета вещей, «умного» дома и не только.
Использование протокола позволяет с лёгкостью обойти проблему прохода за роутер (тут следует сделать оговорку, что мы делаем допущение, что большая часть пользователей интернета, которая выходит в сеть, используя персональные компьютеры, имеют дома wi-fi точку доступа в виде роутера).
❒ В нашем случае, использование протокола будет выглядеть следующим образом:
Значение отправляемых цифр:
0 — «выключить компьютер»;
1 — «включить компьютер»;
2 — «перезагрузить компьютер»;
После того, как сообщение получено платой, она выполняет определённые действия, и отчитывается в другом топике, на который, в свою очередь, подписан смартфон, с которого мы отправили задание. Таким образом, владелец смартфона узнает о том, что плата получила задание и выполнила его.
Как работать с клиентом: при запуске указанного выше mqtt-клиента — мы видим вот это окно. Ничего в нём не меняем, жмём кнопочку «Connect»:
Далее, появится следующее окно, где мы подписываемся на топик, в котором esp32 оставит сообщение о выполнении задания. Для этого жмём Add new topic subscription:
Вводим топик и жмём «Subscribe»:
Топик, на который мы подписались — появился справа, наверху:
Теперь, мы можем ввести топик, в который надо отправить сообщение и собственно, сообщение. И жмём «Publish». Сообщение уехало на esp32, и она отчиталась внизу, о выполнении задания:
То есть, для работы всей системы нужны:
Источник картинки: wikihandbk.com
И работает оно так (текст оттуда же):
Модифицируем её для нашего случая:
Прошивка проекта написана в Arduino IDE и доступна на моём гитхабе.
Пробежимся по основным моментам.
В своей работе мы будем использовать публичный mqtt broker по адресу: broker.hivemq.com:
Вы можете использовать любой другой — это вопрос исключительно предпочтений. Я выбрал этот и он у меня заработал. А так как я обычно иду по пути наименьшего сопротивления (в рамках парадигмы «и так сойдёт!» ), то искать что-то иное не было смысла. Ибо любая минута поиска — воровала у меня время, которое я мог бы с пользой провести, лёжа на диване, с думами о вечном :-))).
Для начала мы в блоке изначальной инициализации переменных указываем порт для подключения к mqtt брокеру, при необходимости — имя пользователя и его пароль(или имя и пароль оставляем пустыми, если брокер публичный — как в нашем случае):
Далее мы указываем два топика, — один из которых для публикации статуса компьютера в данный момент (то есть компьютер включён/выключен, или перезагружается):
Именно туда esp32 выводит строгие и выверенные системные сообщения, о происходящем с компьютером:
Другой, для получения сообщений из внешнего интернета(сюда мы постим со смартфона цифры 0, 1 или 2, в зависимости от которых выключается/включается/перезагружается компьютер):
Для подключения мосфет-транзисторов, я использовал пины, под номерами 19 и 21. Вы можете использовать, в принципе, любые допустимые пины, хорошее описание которых содержится по следующему адресу.
Из ещё одного интересного момента можно рассмотреть следующие три переменные:
В них мы задаем время в миллисекундах, в течение которого наше устройство будет держать нажатой соответствующую кнопку. Данные переменные вам нужно определить самостоятельно, опытным путём(если мои значения не будут работать)- для вашего конкретного компьютера, так как, вероятно, они могут отличаться в вашем конкретном случае. В прошивке значения переменных указаны для моего случая.
Ещё одним любопытным моментом, который некоторые могут не знать, является то, что встроенный в esp32 светодиод привязан к пину, под номером 2. Я решил, что «инженерия инженерией, но и красотень тоже должна быть». Поэтому наша esp-шка будет мигать встроенным светодиодом:
Теперь, что касается питания нашей сборки на esp32: единственный более-менее комфортный способ это осуществить,- запитать нашу сборку от дежурного питания компьютера. Так как наша сборка потребляет совсем немного, её подключение к дежурному питанию не должно вызвать проблемы с невозможностью включения компьютера из-за просадки напряжения.
А далее, когда компьютер включён — можно подключиться к нему, с помощью предварительно настроенных программ удалённого администрирования, удалённого рабочего стола и т.д. и т.п.
Ну, вот на этом кажется и всё. Ещё раз только остановлюсь на том факте, что вся эта идея со сборкой системы для удалённого управления компьютером была продиктована не только, и не столько потребностью в доступе к файлам (потому что, как альтернативу, можно купить в таком случае NAS), а скорее даже необходимостью иметь возможность доступа к своему пулу рабочих программ, которые установлены только на домашнем компьютере.
PC360
Ремонт/настройка ПК и окружающих его устройств.
Удаленное включение компьютера через локальную сеть.
Удаленное включение протестировано на компьютерах с операционными системами Windows 7, Windows 8, Windows 10 и так же на Windows Server 2012, 2019. Это основные ОС в локальной сети нашей организации в настоящее время. Компьютеры включены в общую сеть через коммутаторы без дополнительной маршрутизации.
Для запуска компьютера через подключение по локальной сети необходимо:
— выполнить настройки в BIOS удаленного компьютера;
— выполнить настройки в ОС удаленного компьютера;
— установить и запустить ПО на компьютере с которого происходит удаленный запуск.
После этих действий проведем удаленное подключение к включенному ПК через AnyDesk.
Настройка BIOS.
Для входа в BIOS включаем компьютер и жмем на клавиатуре определенную клавишу, какую именно зависит от производителя материнской платы. Чаще всего это кнопка [DELETE] или [F1], но также встречаются многие другие кнопки и сочетания.
Попав в BIOS активируем настройку Power On LAN (Wake-on-LAN, WOL). В разных биосах она называется поразному. Выставляем значение настройки – Enabled.
Ниже на фото несколько примеров.
PME Event Wake Up (PME — Power Management Event)
Включение питания устройства PCIE.
Power On By PCI Device.
Включение посредством PCI-E.
Чаще всего эти настройки располагаются в разделе Power или Power Management. Так же они могут быть в разделе расширенных или дополнительных настроек.
В BIOS сервера Supermicro настройки Wake-On-Lan не оказалось. Видимо разработчики решили, что сервер должен быть включен круглосуточно. Так оно и есть. В данном случае активируем настройку Restore on AC Power Loss >> Power On. При возобновлении питания 220В сервер включится автоматически.
После активации настройки сохраняем параметры BIOS и компьютер перезагрузится.
Настройки в операционной системе.
В ОС Windows 7, 8, 10 и WinServer 2012, 2019 настройки сети выполняются одинаково. Любым удобным способом попадаем к свойствам сетевого адаптера через который ПК подключен в локальную сеть и интернет. Например, переходим в:
Панель управления\Сеть и Интернет\Центр управления сетями и общим доступом
(можно скопировать эту строку, открыть Этот Компьютер и вставить в адресную строку, нажать Ввод)
Находим нужный адаптер и открываем его свойства.
Или открываем «Диспетчер устройств» и находим там сетевой адаптер. Затем открываем правой кнопкой мыши его свойства.
В раскрывшихся свойствах нажимаем кнопку «Настроить».
В настройках переходим на вкладку «Дополнительно» и активируем два пункта, как на картинке ниже.
В зависимости от драйвера сетевого адаптера эти настройки могут называться по разному, например «Пробуждение особым пакетом Magic» или «WOL Пакет Magic».
Переходим на вкладку «Управление электропитанием». Активируем галочкой пункт «Разрешить этому устройству выводить компьютер из ждущего режима». Можно так же активировать самый нижний пункт настроек, но необязательно. Нажимаем кнопку «ОК».
Выполним еще одну настройку, без которой ничего не заработает в Windows 10. Переходим в:
Панель управления\Оборудование и звук\Электропитание\Системные параметры. В разделе «Действия при нажатии кнопок» убираем галочку с настройки «Включить быстрый запуск (рекомендуется). Нажимаем кнопку «Сохранить изменения».
Если ОС установлена на HDD, а не на SSD, то время загрузки после включения компьютера ощутимо увеличится.
Удаленное включение ПК.
На удаленном компьютере в той же локальной сети устанавливаем небольшое приложение WakeMeOnLan. Скачать его можно бесплатно перейдя на ЭТОТ сайт (скачивание внизу страницы).
ПО сканирует сеть, сохраняет MAC, IP, имя ПК. Затем, когда компьютер выключен, его нужно выбрать из списка и нажать на кнопку с будильником в верхней левой части окна программы. В настройках можно выбрать, куда будет отправлен пакет (на широковещательный адрес, на IP компьютера или на его имя).
Управляемый компьютер находится в дежурном режиме (англ. stand-by — режим, предусмотренный спецификацией ATX, при котором из всех выходных цепей блока питания активна только дежурная +5VSB) и выдаёт питание на микросхему BIOS и сетевой адаптер. Сетевой адаптер находится в режиме пониженного энергопотребления, при этом его микроконтроллер анализирует все пакеты, приходящие на соответствующий MAC-адрес, ничего не отвечая на них. Если одним из пакетов окажется magic packet, сетевой адаптер выдаст сигнал на включение питания компьютера (вики).
Если компьютер выключали на ночь из розетки электропитания, то по LAN он не запустится. Если включить всетаки нужно удаленно, то можно скомбинировать процесс с функцией «Включение при возобновлении электропитания», которая так же активируется в BIOS.
Некоторые протестированные в нашей ЛВС компьютеры с Windows 7 запускаются только с PCI внешним сетевым адаптором. При подключении на встроенный в мат.плату сетевой адаптор стабильно выходят из состояния сна. Какие настройки на это влияют так и не определилось. В Windows 10 при отключении быстрого запуска удаленное включение работает стабильно.
Удаленное администрирование.
После запуска «Wake-On-LAN» удаленного компьютера к нему можно подключится любым доступным способом и выполнить требуемые настройки. В нашей ЛВС популярно удаленное подключение к рабочему столу RDP и AnyDesk. AnyDesk способен включать удаленный компьютер не только по локальной сети но и через через интернет. Рассмотрим кратко как это сделать.
Устанавливаем и обновляем AnyDesk на удаленном компьютере. Скачать его можно бесплатно с официального сайта. Использование тоже бесплатное, с некоторыми ограничениями в отличие от платной версии. Запуск установленной программы желательно выполнять с правами администратора. Галочка об этом ставится в свойствах ярлыка.
Переходим в настройки. В боковом меню находим пункт «Wake-On-LAN» и проверяем, чтоб он был активирован (Enabled).
В пункте настроек «Безопасность» желательно установить пароль, чтоб подключатся автоматически.
Выключаем компьютер через Пуск >> Завершение работы.
Переходим в компьютер, с которого будем удаленно подключаться.
Вводим ID удаленного рабочего места.
После того, как появится сообщение «Клиент не в сети», нажимаем кнопку «Питание вкл.».
Начнется соединение с попыткой включения. Необходимо ждать 3-4 минуты если соединение проходит через интернет. К тому же время зависит от параметров и скорости включения удаленного ПК.
После некоторого времени ожидания появится окно для авторизации. Вводим созданный пароль. Отмечаем галочкой «Входить автоматически».
*если подключение на сервер то может возникнуть вопрос консоль или учетная запись, выбираем консоль
Получаем изображение и видим экран входа в учетную запись удаленного ПК. Вводим пароль, входим и выполняем требуемую работу.