Wake on lan openwrt установка

Обновлено: 04.07.2024

Сокращение UCI значит Unified Configuration Interface и направлен на централизованную настройку OpenWrt. Настройка должна быть простой, понятной и документированной.

Многие программы имеют собственный конфигурационный файл, например /etc/network/interfaces или /etc/exports или /etc/dnsmasq.conf /etc/samba/samba.conf и иногда они используют несколько отличающуюся структуру синтаксиса. В OpenWRT вам не нужно мучиться с ними, мы только заменяем файлы настроек UCI!

Вам не нужно перезагружать свою систему для изменения настроек! Перейдите по ссылке command.line.utility:,чтобы знать как это делается. И, пожалуйста, не забывайте, что некоторые демоны уже имеются в системе, но по умолчанию они отключены! К примеру, демон cron отключён по умолчанию, следовательно, редактирование crontab не даст результата. Вам необходимо либо запустить демона при помощи /etc/init.d/cron start или включить его /etc/init.d/cron enable . Вы можете disable (отключить), stop (остановить) и restart (перезапустить) большинство демонов. Возможно документация по notuci.config поможет вам.

Общие принципы

Централизованная конфигурация OpenWrt находится в нескольких файлах, расположенных в каталоге /etc/config/ . Каждый файл относится к части системы, который он настраивает. Вы можете редактировать файлы конфигурации в текстовом редакторе или с помощью утилиты командной строки uci , или через различные интерфейсы программирования (например, Shell, Lua и C).

Конфигурационные Файлы

Синтакс Файлов

Конфигурационные файлы uci обычно содержат одно или более конфигурационных определений , которые также называются секциями, в которых содержатся одна или более опций определений, определяющих фактические значения.

Ниже приведен пример простого конфигурационного файла:

В строках начинающихся с дескриптора list определены опции с множественными значениями. Все определения list , которые используют одинаковое имя ( collection в нашем примере), будут объединены в один список значений в том порядке, в котором они были в конфигурационном файле. Наличие отступов в строчках с определениями option и list является соглашением для улучшения читаемости конфигурационного файла, но синтаксически не обязательно.

Все приведенные ниже примеры являются синтаксически корректными в uci:

В противовес, следующий пример синтаксически неверен:

option example some value with space (кавычки отсутствуют вокруг значения)

Важно знать, что идентификаторы UCI и имена конфигурационных файлов могут содержать только символы a-z , 0-9 и _ . Значения опций могут содержать любые символы (пока они в кавычках).

Утилита Командной Строки (UCI)

Использование awk и grep для парсинга конфигурационных файлов OpenWrt является избыточным, неумным и неэффективным. Вместо этого используйте утилиту uci для получения того что Вам нужно.

Ниже приведено описание, а также некоторые полезные примеры использования этой мощной утилиты. Запомните, друзья не позволяют друзьям парсить собственные конфигурационные файлы!

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

Команда Цель Описание
commit [<config>] Сохраняет изменения данного конфигурационного файла, либо, если он не указан, всех конфигурационных файлов в файловую систему. Все команды “uci set”, “uci add”, “uci rename” и “uci delete” сохраняют результаты во временное хранилище и сохраняются сразу скопом во флэш-память с помощью “uci commit”. Это не нужно делать после редактирования конфигурационного файла в текстовом редакторе, но необходимо для скриптов, GUI и других программ работающих непосредственно с UCI файлами.
batch - Запускает многострочный UCI скрипт, который обычно выполнен в форме here-документа).
export [<config>] Экспорт конфигурации в машино-читаемый формат. Используется внутренне для преобразования конфигурационных файлов в shell-скрипты.
import [<config>] Импорт конфигурационных файлов в синтаксисе UCI.
changes [<config>] Список зарезервированных (пер. но еще не сохраненных) изменений данного конфигурационного файла или, если файл не указан, всех конфигурационных файлов.
add <config> <section-type> Добавить анонимную секцию типа section-type в данную конфигурацию.
add_list <config>.<section>.<option>=<string> Добавить данную строку в существующий список опций.
show [<config>[.<section>[.<option>]]] Отобразить данную опцию, секцию или конфигурацию в компактном виде.
get <config>.<section>[.<option>] Получить значение данной опции или тип данной секции.
set <config>.<section>[.<option>]=<value> Установить значение данной опции, или добавить новую секцию с типом равным указанному значению.
delete <config>[.<section[.<option>]] Удалить данную секцию или опцию.
rename <config>.<section>[.<option>]=<name> Переименовать данную секцию или опцию.
revert <config>[.<section>[.<option>]] Отменить изменения данной опции, секции или конфигурационного файла.

Примеры:

Нет необходимости рестарта всей системы

Все сделано. Перезагрузка не требуется.

Экспорт всей конфигурации

Отобразить в древовидном виде данную конфигурацию



Вся работа UCI сводится к редактированию файлов, расположенных в каталоге /etc/config/. Поэтому все команды uci можно свести к примитивной работе с текстовыми файлами с помощью джентельменского набора awk, cat, grep и редактора vi. Но такой подход является избыточным и мало эффективным по сравнению с предложенным разработчиками функционалом. Посудите сами: для получения детальной информации о параметрах текущего WAN соединении необходимо написать сложный парсер вывода команды ifconfig:


Список команд и опций uci доступен по вызову этой утилиты в консоли без параметров:


После конфигурирования необходимо сделать uci commit для сохранения изменений и перезапустить соответствующий сервис. Список сервисов (с соответствующими файлами папки /etc/config) приведен ниже:

Файл Описание
Основные
/etc/config/dhcp Конфигурация Dnsmasq и установки DHCP
/etc/config/dropbear Опции SSH сервера
/etc/config/firewall NAT, пакетная фильтрация, перенаправление портов, и т.д.
/etc/config/network Конфигурация коммутатора, интерфейсов и маршрутизатора
/etc/config/system Доп. системные настройки
/etc/config/timeserver Список серверов времени для rdate
/etc/config/wireless Настройки беспроводного подключения и сети wifi
IPv6
/etc/config/ahcpd Ad-Hoc Configuration Protocol (AHCP) server and forwarder configuration
/etc/config/aiccu AICCU client configuration
/etc/config/dhcp6c WIDE-DHCPv6 client
/etc/config/dhcp6s WIDE-DHCPv6 server
/etc/config/gw6c GW6c client configuration
/etc/config/radvd Router Advertisement (radvd) configuration
Другое
/etc/config/bbstored Конфигурация сервера резервного копирования BoxBackup
/etc/config/etherwake Wake-on-Lan: etherwake
/etc/config/fstab Точки монтирования и раздел подкачки
/etc/config/hd-idle Another idle-daemon for attached hard drives
/etc/config/httpd Установки веб-серввера (Busybox httpd, устарело)
/etc/config/luci Основные настройки LuCI
/etc/config/luci_statistics Настройка пакета статистики
/etc/config/mini_snmpd Настройки SNMP демона mini_snmpd
/etc/config/minidlna Настройки MiniDLNA
/etc/config/mjpg-streamer Настройки потокового вещания для Linux-UVC совместимых веб-камер
/etc/config/mountd Настройки демона автомонтирования OpenWrt
/etc/config/mroute Конфигурационные файлы для маршрутов мульти-WAN
/etc/config/multiwan Конфигурация простого мульти-WAN
/etc/config/ntpclient Настройки NTP клиента синхронизации времени
/etc/config/p910nd Настройки для без-буферного демона печати p910nd.server
/etc/config/pure-ftpd Конфигурация сервера Pure-FTPd
/etc/config/qos Реализация QoS для upload
/etc/config/racoon Настройки сервиса IPsec racoon
/etc/config/samba Настройки сервера SAMBA для шаринга файлов и принтеров сетей Microsoft
/etc/config/snmpd Настройки SNMP демона SNMPd
/etc/config/sshtunnel Установки пакета sshtunnel
/etc/config/stund Настройки сервера STUN
/etc/config/transmission Настройки BitTorrent
/etc/config/uhttpd Настройки веб-сервера (uHTTPd)
/etc/config/upnpd Настройки UPnP сервера miniupnpd
/etc/config/users База данных пользователей для различных сервисов
/etc/config/ushare Настройки сервера UPnP uShare
/etc/config/vblade vblade userspace AOE target
/etc/config/vnstat vnstat downloader settings
/etc/config/wifitoggle Скрипт для вкл. WiFi кнопкой
/etc/config/wol Wake-on-Lan: wol
/etc/config/wshaper wondershaper qos script settings
/etc/config/znc ZNC bouncer configuration

Изменение системного имени

PC WakeUp
версия: 1.5

Последнее обновление программы в шапке: 04.11.2014

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Краткое описание:
Включение компьютера удалённо со смартфона на Android

Описание:
Всем привет! Прошу не судить строго)) Моё первое приложение хочу представить)
Оно элементарное, сделано на скорую руку, не без глюков. Но я сделал его именно потому, что не смог найти готового решения.
Все найденные в маркете программы для Wake On Lan - работают либо только в локалке, либо только напрямую без роутера.
В общем в связке "Комп - Роутер (NAT) - Dynamic IP" я был вынужден попробовать решить вопрос сам))
Если честно - я буду рад если найдётся хотя бы один человек, который пожелает пользоваться моей программкой и реально сможет настроить под неё железо) Значит труды были не зря! )) Если чё - я готов помочь)))

Итак описание с маркета

У вас возникала ситуация, когда вам нужно срочно получить доступ к вашему компьютеру?
Например на компе лежат какие-то файлы или фотографии, которые нужны в данный момент.

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

Что необходимо:
- компьютер подключенный через Ethernet к роутеру
- настроенный в BIOS на компьютере Wake On Lan (функция которая позволяет включать комп через LAN-кабель)
- роутер с настроенным SSH подключением извне
- установленный на компьютере и смартфоне TeamViwer для удалённого управления

В настройках приложения заполняете данные для подключения:
- адрес роутера (IP или имя хоста)
- мак-адрес включаемого компьютера (в формате AA:BB:CC:DD:FF:00 через двоеточия)
- логин и пароль

Далее нажимаете "SSH в роутер" и как только подключение пройдёт вы можете включать ваш компьютер.
После включения к нему можно легко подключиться через TeamViewer.

Wake-on-LAN (WOL; в переводе с англ. — «пробуждение по [сигналу из] локальной сети») — технология, позволяющая удалённо включить спящий, выключенный или компьютер в режиме гибернации, но поддержка этого (особенно для выключенного компьютера) зависит от аппаратного обеспечения и настроек BIOS/UEFI. Большинство современных компьютеров имеют функцию WOL - она ​​может быть указана в разделе PME (Power Management Events - События управления питанием).

Причины использовать WOL с DD-WRT:

  • Вы не хотите, чтобы компьютер был включен всё время, но вы хотите использовать его вне своего дома или офиса, и компьютер подключен к маршрутизатору DD-WRT, который постоянно включен.
  • Компьютер является медиасервером, который автоматически засыпает, но вы хотите, чтобы он автоматически активировался для доступа к файлам.

[edit] Подготовка

  1. Компьютер с поддержкой WOL. Большинство современных компьютеров поддерживают эту технологию.
  2. Права администратора на компьютере, который вы хотите иметь возможность разбудить по сети.
  3. Компьютер должен иметь статический IP-адрес, назначенный вручную или полученный через резервирование DHCP. В приведенном ниже примере мы предполагаем, что локальная сеть маршрутизатора - 192.168.1.x (по умолчанию), а компьютер со статическим IP - 192.168.1.254.
  4. В идеале, второй компьютер для проверки возможности первого к пробуждению. Вы также можете использовать веб-интерфейс устройства DD-WRT для отправки тестовых пакетов вместо второго ПК.

[edit] Включение WOL на компьютере

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

[edit] Проверьте, что WOL работает в локальной сети

Переведите первый компьютер в спящий режим, режим ожидания и выключите, каждый раз нажимая кнопку Send на втором компьютере, чтобы проверить каждый режим и убедиться, что WOL работает и компьютер запускаться.

После того, как этот шаг заработает, вы сможете приступить к проверке WOL, находясь вне локальной сети, например, в кафе или другом удаленном месте.

[edit] Устранение неполадок

Wake-on-LAN обычно отключена по умолчанию на большинстве ПК. Эта функция должна быть включена в BIOS компьютера, иначе WOL не будет работать. Обратитесь к руководству по материнской плате и экрану BIOS (чтобы к нему попасть, нужно обычно нажать клавишу DEL при запуске компьютера). Если вы не видите опции типа WakeOn в своем BIOS, обычно где-то в Power Management, ваша материнская плата может не поддерживать WOL.

[edit] Способы пробуждения компьютера

[edit] По Telnet или SSH

Примечание. Это предпочтительный способ удаленной отправки магических пакетов WOL.

Если у вас есть локальный или удаленный доступ к маршрутизатору по Telnet или SSH, вы можете активировать компьютер в локальной сети, используя следующую команду:

Обратите внимание, что важно указывать полный путь к "/usr/sbin/wol". Просто "wol" не будет работать.

Замените AA:BB:CC:DD:EE:FF фактическим MAC-адресом компьютера, который вы хотите запустить удаленно. Аналогичным образом замените 192.168.1.255 фактическим широковещательным адресом сети (192.168.1.255 - широковещательный адрес, когда компьютер имеет IP-адрес 192.168.1.x и маску подсети 255.255.255.0). Замените «PP» на номер порта, который прослушивает ваша машина (обычно 7 или 9).

[edit] Через переадресацию портов

Чтобы удаленно разбудить компьютер через Интернет с помощью Wake-on-LAN следуйте этим инструкциям:

1 - Создайте правило переадресации порта в веб-интерфейсе (Applications & GamingPort Range Forward) на выбранный IP-адрес:

  • Здесь 9 - это значение по умолчанию, но вы можете использовать любой номер порта, если программа для пробуждения поддерживает работу с портами, отличными от 9. Большинство служб WOL будут использовать UDP-порт 7 или 9.
  • 192.168.1.254 - это IP-адрес в локальной сети, это может быть любой IP-адрес, если он не назначен никакому другому устройству.

2 - Добавьте статическую запись ARP, введя следующую строку в разделе AdministrationCommands веб-интерфейса, а затем сохраните с помощью кнопки Save Startup.

  • Не изменяйте MAC-адрес FF:FF:FF:FF:FF:FF, это специальный MAC-адрес, используемый для широковещательной рассылки. Волшебные пакеты WOL создаются с использованием MAC-адреса целевого компьютера, но должны и почти всегда отправляться через широковещательную рассылку. MAC-адрес, используемый здесь, управляет тем, как пакет отправляется, а не как он формируется.
  • IP-адрес 192.168.1.254 должен соответствовать IP-адресу, который вы использовали на предыдущем шаге. Опять же, этот IP-адрес должен соответствовать вашей локальной сети, и не должен быть назначен любому другому устройству сети.
  • Объяснение / обоснование этой настройки: как правило, пакеты WOL отправляются на специальный широковещательный IP-адрес - на конечный .255 в подсети или на 255.255.255.255. Поскольку переадресация портов на эти специальные выделенные широковещательные IP-адреса не работает, нам нужно создать собственный широковещательный IP-адрес, взяв неиспользуемый IP-адрес и назначив ему широковещательный MAC-адрес, а затем перенести порт на него.
  • В качестве необязательной альтернативы, вместо команды arp, можно использовать ip neigh (которая делает то же самое, что и arp). Поддержка ip neigh была удалена из DD-WRT начиная со сборки 17650, а поддержка arp недоступна в сборках DD-WRT ранее 5672.

3 - Перезагрузите маршрутизатор или выполните команды вручную.

[edit] Automatic Wake-On-LAN Daemon

Служба (демон) автоматического включения Automatic Wake-On-LAN Daemon будет периодически отправлять пакет пробуждения по локальной сети через заданные интервалы. Это может быть полезно для поддержания системы в сети во включенном состоянии (например, компьютер-медиацентр).

Пакеты, сгенерированные службой WOL, отправляются на UDP-порт 40000. Скорее всего, вам не нужно об этом беспокоиться, если только система, которую вы пытаетесь пробудить, не находится в другой подсети или вы не пытаетесь отслеживать пакеты.

Примечание: пользовательский интерфейс говорит, что интервал Interval принимает диапазон от 1 до 86400 секунд, но он будет отправлять пакет WOL с интервалом не менее 15 секунд. Все значения ниже 15 принимаются, но интервал будет всё равно 15 секунд.

Читайте также: