openwrt скрипт перезагрузки модема
Автоматическая перезагрузка роутера на OpenWrt
Есть у меня роутер Wi-Fi TP-Link TL-WR842ND, я в него для большей функциональности, стабильности и прочего зарядил прошивку OpenWrt.
Прошивка OpenWrt имеет массу преимуществ, хоть с ней устройство и работает намного стабильнее, но все-таки подвисания иногда случаются, особенно если клиентов около 5-10 устройств и работа без перезагрузок и через UPS. У меня было пару раз что не выдавались по DHCP IP адреса, лечилось перезагрузкой. Чтобы избежать разных «боков» я решил сделать автоматическую перезагрузку роутера раз в сутки. Можно конечно и реже, но чтобы без мороки мне кажется в самый раз.
Задача: автоматическая перезагрузка роутера через планировщик задач прошивки OpenWrt
Решение: Заходим в вебинтерфейс управления роутером — раздел System — Scheduled Tasks и создаем задачу — перезагружаться в 7:05 каждый день (предварительно не забудьте правильно указать свой часовой пояс и проверить время), время можно выбрать любое нужно (первая цифра минуты, второй столбец часы).
Делаем Submit и перезагружаем роутер классическим способом чтобы изменения вступили в силу.
Все, теперь надеюсь можно вообще забыть где он стоит и никаких разрывов с ноября :-).
Фразы: перезагрузка роутера по расписанию, перезапуск по cron, планировщик задач OpenWrt
Openwrt скрипт перезагрузки модема
Дорогие пользователи! С 22 Сентября 2021 года открывается новый форум компании TP-Link на платформе tp-link.community
Форум будет доступен по ссылке https://community.tp-link.com/ru (так как форум еще не запущен, то ссылка временно не работает.)
Текущий форум по прежнему будет продолжать работать, все ссылки/прошивки/темы будут доступны, но также, будут перенесены на новый форум в соответствующие категории.
Убедительная просьба не дублировать темы на старом/новом форуме.
Как рестартовать модем под OpenWRT? (ZTE MF192+, Yota LU150)
Как рестартовать модем под OpenWRT? (ZTE MF192+, Yota LU150)
Сообщение Serg1965 » 01 июл 2014, 11:47
Аппаратная версия устройства : V.1
Версия прошивки : OpenWrt Attitude Adjustment 12.09 Kernel Version 3.3.8
Ваша страна : Россия
Название провайдера : МТС + Yota
Добрый день!
Есть 2 модема:
от МТС (3G ZTE MF192+ определяется как /dev/ttyACM0)
от Yota (LTE LU150 определяется как /dev/eth1)
На даче очень плохая связь. И как только модем (и один и другой) теряет сигнал, то пересоединения не происходит.
То есть рестартануть модем посредством команд
ifdown wan && ifup wan
или
/etc/network restart
не представляется возможным. Только ребутом самого устройства.
Нужна помощь линуксоидов, так как моих знаний не хватает.
Прошу подсказать, какие есть ещё способы рестартовать модем (рестартовать процессы) не перезагружая устройство целиком?
Re: Как рестартовать модем под OpenWRT? (ZTE MF192+, Yota LU
Сообщение Cenobit » 01 июл 2014, 12:37
Перезагрузка роутера на OpenWrt с помощью bat файла
Иногда по ICQ ко мне обращаются читатели моего блога. Вопросы у всех различные: у кого-то по администрированию, кто-то интересуется конкурсами и рынком, инвестированием, ипотекой, как сделать загранпаспорт и много другое. Как правило, я стараюсь дать какой-то совет для решения вопроса.
Не так давно был задан вопрос — человек прочитал мою статью Автоматическая перезагрузка роутера на OpenWrt и захотел перезагружать роутер не кроном, а bat файлом, который бы запускала программа из Windows.
Такой задачи у меня не возникало, я спросил что да как и начал думать варианты.
OpenWrt штука гибкая — это удобный Linux с web-интерфейсом, поэтому вариантов как перезагружать из Windows есть много.
Мне пришла идея — необходимо подключиться к роутеру, например, по SSH и выполнить команду перезагрузки (reboot).
Дальше дело техники, начал пробовать.
Мой любимый клиент SSH, как и у многих это Putty. Пробуем его, варианты есть, но оказывается для этих целей лучше подходит Plink, т.е. программа plink.exe из пакета Putty.
Plink позволяет отправлять на роутер команду буквально написав одну строку в bat или cmd файле.
Сейчас покажу пример использования plink.exe
где
-ssh — протокол
10.0.0.1 — это IP роутера на OpenWRT или любого другого на Linux с поддержкой SSH и открытым портом по-умолчанию
-l root — имя пользователя для подключения (лучше рут или с правами root чтобы выполнилась перезагрузка)
-pw password — указываем пароль для подключения
Говорят хранить пароль в открытом виде не кошерно, но в случае с роутером, думаю ничего страшного, однаков вы можете попробовать использовать подключение с авторизацие через ключи — Putty работает таким образом без вопросов (может и работает Plink, я не пробовал).
Вот синтаксис для подключения через Putty.
параметры имеют очень похожие значения, как и в случае с plink, нужно только создать файл с указанным названием (reboot.txt) и написать там reboot — это и будет команда которую передаст путти при подключении к серверу.
При первом подключении необходимо нажать Ок при запросе клиента SSH, дальше уже подключения будут без вопросов.
Таким образом мы получили 2 варианта подключения к серверу и отправки команды на перезагрузку. Дальшее создаем cmd файл и ложим его например на рабочий стол или в планировщике задач создаем задачу на перезагрузку.
Так же можно сделать файл пингования какого-нибудь сайта и если доступ к нему пропадает отправлять роутер в перезагрузку, в общем полет фантазии безграничен :-), хотя конечно все эти вещи лучше делать из внутренностей системы самого роутера, но тут уже на любителя, я всего лишь предложил варианты.
Кстати, скачать Plink можно там где и Putty или с моего сайта — ссылка plink.exe.
Фразы: putty выполнить команду на сервере, перезагрузка Linux из Windows, управление роутером OpenWrt из командной строки Windows
Openwrt скрипт перезагрузки модема
Перезагрузка удаленного роутера (модема) с использованием Telnet и Cron в Linux
На объекте заказчика установлен 4G/LTE модем ZYXEL и есть роутер TP-Link TL-WR842N/ND v2. Основная жалоба заказчика на необходимость частой перезагрузки модема и роутера, по причине пропадания интернета, зависания роутера или просто неподключения к wifi сети.
Все действия вы делаете на свой страх и риск. Автор не несет ответственности за возможные последствия
Для исправления ситуации было проделано следующие:
2) Поиск альтернативных прошивок. Для 4G модема Zyxel не существует, а на TP-Link TL-WR842N/ND v2 была установлена OpenWrt Chaos Calmer 15.05.1 (Рисунок 1). После перехода на альтернативную прошивку проблемы с зависанием и неподключением по wifi более не наблюдаются.
3) 4G модем Zyxel LTE6100, как удалось выяснить, теряет интернет по нескольким причинам:
К сожалению, альтернативной прошивки не существует, а с офф. сайта проблему не решает. Раз помогает перезагрузка, значит нужно «ребутить», но делать это без участия пользователи и во время когда в интернете нет необходимости.
4) Есть несколько способов делать перезагрузку модема Zyxel LTE6100.
Нами был выбран последний вариант со скриптом, тем более, что роутер Tp-link включен постоянно, а OpenWrt позволяет все это реализовать через Cron.
5) Скрипт выглядит так (Рисунок 2). Данная реализация немного корявая, лучше делать через инструмент Expect, но его нет в базе OpenWrt.
В скрипте вам нужно заменить значения на свои admin, pass, ip_adress
Создаем папку scripts в корне и сохраняем скрипт под названием rebootmodem.sh. Названия папки и скрипта могут быть любыми. Далее нужно перейти на роутере в раздел System-Scheduled Tasks и прописать в Cron (планировщик) параметры запуска (Рисунок 3). Обязательно перезапустите Cron, либо перезагрузите роутер для сохранения параметров запуска.
В нашем случаи запуск скрипта происходит в 4 часа ночи, во вторник, четверг, субботу и воскресение.
После проделанных действий заказчик уже больше 2 месяцев даже близко не подходит к роутеру и модему.
Копирование материалов с сайта разрешено только с согласия автора, либо с указанием адреса источника.
Openwrt скрипт перезагрузки модема
Тема обсуждалась. Лучше интерфейс перегрузить. Ну можно и роутер при отсутствии пинга.
Ставишь модуль Файл_менеджер. Заходишь в папку www, создаешь папку sh и в ней файл tester.sh.
Назначаешь файлу права 775 (отметь галочками как у меня на рисунке).
Ставишь модуль «Планировщик» и добавляешь задание.
Все сделано. Можешь отключить интернет и увидишь что модем перезагрузится через 5 минут.
Для отправки СМС-сообщений себе на телефон установи модуль «СМС уведомления» и добавь команду отправить сообщение перед командой перезагрузки. Каждый раз будет поступать сообщение о принудительной перезагрузке роутера.
Для отправки сообщений на электронную почту используй модуль «Gmail».