Skip to content

p1ne/openwrt-scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

В репозитории https://github.com/p1ne/openwrt-scripts выложены мои скрипты для OpenWRT на роутере TP-Link MR3020/модеме Huawei E353 для использования в автомобиле для следующих задач

1. Отсылка сообщения с примерным местоположением машины, которое определяется по данным текущей сотовой вышки, если к роутеру подключен 3G-модем
2. Автоматическое переключение раздачи интернета между модемом, подключенным к роутеру и мобильным телефоном в режиме hotspot
3. Автоматическая активация бесплатного режима Yota в случае, если к роутеру подключен Yota-модем

Предполагается следующее:

  • на роутере установлена прошивка Peppy Snowdrop и на нем при помощи патча 4gmodem-fix.patch исправлена строка 352 скрипта /usr/bin/4gmodem
  • используется модем Huawei (проверялась работа на E353)
  • Название интерфейса модема не содержит пробелов

Для работы с HTTP-запросами в репозитории представлены разные скрипты в зависимости от того, какие утилиты есть в системе - curl, wget или netcat (nc)

  • curl самый нормальный и надежный способ, но для установки curl на MR3020 требуется дополнительное место на корневом разделе, которое можно организовать при помощи extroot. Но для этого потребуется или вставить флешку в модем Huawei и сконфигурировать его или воспользоваться хабом
  • wget не работает с POST и https, но есть в составе busybox
  • netcat самый ненадежный способ, но не требует ничего кроме busybox


Для корректной работы скриптов необходимо задать переменные окружения в файле /root/variables.sh

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

Провайдеры координат по данным сотовых вышек (можно использовать только один):
OPENCELLID_KEY - opencellid.org, требует регулярной отсылки данных вышек, поэтому может быть не очень удобен ( получить ключ )
YANDEX_KEY - Yandex Location API ( получить ключ )

Сервисы нотификации (можно использовать только один)
NMA_KEY - Notify My Android для телефонов на Android ( приложение )
QPUSH_CODE, QPUSH_NAME - qpush.me для iPhone ( приложение )

Точки доступа
ROUTER_AP_NAME, ROUTER_AP_PASSWORD - имя и пароль точки доступа когда доступ в сеть раздается через модем

PHONE_AP_NAME, PHONE_AP_MAC, PHONE_AP_PASSWORD - имя, MAC-адрес и пароль телефона, раздающего доступ в сеть

Конфигурацию точек доступа можно посмотреть в /root/wireless.Modem и /root/wireless.Phone

Скрипты
NOTIFY_SCRIPT - скрипт нотификации. В названии скрипта указан сервис нотификации и используемая утилита для работы с HTTP-запросами
COORDINATES_SCRIPT - скрипт получения координат. В названии скрипта указано название провайдера координат
YOTA_SCRIPT - скрипт активации бесплатного режима работы Yota. В названии скрипта указана используемая утилита для работы с HTTP-запросами

Скрипт отсылки координат запускается один раз при загрузке роутера через /etc/rc.local
Скрипт переключения на телефон, раздающий доступ в сеть, и обратно - раз в минуту через /etc/crontabs/root

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages