Перезагрузка удаленного роутера (модема) с использованием 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 более не наблюдаются.

Установка OpenWrt Chaos Calmer 15.05.1 на TP-Link TL-WR842N/ND v2

Рисунок 1.

3) 4G модем Zyxel LTE6100, как удалось выяснить, теряет интернет по нескольким причинам:

  • а) перестает видеть сим-карту. Замена симки не помогает. Помогает только перезагрузка.
  • б) рвет соединение с оператором и потом его не восстанавливает. Помогает только перезагрузка.
  • в) просто перестают "ходить пакеты". Помогает только перезагрузка.

К сожалению, альтернативной прошивки не существует, а с офф. сайта проблему не решает. Раз помогает перезагрузка, значит нужно "ребутить", но делать это без участия пользователи и во время когда в интернете нет необходимости.

4) Есть несколько способов делать перезагрузку модема Zyxel LTE6100.

Вручную.

  • а) Через WEB интерфейс.
  • б) Через Telnet (SSH не поддерживает)
  • в) Передергивать питание.

Автоматически.

  • а) При помощи розетки-таймера.
  • б) Написать скрипт, который будет запускаться по расписанию и через Telnet перезагружать модем.

Нами был выбран последний вариант со скриптом, тем более, что роутер Tp-link включен постоянно, а OpenWrt позволяет все это реализовать через Cron.

5) Скрипт выглядит так (Рисунок 2). Данная реализация немного корявая, лучше делать через инструмент Expect, но его нет в базе OpenWrt. 

 В скрипте вам нужно заменить значения на свои admin, pass, ip_adress

Скрипт для перезагрузки удаленного роутера или модема через Telnet в Linux

Рисунок 2.

Создаем папку scripts в корне и сохраняем скрипт под названием rebootmodem.sh. Названия папки и скрипта могут быть любыми. Далее нужно перейти на роутере в раздел System-Scheduled Tasks и прописать в Cron (планировщик) параметры запуска (Рисунок 3). Обязательно перезапустите Cron, либо перезагрузите роутер для сохранения параметров запуска.

Создание задания Cron в OpenWRT (Linux)

 

Рисунок 3.

В нашем случаи запуск скрипта происходит в 4 часа ночи, во вторник, четверг, субботу и воскресение.

После проделанных действий заказчик уже больше 2 месяцев даже близко не подходит к роутеру и модему.

 

Копирование материалов с сайта разрешено только с согласия автора, либо с указанием адреса источника.


Если Вам понравился сайт, либо статья на сайте, пожалуйста, поделитесь ссылкой с друзьями в социальный сетях, нажав нужную иконку внизу страницы. Мы будем Вам очень признательны!

Лучших хостинг для свйта

Карта сайта
Вся информация на сайте носит справочный характер и не является публичной офертой, определяемой положениями Статьи 437 Гражданского кодекса Российской Федерации. Безсбоев никак не связан с авторами и содержием рекламы.