Для организации доступа в интернет в загородном доме, приобрел 4G-модем Huawei e3372h-153. Сигнал в моем районе достаточно сильный, чтобы смотреть видео с камер наблюдения в режиме реального времени. Прошивался для того, чтобы можно было поменять ttl, и не слететь с выгодного тарифа. Да и возможностей по-больше, чем в стоковом WEB-интерфейсе.
Заказал ещё один точно такой же 4G модем для родителей, только на 1К дешевле. На сдачу взял антенну, для усиления сигнала, на муське был неплохой обзор на неё. Буду ловить интернет на даче). Себе тоже приобрёл и протестировал антенну, не смотря на уверенный сигнал. Скорость выросла, инет стал шустрее что-ли, отзывчевее ))
За основу, был взят материал с 4pda. Собрал всё в одном архиве, на всё про всё, по пунктам, уходит 10 минут.
Итак, на руках у меня модем e3372h-153 со стоковой прошивкой 2x.3xx.xx.xx.778. Модем не привязан к оператору!
0. Если уже втыкали модем, удалите установленное ПО.
1. Установите 1_HUAWEI_DataCard_Driver_6.00.08.00_Setup
Huawei e3372-320 глюк оператора lifecell сброс через роутер netis mw5230
2. Установите 2_FC_Serial_Driver_Setup
3. Запустить из папки 3_set_hilink_switch/set_hilink_switch.cmd и выбрать действие » 1 » (!с админскими правами!)

4. Запустить из папки 4_E3372_swE3372_sw.cmd (!с админскими правами!) чтобы появились порты (проверить можно в диспетчере устройств, в разделе Порты (COM и LPT)
5. Ставим переходную прошивку, запускаем 5_E3372h-153_Update_21.180.01.00.00_M_01.10_for_.778E3372h-153_Update_21.180.01.00.00_M_01.10_for_.778.exe
После окончания установки ждем минуту, пока модем перезагрузится.

6. Устанавливаем рабочую прошивку 6_E3372h-153_Update_22.329.07.00.00_M_AT_05.11E3372h-153_Update_22.329.07.00.00_M_AT_05.11_nv.exe
После окончания установки опять ждем минуту, пока модем перезагрузится.
7. Запускаем установку модифицированной веб-морды с расширенными настройками для управления модемом 7_Update_WEBUI_17.100.13.01.03_HILINK_Mod1.11Update_WEBUI_17.100.13.01.03_HILINK_Mod1.11.exe
Поменяем значение ttl. Надо отрыть cmd от имени администратора, перейти в папку 8_fix_ttl и запустить fix_ttl.cmd
Можно сделать прямо из Проводника, перейти в папку и щелкнуть правой кнопкой мыши с зажатым шифтом, чтобы выбрать меню «Открыть окно PowerShell здесь»
Источник: magapov.blogspot.com
Форум Сервер Дома
Продвинутый рестарт (smart reboot) 3G4G модема Huawei E3372 в режиме Hilink через роутер с прошивкой OpenWrt
OpenWrt — встроенная операционная система, основанная на ядре Linux, и предназначенная, в первую очередь, для домашних маршрутизаторов. Основные компоненты включают в себя ядро Linux, util-linux, uClibc или musl и BusyBox. Размер всех компонентов оптимизирован в связи с тем, что в большинстве домашних маршрутизаторов сильно ограничен объём памяти.
Как на Хоноре можно сделать СБРОС НАСТРОЕК до заводских / Honor , Huawei / очистка данных / АНДРОИД
14 сообщений • Страница 1 из 1
SinglWolf Контактная информация:
Откуда: Башкирия
Продвинутый рестарт (smart reboot) 3G4G модема Huawei E3372 в режиме Hilink через роутер с прошивкой OpenWrt
30 авг 2019, 18:46
Интернет-провайдер в нашей местности достал до такой степени, что пришлось искать альтернативу.
Антенна 3G-репитера на мачте из берёзы.
Репитер 3G на потолке.
Об этой эпопее читайте Есть ли жизнь без Ростелекома? Есть! Прощай, Ростелеком! А сейчас расскажу как подключить 3G4G модем в режиме Hilink к роутеру с OS OpenWrt и настроить бесперебойный доступ в интернет.
Имеется модем, разблокированный под любого оператора Huawei E3372h-153. Модем работает в режиме Hilink (определяется как сетевая карта).
E3372h.png (44.24 КБ) 31126 просмотров
Была задача подключить его к роутеру и раздавать интернет всем устройствам, подключенных к маршрутизатору. Модель роутера не имеет значения. Лишь бы был хотя бы 1 USB порт и прошивка OpenWrt. Ну и нужен доступ в интернет для скачивания необходимых пакетов. Раньше я поднимал точку доступа на смартфоне, а на роутере поднимал Wi-Fi клиента, теперь пользуюсь скриптом для создания локального репозитория пакетов для OpenWRT [WINDOWS].
Заходим по ssh (через Putty, например) в систему роутера и устанавливаем необходимые пакеты. Можно то же самое проделать через web-интерфейс.
opkg update opkg install kmod-usb-net-cdc-ether usb-modeswitch curl reboot
Предварительно нужно отключить NAT в модеме. Для этого подключаем модем к компьютеру, заходим в веб-интерфейс по адресу Для просмотра ссылок Вы должны быть авторизованы на форуме. и настраиваем как на картинке:
Подключаем модем к роутеру.
Дожидаемся перезагрузки роутера и заходим в веб-морду. Нам нужно создать новый интерфейс.
Сеть —> Интерфейсы —> Добавить новый интерфейс.
- Назначаем имя интерфейсу. Имя произвольное.
- Назначаем протокол. DHCP-клиент. Модем сам выдаст роутеру IP-адрес.
- Выбираем наш модем как сетевое устройство, которое определилось в роутере. В моём случае это eth1. У меня уже создан интерфейс с именем МТС, который привязан к eth1, так что не обращайте на это внимания.
- Применяем.
- Далее нам нужно перейти на вкладку «Настройки межсетевого экрана».
- Выбрать зону wan. Она всегда красным цветом.
- Кликнуть на кнопку «Сохранить и применить»
Всё, уже можно пользоваться. Некоторое время. До первого недоумения: «КУДА ДЕЛСЯ ИНТЕРНЕТ. «
Не знаю как обстоят дела у других владельцев 34G модемов, но у меня иногда «отваливается интернет». Захожу в веб-морду модема, а там всё ОК. Линк есть, даже трафик бежит. Жидкий, но он есть, а интернета НЕТ.
В 99% помогает простое отключение и включение соединения. В редких случаях нужно перезагружать модем. Но проще передёрнуть модем в USB.
У меня роутер висит на стене, как раз за монитором. Каждый раз заходить в веб-морду модема (вставать и лезть за монитор) как-то лениво. Да и «толстые» торренты качаю иногда.
Что-то надо придумать для автоматического «передёргивания модема».
Что первое пришло в голову — пакет watchcat OpenWrt.
Но там, если «отвалился» интернет тупо перезагружается роутер. А это долго.
td-w8970-v1.png (109.78 КБ) 31117 просмотров
По крайней мере мой гигабитный TP-Link TD-W8970 v1.2 перезагружается довольно нерасторопно.
Приходила мысль перешить модем в Stick (классический USB-модем) и рулить им через AT-команды .
Покопал инфу в интернете и пришёл к выводу: встать и передёрнуть модем в роутере — быстрее и проще, чем прошить модем, а потом организовать автоматику через AT-команды.
Решение нашлось. У Huawei-ев в режиме Hilink есть API. Например, если в браузере перейти по ссылке Для просмотра ссылок Вы должны быть авторизованы на форуме. на экране появится ряд чисел
APIstatus.png (5.82 КБ) 31116 просмотров
а код страницы имеет довольно информативные теги
901 5 9 3 0 0 10.111.217.135 212.188.31.152 212.188.31.153 0 2 1 46 5 -1 0 hilink 0 0 0
УРЯЯЯЯ-ЯЯЯ-Я!
Устанавливаем curl в роутере,
opkg update opkg install curl
заходим в консоль, набираем команду
curl -s -X GET http://192.168.8.1/api/monitoring/status
и получаем ОБЛОМ.
Потратив изрядное количество времени в поиске информации, всё-таки нашёл объяснение такого поведения API модема. Всё дело в безопасности. Чтобы не было несанкционированного доступа к API модема. То есть для нормального ответа API модема нам нужно как-то легализовать свои запросы.
Пишем команду в консоли роутера:
curl -s -X GET http://192.168.8.1/api/webserver/SesTokInfo
и получаем информацию:
SessionID=tJnebnySHLlP+whNsVwHn5yJMFizfddRGJZwH7lea4Es69qnk40CUaYQ0h0jr06EriRBZ8glcZGg/wRuQCPRofm0l1YxFefLhLLZRwX9QO700PIkCkKOB2IxEXPyrGlV tuY0erY9OgnafggIYylBN2mm+cI/mntb
Чтобы API модема нормально принимала команды, нужно предварительно и перед каждой командой запрашивать данные сессии и внедрять содержимое тегов и в тело запросов.
Путём метода «научного тыка», несчётного количества проб и ошибок я написал небольшой скрипт, который позволяет управлять модемом через API.
Пока только пинг гугловского DNS и три варианта реакции на отсутствие ответа.
1. Отключение и включение линка в модеме.
2. Если не помогло — перезагрузка модема.
3. Если и это не помогло — перезагрузка роутера.
Алгоритм пока сырой. Но пользоваться уже можно.
#!/bin/ash # самая первая строка не ошибка! #functions getToken() < SesTokInfo=$(curl -s -X GET http://192.168.8.1/api/webserver/SesTokInfo) #получаем данные export SesInfo=$(echo «$» | grep SesInfo | cut -d «>» -f2 | cut -d «<» -f1) #получаем SesInfo export TokInfo=$(echo «$» | grep TokInfo | cut -d «>» -f2 | cut -d » # checkLink() < export LIMIT=$1 for i in $(seq 0 $LIMIT) do if ping -W 5 8.8.8.8 -c 1 >> /dev/null; then export LinkOFF=0 #uci set system.led_wps.trigger=’none’ #uci commit #echo «none» > /sys/class/leds/tdw89x0:green:wps/trigger break; else logger «No internet connection. Wait. » sleep 1 fi export LinkOFF=1 done > # getStatusLink() < getToken StatusAll=$(curl -s -X GET http://192.168.8.1/api/monitoring/status -H «Cookie: $SesInfo» -H «__RequestVerificationToken: $TokInfo») export statusLink=$(echo «$» | grep ConnectionStatus | cut -d «>» -f2 | cut -d » # setLinkOFF() < getToken # отключаем соединение curl http://192.168.8.1/api/dialup/mobile-dataswitch -H «Cookie: $SesInfo» -H «__RequestVerificationToken: $TokInfo» -H «Content-Type: application/x-www-form-urlencoded; charset=UTF-8» -H «Referer: http://192.168.8.1/html/home.html» —data «0» > # setLinkON() < getToken # включаем соединение curl http://192.168.8.1/api/dialup/mobile-dataswitch -H «Cookie: $SesInfo» -H «__RequestVerificationToken: $TokInfo» -H «Content-Type: application/x-www-form-urlencoded; charset=UTF-8» -H «Referer: http://192.168.8.1/html/home.html» —data «1» > rebootModem() < #reboot getToken curl http://192.168.8.1/api/device/control -H «Cookie: $SesInfo» -H «__RequestVerificationToken: $TokInfo» -H «Content-Type: application/x-www-form-urlencoded; charset=UTF-8» -H «Referer: http://192.168.8.1/html/home.html» —data «1» logger «3G modem rebooting» > #begin #Проверяем подключен ли модем if [ X»$(ls /sys/class/net | grep eth1)» != X»» ]; then checkLink 1 if [ X»$LinkOFF» == X»0″ ]; then if [ -f «/etc/router» ]; then rm -rf /etc/router fi exit 0; else #uci set system.led_wps.trigger=’heartbeat’ #uci commit #echo «heartbeat» > /sys/class/leds/tdw89x0:green:wps/trigger getStatusLink if [ X»$» == X»901″ ]; then setLinkOFF sleep 10 # ждём 10 секунд fi getStatusLink if [ X»$» == X»902″ ]; then setLinkON fi fi checkLink 10 if [ X»$LinkOFF» == X»0″ ]; then logger «3G modem reconnected» exit 0; else rebootModem fi checkLink 20 if [ X»$LinkOFF» == X»0″ ]; then logger «3G modem rebooted» exit 0; else logger «Router reboot» if [ ! -f «/etc/router» ]; then touch /etc/router #uci set system.led_wps.trigger=’heartbeat’ #uci commit reboot fi fi fi
Итак. Чтобы использовать данный скрипт, нам нужно настроить cron и создать расписание, по которому он будет запускаться.
touch /etc/crontabs/root ln -sf /etc/crontabs/root /etc/crontab /etc/init.d/cron start /etc/init.d/cron enable
Проверим запуск cron
logread | grep «cron»
Выхлоп должен быть примерно таким:
Sun Sep 1 07:26:50 2019 cron.info crond[2481]: crond (busybox 1.28.4) started, log level 5
Теперь нам нужно разместить скрипт в файловой системе роутера и создать расписание запуска сценария.
В OpenWrt по-умолчанию в целях экономии размера прошивки нет продвинутого текстового редактора. Только vi с минимальным функционалом. Так что будет проще и быстрее залить готовый файл скрипта в роутер любым удобным способом. Например, WinSCP из-под Windows
Удобнее всего размещать скрипты в каталоге /etc
После копирования файла в файловую систему роутера, нам нужно установить атрибуты скрипта на исполнение. Можно сделать тем же WinSCP.
или консольной командой
chmod o+x /etc/m.sh
Осталось написать и запустить задание для cron. Быстрее всего это можно сделать через консоль (Скрипт будет запускаться каждую минуту — значение «*/1»).
echo -e «*/1 * * * * sh /etc/m.shn» >> /etc/crontab /etc/init.d/cron restart
На этом всё. Удачи!
P.S. Как я уже упоминал, скрипт написан «на коленке». Есть что оптимизировать и дополнить. Например, добавить мигание индикаторами при обрыве линка. В скрипте эти строки есть, но закомментированы.
Если хотите сделать себе индикацию, пишите, указав версию прошивки и модель роутера.
Источник: serverdoma.ru
catbasil
Вы уже заскучали без моих железных постов? -а их сейчас будет.
Итак, понадобилось мне заюзать usb-модем для всяких разных целей. Первое, что захотелось сделать — отвязать устройство от оператора, второе — чтобы это ещё и удобно было. Я потихоньку начну.
Начну с того, что прошивка на эти хуавеи бывает Stick и Hilink. Стик — это просто сетевой адаптер. Так реализовано подключение у мегафона. А вот тот же МТС пользует Hilink, и это уже полноценный роутер. Про хайлинк я напишу статью, но позже.
Пока что скажу, что 3372 можно прошить любой прошивкой, а в случае хайлинка ещё и веб-морду накамлать. Пока что я пошёл по простому пути, т.е. в салон связи мегафона за М150-2.
Разлочка
Внимание! Операции выполнять с извлечённой SIM-картой!
0. Для начала нам понадобятся драйверы, о которых на том же 4PDA почему-то умалчивается, а новички сношаются и ноют, ачониработаит.
1. Убеждаемся в том, что у Вас действительно модем 3372H-153
У МТС это 827F, у Мегафона М150-2, у Билайна E3372s/E3370. Выглядят все примерно так:
Для этого (чтобы убедиться) запускам программу DC-Unlocker. Перед запуском программы DC Unlocker нужно закрыть весь операторский софт (и грохнуть службы винды, перезапускающие демоны менежеров), поскольку не могут одновременно две программы использовать порты модема. В противном случае, программа DC Unlocker не определит модем, и будет невозможно выполнить АТ команды.
В меню Options выбираем русский язык (Russian). Далее в окне программы жмем значок Лупы (найти и определить модем). После того как программа DC-Unlocker найдет и определит модем, будет выдана информация о модеме (IMEI своего модема, скопируйте куда-нибудь в текстовый файл, он будет нужен для определения Flash code). Это будет выглядеть как-то так:
Источник: catbasil.livejournal.com
