- Подробности
- Категория: Роутеры, модемы, точки доступа
- Опубликовано 22.06.2017 15:27
- Просмотров: 6246
Перезагрузка удаленного роутера (модема) с использованием Telnet и Cron в Linux
На объекте заказчика установлен 4G/LTE модем ZYXEL и есть роутер TP-Link TL-WR842N/ND v2. Основная жалоба заказчика на необходимость частой перезагрузки модема и роутера, по причине пропадания интернета, зависания роутера или просто неподключения к wifi сети.
Все действия вы делаете на свой страх и риск. Автор не несет ответственности за возможные последствия
Для исправления ситуации было проделано следующие:
1) Сброшены настройки, обновлены прошивки на модеме и роутере от производителя и заново все настроено - перезагружать стало нужно реже, но проблема осталась.
2) Поиск альтернативных прошивок. Для 4G модема Zyxel не существует, а на TP-Link TL-WR842N/ND v2 была установлена OpenWrt Chaos Calmer 15.05.1 (Рисунок 1). После перехода на альтернативную прошивку проблемы с зависанием и неподключением по wifi более не наблюдаются.
Рисунок 1.
3) 4G модем Zyxel LTE6100, как удалось выяснить, теряет интернет по нескольким причинам:
- а) перестает видеть сим-карту. Замена симки не помогает. Помогает только перезагрузка.
- б) рвет соединение с оператором и потом его не восстанавливает. Помогает только перезагрузка.
- в) просто перестают "ходить пакеты". Помогает только перезагрузка.
К сожалению, альтернативной прошивки не существует, а с офф. сайта проблему не решает. Раз помогает перезагрузка, значит нужно "ребутить", но делать это без участия пользователи и во время когда в интернете нет необходимости.
4) Есть несколько способов делать перезагрузку модема Zyxel LTE6100.
Вручную.
- а) Через WEB интерфейс.
- б) Через Telnet (SSH не поддерживает)
- в) Передергивать питание.
Автоматически.
- а) При помощи розетки-таймера.
- б) Написать скрипт, который будет запускаться по расписанию и через Telnet перезагружать модем.
Нами был выбран последний вариант со скриптом, тем более, что роутер Tp-link включен постоянно, а OpenWrt позволяет все это реализовать через Cron.
5) Скрипт выглядит так (Рисунок 2). Данная реализация немного корявая, лучше делать через инструмент Expect, но его нет в базе OpenWrt.
В скрипте вам нужно заменить значения на свои admin, pass, ip_adress
Рисунок 2.
Создаем папку scripts в корне и сохраняем скрипт под названием rebootmodem.sh. Названия папки и скрипта могут быть любыми. Далее нужно перейти на роутере в раздел System-Scheduled Tasks и прописать в Cron (планировщик) параметры запуска (Рисунок 3). Обязательно перезапустите Cron, либо перезагрузите роутер для сохранения параметров запуска.
Рисунок 3.
В нашем случаи запуск скрипта происходит в 4 часа ночи, во вторник, четверг, субботу и воскресение.
После проделанных действий заказчик уже больше 2 месяцев даже близко не подходит к роутеру и модему.
Копирование материалов с сайта разрешено только с согласия автора, либо с указанием адреса источника.