![]() |
![]() |
#1 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]()
Есть "большой" домашний сервер, на котором есть samba, web, будет DLNA, openmediavault и что-то типа OpenHUB/MajorDoMo.
Ранее функцию samba выполнял "малый" asus wl500W. Но скорость чтения по USB ужасает. Держать большой комп включенным 24/7 - имхо противоречит идее экономии электричества. Мысль: отслеживать на wl500w состояние сервера и обращения к нему, и при необходимости будить wake-on-lan. на текущий момент представляется примерно так: 1. В скрипты /etc/rc0.d добавить некое обращение к wl500w. 2. Мониторинг: 2.1 Поднимаем на роутере виртуальный интерфейс с ip сервака (реализовано) 2.2 wl500w с помощью iptables отслеживает обращения к 192.168.1.169 (реализовано) 2.3 Пакеты перехвтываем и сохраняем для дальнейшей передачи "проснувшемуся" серваку 3. при обнаружении пакета wakeonlan'им сервак и останавливаем мониторинг. (реализовано) 3.1 Ждем 30 сек. проверяем доступность сервера и передаем сохраненные пакеты. 4. При отсутствии активности на сервере более 30мин. гасим его.Мониторинг активности и выключение ведутся средствами сервера(по уточнению mebitek'a) . Хотелось бы послушать критику самой идеи и мысли по конкретной реализации каждого пункта. пункты 2 и 3 решены. Скрипты в приложенных файлах (переносы строки Unix) Скрипты размещаются в /opt/sbin (прошивка энтузиастов), запускается watchserv (пока руками). комментарии проставил. недостатки/доработки: 1.В идеале вынести все настройки в шапку одного скрипта и передавать в другие в качестве параметра или переменных среды. 2. Скрипт гасит все awk и tail в системе. По хорошему нужно создавать pid'ы 3. Остались нерешенными 1 и 4. 4. При пропадании электропитания wakeonlan не на всех материнках срабатывает. Последний раз редактировалось Tohin; 31.08.2015 в 20:07. |
![]() |
![]() |
![]() |
#2 | ||
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]()
Немного почитав маны, я пришел к выводу, что перехваченный tcpdump'ом пакет ARP-запроса не может быть обработан iptables, т.к. это не tcp/ip
Мониторинг tcpdump'ом не выриант - грузит и без того слабый проц на полную. Еще есть некая arpwatch.... Ушел гуглить... UPD: Вобщем это тоже не то. Теперь есть мысль об виртуальном интерфейсе, на роутере. Как только сервак засыпает - просыпатеся мафия? в смысле виртуальный интерфейс на роутере с тем же ip-шниокм. После отправки magic-packet вирт.интерфейс гаситься.... на память: Интерфейсы Asus WL-500W : eth0 = 4 x LAN порта eth1 = WAN порт eth2 = Wi-Fi br0 = LAN + Wi-Fi (eth0 + eth2) Попробуем создать виртуальный интерфейс на eth0: ifconfig eth0:0 192.168.1.81 Ура. "виртуально" сервер в сети. iptables -t nat -I PREROUTING -d 192.168.1.81 -j LOG --log-prefix="TRIGGER ME NOW !!!" cat /tmp/syslog.log БИНГО! Цитата:
$ tail -0 -f /tmp/syslog.log| awk '/TRIGGER ME NOW !!!/ {system("echo Have a nice day")}' Пингуем и получаем: Цитата:
ifconfig eth0:0 down - и он исчез Последний раз редактировалось Tohin; 07.12.2014 в 19:44. Причина: "Доктор, у меня проблема... я обгуглился" |
||
![]() |
![]() |
![]() |
#3 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]()
It's work!
Пункты 2 и 3 решены. Как будет немного времени выложу скрипты для "причесывания" сообществом. Может в CyberWRT их захотят оформить... Остается вопрос по п.1 и 4 |
![]() |
![]() |
![]() |
#4 | |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]()
По вопросу реализации п.1: бродят мысли насчет команды
$ nc -l -p 12345 С передачей полученных данных в awk. Немного опасений вызывает безопасность данного метода... Окончание процесса брожения ожидается в выходные. Возможно добавлю grep перед awk Пока есть такая заготовка: netcat -l -p 12345|awk '/hello/ {print "Hello World!"}' Почему-то в варианте: $ netcat -l -p 12345|grep hello|awk '/hello/ {print "Hello World!"; exit} срабатывает только при обрыве соединения с netcat На память: Цитата:
Последний раз редактировалось Tohin; 06.05.2015 в 15:47. |
|
![]() |
![]() |
![]() |
#5 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]()
Уперся в ограниченность своих знаний. Решил обратится на профильный форум
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Регистрация: 20.09.2014
Сообщений: 145
Вес репутации: 0 ![]() |
![]() Цитата:
Роутер 3020 24/7 в онлайне, через веб морду управлять сервером, усб-ттл ком переходник на аттиньку, слушаем ком порт роутера, на веб морде кнопки, всем рулит аттинька: 1. Включить БП. (Реле замыкает кратковременно PS_ON). 2. Выключить сервер. (Реле кратковременно замыкает PS_ON). 3. Выключение с удержание PS_ON более 10 сек. 4. Перезагрузка. (Реле замыкает Ресет). Индикаторы на морде: Сервер включен. (Измерить напряжение 3,3 вольта или 5 вольт. БП включен и подает напряжение - индикатор что сервер включился.) Ещё одно реле с нормально замкнутыми контактами подает питание на тиньку и роутер, тинька раз в два часа вклбчает реле, вся связка тиньки и роутера обесточивается, автоматом замыкается реле - защита от зависаний роутера. Последний раз редактировалось Alex19279; 06.05.2015 в 22:21. |
|
![]() |
![]() |
![]() |
#7 | |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]() Цитата:
идея в том чтобы будить сервер автоматически, при появлении необходимости в нем- это програмная часть, а железная на вкус и цвет каждого юзера. |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Регистрация: 20.01.2015
Сообщений: 312
Вес репутации: 444 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
то, что называется сервером, должно работать круглосуточно
|
![]() |
![]() |
![]() |
#9 | |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]()
Зачем?
Цитата:
По существу топика мысли есть? |
|
![]() |
![]() |
![]() |
#10 | |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 ![]() ![]() ![]() |
![]() Цитата:
Хочу выслушать советы/мнения/предостережения |
|
![]() |
![]() |
![]() |
Метки |
iptables, wake on demand, wake-on-lan |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|