Гид компьютерного мира - Информационный портал
  • Главная
  • Ошибки
  • Rt n56u прошивка padovan. Прошивка Xiaomi Mi WiFi на прошивку PandoraBox и Padavan

Rt n56u прошивка padovan. Прошивка Xiaomi Mi WiFi на прошивку PandoraBox и Padavan

Инструкций с разными вариантами обхода блокировок Интернет-ресурсов опубликовано огромное количество. Но тема не теряет актуальности. Даже всё чаще звучат инициативы на законодательном уровне заблокировать статьи о методах обхода блокировок. И появились слухи, что Роскомнадзор получит ещё одну пачку денег налогоплательщиков на «более лучшие» блокировки. Опытные пользователи ничего нового и полезного из статьи не узнают. А вот другие получат готовые пошаговые инструкции для простого и эффективного выборочного обхода блокировок на популярных маршрутизаторах с прошивкой Padavan и Keenetic.

Всё было хорошо, но «лучшее всегда враг хорошего». Во-первых, некоторые новые программы стали слишком «умными» и резолвят домены собственными методами, минуя DNS-сервер маршрутизатора. Это не позволяет dnsmasq на маршрутизаторе добавить адрес во множество ipset для разблокировки и приводит к закономерному результату - ресурс остаётся заблокированным. В Android 9 вообще появилась штатная поддержка DNS-over-TLS, т.е. этот метод обхода блокировки перестаёт работать (если другое устройство ранее не обращалось к dnsmasq). Во-вторых, обновление всего списка доменов из antizapret приводит к непредсказуемым результатам каждый раз. В список могут попасть домены, которые в реальности не заблокированы, и работа которых важна через основной канал. Нужно постоянно быть начеку и руками править сгенерированные файлы. В-третьих, надоело «таскать за собой» огромный список доменов с десятком тысяч казино и подобные, которые просто не нужны. Со временем я понял, что мне нужен лишь небольшой конкретный список заблокированных ресурсов.

Так что я год уже использую немного изменённый метод разблокировки, которым полностью удовлетворён:

  • Простота и лёгкость управления (после настройки).
  • Полный контроль над тем, какие ресурсы нужно разблокировать.
  • Минимальные требования к ресурсам процессора и ОЗУ маршрутизатора.
  • Широкий охват нюансов при обходе блокировок.
Важно отметить, что мой вариант не предназначен для случая, когда вам нужно разблокировать сотни и тысячи доменов. Потому что при старте маршрутизатора происходит резолвинг каждого домена из заданного списка. Чем больше доменов в списке, тем дольше будет происходить инициализация множества ipset для разблокировки.

Основа обхода блокировок та же - сеть Tor. Её использование обусловлено двумя простыми факторами- бесплатность, и вероятность того, что Tor будет заблокирован в России, близка к нолю, в отличие от любого VPN-сервиса. Tor является фундаментом наркотрафика в России от среднего звена до самых низов. Блокировка Tor приведёт к поиску новых инструментов для рынка и снижению уровню анонимности, что повлечёт за собой успешную активизацию работы локальных правоохранительных органов. В конечном итоге это, как вирус, начнёт негативно влиять на верхнее звено. Учитывая последние удивительные новости о связях высших должностных лиц государства с глобальным наркотрафиком в Россию, блокировка Tor в России - это просто табу, хоть она и тривиальная. Ни Роскомнадзор, какие бы миллиарды не выделялись этому ведомству, ни один суд в России не имеют разрешения «сверху» для блокировки Tor. И это уже даже никого не удивляет и не пугает, хоть Россия просто утопает в наркотиках (любой школьник знает, что такое «дакнет», и через 30 минут имеет фактическую возможность в любом городе с населением от 10 тыс. человек беспрепятственно получить любые наркотики практически в любых количествах - такая злая правда жизни). При текущем режиме вероятность блокировки сети Tor ниже, чем вероятность блокировки сайта музея Эрмитаж.

Приведённую инструкцию легко адаптировать для маршрутизаторов с OpenWrt. Также, небольшими изменениям легко заменить Tor на OpenVPN.

Как вы будете управлять обходом блокировок после настройки?

Всё очень просто. У вас есть файл /opt/etc/unblock.txt - простой список для разблокировки. Вы можете разблокировать домен, IP-адрес, диапазон адресов или CIDR. Одна строка - один элемент. Допускаются пустые строки, и можно использовать символ # в начале строки для игнорирования.



После редактирования этого файла вы просто выполняете команду для применения новой конфигурации:

Unblock_update.sh
Все ресурсы из unblock.txt разблокируются без необходимости перезагружать маршрутизатор.

Принцип работы

  • При инициализации маршрутизатора создаётся пустое множество IP-адресов ipset с именем unblock.
  • В брандмауэр добавляется правило перенаправления всех пакетов с адресатами из unblock в сервис Tor.
  • Запускается сервис Tor в режиме прозрачного прокси.
  • Запускается специальный скрипт unblock_ipset.sh, который резолвит все домены из unblock.txt и добавляет их IP-адреса в множество unblock. IP-адреса, диапазоны и CIDR из этого файла тоже добавляются в unblock.
  • Запускается dnsmasq с дополнительным конфигурационным файлом unblock.dnsmasq, в котором указано добавление IP-адресов доменов из unblock.txt в множество unblock при резолвинге.
  • cron с определенной периодичностью запускает unblock_ipset.sh, чтобы частично компенсировать возможные случаи с нюансами.
  • При необходимости все домены из unblock.txt (и только они) резолвятся через dnscrypt-proxy, если провайдер фильтрует DNS.

Настройка маршрутизатора с прошивкой Padavan

У вас должен быть маршрутизатор с установленной прошивкой Padavan и уже настроенным менеджером пакетов Entware. В Windows для подключения подключения к маршрутизатору по SSH вы можете использовать клиент PuTTY .

Убедитесь, что у вас используется Entware, а не устаревший Entware-ng. Посмотрите содержимое папки /opt/var/opkg-lists. Там будет присутствовать файл entware или entware-ng. Во втором случае вам нужно обновить прошивку Padavan вашего маршрутизатора до последней версии и заново установить менеджер пакетов Entware. Только после этого приступайте к пошаговой инструкции.

Как показали отзывы, в основном проблемы возникают у тех, у кого Entware настроен неверно изначально (т.е. не загружаются скрипты из init.d) во внутренней памяти маршрутизатора. Если у вас Xiaomi Mi Router 3 или 3G, и вы не уверены, что Entware во внутренней памяти у вас работает корректно (автоматический запуск), то просто всё настройте заново. Берёте PROMETHEUS. Обновляет скрипт (1). Обновляете исходный код (2). Собираете и прошиваете самую актуальную прошивку (4). Сбрасываете настройки прошивки (NVRAM и хранилище файлов) - Дополнительно > Администрирование > Настройки. Настраиваете доступ в Интернет на маршрутизаторе и включаете SSH. Выполняете в PROMETHEUS Firmware > Форматирование RWFS. Выбираете Дополнительно > Администрирование > Настройки > Монтировать файловую систему в R/W раздел > UBIFS. Перезагрузите маршрутизатор. Все актуальные скрипты запускаа Entware из внутренней памяти будут прописаны автоматически, и всё будет работать как часы.

Для тестов я использовал популярный Xiaomi Mi Router 3G (Entware установлен во внутреннюю память) с самой свежей прошивкой - 32a93db. Всё будет работать даже на легендарном малыше WT3020 AD/F/H за 10$.

opkg update opkg install mc tor tor-geoip bind-dig cron
mc
tor - сервис Tor.
tor-geoip - база гео-IP для Tor.
bind-dig
cron - планировщик заданий.

2. Инициализация ipset, создание множества IP-адресов unblock (start_script.sh)

Подключите необходимые модули и создайте пустое множество адресов с именем unblock при загрузке маршрутизатора. Для этого откройте в редакторе файл /etc/storage/start_script.sh :

Mcedit /etc/storage/start_script.sh
Добавьте в конце:

Modprobe ip_set modprobe ip_set_hash_ip modprobe ip_set_hash_net modprobe ip_set_bitmap_ip modprobe ip_set_list_set modprobe xt_set ipset create unblock hash:net

При желании вы можете отредактировать файл start_script.sh через веб-интерфейс маршрутизатора - «Дополнительно» > «Персонализация» > «Скрипты» > «Выполнить перед инициализацией маршрутизатора». После редактирования нажмите «Применить».

3. Настройка Tor

Cat /dev/null > /opt/etc/tor/torrc

Mcedit /opt/etc/tor/torrc

User admin PidFile /opt/var/run/tor.pid ExcludeExitNodes {RU},{UA},{AM},{KG},{BY} StrictNodes 1 TransPort 192.168.0.1:9141 ExitRelay 0 ExitPolicy reject *:* ExitPolicy reject6 *:* GeoIPFile /opt/share/tor/geoip GeoIPv6File /opt/share/tor/geoip6 DataDirectory /opt/var/lib/tor
Замените при необходимости 192.168.0.1 Краткое описание конфигурации:

  • Запретить быть точкой выхода.

Создайте файл /opt/etc/unblock.txt :


Вот пример моего личного файла

###Торрент-трекеры rutracker.org rutor.info rutor.is mega-tor.org kinozal.tv nnm-club.me nnm-club.ws tfile.me tfile-home.org tfile1.cc megatfile.cc megapeer.org megapeer.ru tapochek.net tparser.org tparser.me rustorka.com uniongang.tv fast-torrent.ru ###Каталоги медиаконтента для программ rezka.ag hdrezka.ag hdrezka.me filmix.co filmix.cc seasonvar.ru ###Книги lib.rus.ec flibusta.is flibs.me flisland.net flibusta.site ###Телеграм telegram.org tdesktop.com tdesktop.org tdesktop.info tdesktop.net telesco.pe telegram.dog telegram.me t.me telegra.ph web.telegram.org desktop.telegram.org updates.tdesktop.com venus.web.telegram.org flora.web.telegram.org vesta.web.telegram.org pluto.web.telegram.org aurora.web.telegram.org 149.154.160.0/20 91.108.4.0/22 91.108.8.0/22 91.108.12.0/22 91.108.16.0/22 91.108.56.0/22 109.239.140.0/24 67.198.55.0/24 ###Разное 7-zip.org edem.tv 4pna.com 2019.vote ###Проверка Tor check.torproject.org ###Пример разблокировки по IP (убрать # в начале строки) #195.82.146.214 ###Пример разблокировки по CIDR (убрать # в начале строки) #103.21.244.0/22 ###Пример разблокировки по диапазону (убрать # в начале строки) #100.100.100.200-100.100.100.210

Создайте скрипт /opt/bin/unblock_ipset.sh :


Вставьте (Shift+Insert) содержимое:

#!/bin/sh until ADDRS=$(dig +short google.com @localhost) && [ -n "$ADDRS" ] > /dev/null 2> < /opt/etc/unblock.txt
Дайте права на исполнение:


Создайте скрипт /opt/bin/unblock_dnsmasq.sh :


Вставьте (Shift+Insert) содержимое:

#!/bin/sh cat /dev/null > /opt/etc/unblock.dnsmasq while read line || [ -n "$line" ]; do [ -z "$line" ] && continue [ "${line:0:1}" = "#" ] && continue echo $line | grep -Eq "{1,3}\.{1,3}\.{1,3}\.{1,3}" && continue echo "ipset=/$line/unblock" >> < /opt/etc/unblock.txt
Дайте права на исполнение:


Скрипт достаточно простой, вот суть его работы… Последовательно читаем строки из /opt/etc/unblock.txt. У прочитанных строк автоматически удалены пробелы и табуляция в начале и в конце. Пропускаем пустые строки. Пропускаем строки, которые начинают на #. Пропускаем строки, которые содержат IP-адрес (IP, диапазон, CIDR), т.е. нас интересуют только строки с именами доменов. В файл /opt/etc/unblock.dnsmasq вносим строки вида «ipset=/доменное_имя/unblock». Это означает, что после определения IP-адресов конкретного домена они будут автоматически добавлены во множество unblock.

Unblock_dnsmasq.sh

Создайте скрипт /opt/bin/unblock_update.sh :


Вставьте (Shift+Insert) содержимое:

#!/bin/sh ipset flush unblock /opt/bin/unblock_dnsmasq.sh restart_dhcpd sleep 3 /opt/bin/unblock_ipset.sh &
Дайте права на исполнение:

Создайте скрипт /opt/etc/init.d/S99unblock :


Вставьте (Shift+Insert) содержимое:


Дайте права на исполнение:

9. Перенаправление пакетов с адресатами из unblock в Tor (post_iptables_script.sh)

Откройте в редакторе файл /etc/storage/post_iptables_script.sh :

Mcedit /etc/storage/post_iptables_script.sh
Добавьте в конце:

Iptables -t nat -A PREROUTING -i br0 -p tcp -m set --match-set unblock dst -j REDIRECT --to-port 9141

При желании вы можете отредактировать файл post_iptables_script.sh через веб-интерфейс маршрутизатора - «Дополнительно» > «Персонализация» > «Скрипты» > «Выполнить после перезапуска правил брандмауэра». После редактирования нажмите «Применить».

В этот же файл вы можете добавить (это необязательно) перенаправление всех запросов на внешний порт 53 на себя. Это нужно, чтобы клиенты в локальной сети не использовали сторонние DNS-сервисы. Запросы будут идти через штатный DNS-сервер.

Iptables -t nat -I PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 192.168.0.1 iptables -t nat -I PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 192.168.0.1
Замените при необходимости 192.168.0.1 на внутренний адрес вашего маршрутизатора (LAN).

10. Подключение дополнительного конфигурационного файла к dnsmasq

Нам необходимо подключить созданный файл unblock.dnsmasq к dnsmasq. Для этого откройте в редакторе файл /etc/storage/dnsmasq/dnsmasq.conf :

Mcedit /etc/storage/dnsmasq/dnsmasq.conf
Добавьте в конце:

Conf-file=/opt/etc/unblock.dnsmasq
Если хотите (это необязательно), можете добавить дополнительный сервер для резолвинга и надёжности:

Server=8.8.8.8
При желании вы можете отредактировать файл dnsmasq.conf через веб-интерфейс маршрутизатора - «Дополнительно» > «LAN» > «DHCP-сервер» > «Пользовательский файл конфигурации dnsmasq.conf». После редактирования нажмите «Применить».

Замените в файле конфигурации cron имя root на admin:

Sed -i "s/root/admin/g" /opt/etc/crontab
Откройте в редакторе файл /opt/etc/crontab :

Mcedit /opt/etc/crontab
Добавьте в конце:

00 06 * * * admin /opt/bin/unblock_ipset.sh

Reboot

Настройка маршрутизатора с Keenetic OS

У вас должен быть маршрутизатор Keenetic/Zyxel с уже настроенным менеджером пакетов Entware (OPKG). Например, вот список некоторых маршрутизаторов, которые поддерживают Entware: Keenetic II, Keenetic III, Extra, Extra II, Giga II, Giga III, Omni, Omni II, Viva, Ultra, Ultra II, Omni (KN-1410), Extra (KN-1710), Giga (KN-1010), Ultra (KN-1810), Viva (KN-1910), DSL (KN-2010), Duo (KN-2110). Инструкцию по настройке Entware можно посмотреть (до 10 пункта).

Если ранее (с прошивкой младше 2.07) вы уже добавляли поддержку Entware, то убедитесь, что у вас используется не устаревший Entware-ng .

Обязательно включите «Модули ядра подсистемы Netfilter» - Общие настройки > Изменить набор компонентов. Если его нет в списке доступных, то пробуйте установить сначала компонент «Протокол IPv6». Если после этого не появляется, то пробуйте без него, но высокая вероятность, что у вас не будет работать разблокировка по диапазону и CIDR (т.к. не будет поддержки множества hash:net).

Для тестов я использовал Keenetic Ultra (KN-1810) с самой свежей прошивкой - 2.14.C.0.0-4.

Важное замечание. Вам придётся отключить штатный DNS-сервер в системе, мы будем использовать dnsmasq вместо него. Вы потеряете возможность назначать DNS-сервисы (Яндекс.DNS/SkyDNS/AdGuard DNS) индивидуально для клиентов, но без проблем сможете использовать их глобально через настройки dnsmasq при необходимости.

1. Установка необходимого ПО на маршрутизаторе

opkg update opkg install mc tor tor-geoip bind-dig cron dnsmasq-full ipset iptables
mc - файловый менеджер Midnight Commander. Он нужен лишь из-за удобного редактора mcedit. Если вы привыкли пользоваться другим текстовым редактором, то mc можно не устанавливать.
tor - сервис Tor.
tor-geoip - база гео-IP для Tor.
bind-dig - DNS-клиент (аналог nslookup и host).
cron - планировщик заданий.
dnsmasq-full - DNS-сервер.
ipset и iptables - консольные утилиты ipset и iptables (возможно, они уже есть в системе и не нужны, я добавил их для подстраховки).

2. Инициализация ipset, создание множества IP-адресов unblock (100-ipset.sh)

Проверьте, что в системе вашего маршрутизатора есть поддержка множества hash:net (как оказалась, не во всех маршрутизаторах Keenetic она есть):

Ipset create test hash:net
Если команда никаких ошибок и сообщений не выдала, значит поддержка есть, и просто следуйте инструкции дальше. В противном случае (есть ошибка) в следующем скрипте вам нужно заменить hash:net на hash:ip . При этом вы потеряете возможность разблокировки по диапазону и CIDR.

Создайте пустое множество адресов с именем unblock при загрузке маршрутизатора. Для этого создайте файл /opt/etc/ndm/fs.d/100-ipset.sh :

Mcedit /opt/etc/ndm/fs.d/100-ipset.sh
Вставьте (Shift+Insert) содержимое:

#!/bin/sh [ "$1" != "start" ] && exit 0 ipset create unblock hash:net -exist exit 0
Чтобы вставить из буфера, используйте Shift+Insert, сохранить - F2, выйти - F10.

Дайте права на исполнение:

Chmod +x /opt/etc/ndm/fs.d/100-ipset.sh

3. Настройка Tor

Удалите содержимое конфигурационного файла Tor:

Cat /dev/null > /opt/etc/tor/torrc
Откройте файл конфигурации Tor:

Mcedit /opt/etc/tor/torrc
Вставьте (Shift+Insert) содержимое:

User root PidFile /opt/var/run/tor.pid ExcludeExitNodes {RU},{UA},{AM},{KG},{BY} StrictNodes 1 TransPort 192.168.0.1:9141 ExitRelay 0 ExitPolicy reject *:* ExitPolicy reject6 *:* GeoIPFile /opt/share/tor/geoip GeoIPv6File /opt/share/tor/geoip6 DataDirectory /opt/var/lib/tor
Замените при необходимости 192.168.0.1

  • Исключить выходные узлы: Россия, Украина, Армения Киргизия, Беларусь.
  • Повесить «прозрачный» прокси на адрес 192.168.0.1, порт 9141.
  • Запретить быть точкой выхода.

4. Список доменов (и не только) для обхода блокировки (unblock.txt)

unblock.txt - простой список для разблокировки. Вы можете разблокировать домен, IP-адрес, диапазон или CIDR. Одна строка - один элемент. Пустые строки (в том числе с пробелами и табуляциями) игнорируются. Можно использовать символ # в начале строки для игнорирования.

Создайте файл /opt/etc/unblock.txt :

Mcedit /opt/etc/unblock.txt
Каждая строка может содержать доменное имя, IP-адрес, диапазон или CIDR. Можно использовать символ # для комментирования строк.

Вот пример моего личного файла

###Торрент-трекеры rutracker.org rutor.info rutor.is mega-tor.org kinozal.tv nnm-club.me nnm-club.ws tfile.me tfile-home.org tfile1.cc megatfile.cc megapeer.org megapeer.ru tapochek.net tparser.org tparser.me rustorka.com uniongang.tv fast-torrent.ru ###Каталоги медиаконтента для программ rezka.ag hdrezka.ag hdrezka.me filmix.co filmix.cc seasonvar.ru ###Книги lib.rus.ec flibusta.is flibs.me flisland.net flibusta.site ###Телеграм telegram.org tdesktop.com tdesktop.org tdesktop.info tdesktop.net telesco.pe telegram.dog telegram.me t.me telegra.ph web.telegram.org desktop.telegram.org updates.tdesktop.com venus.web.telegram.org flora.web.telegram.org vesta.web.telegram.org pluto.web.telegram.org aurora.web.telegram.org 149.154.160.0/20 91.108.4.0/22 91.108.8.0/22 91.108.12.0/22 91.108.16.0/22 91.108.56.0/22 109.239.140.0/24 67.198.55.0/24 ###Разное 7-zip.org edem.tv 4pna.com 2019.vote ###Проверка Tor check.torproject.org ###Пример разблокировки по IP (убрать # в начале строки) #195.82.146.214 ###Пример разблокировки по CIDR (убрать # в начале строки) #103.21.244.0/22 ###Пример разблокировки по диапазону (убрать # в начале строки) #100.100.100.200-100.100.100.210

5. Скрипт для заполнения множества unblock IP-адресами заданного списка доменов (unblock_ipset.sh)

Создайте скрипт /opt/bin/unblock_ipset.sh :

Mcedit /opt/bin/unblock_ipset.sh
Вставьте (Shift+Insert) содержимое:

#!/bin/sh until ADDRS=$(dig +short google.com @localhost) && [ -n "$ADDRS" ] > /dev/null 2>&1; do sleep 5; done while read line || [ -n "$line" ]; do [ -z "$line" ] && continue [ "${line:0:1}" = "#" ] && continue cidr=$(echo $line | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}/{1,2}") if [ ! -z "$cidr" ]; then ipset -exist add unblock $cidr continue fi range=$(echo $line | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}-{1,3}\.{1,3}\.{1,3}\.{1,3}") if [ ! -z "$range" ]; then ipset -exist add unblock $range continue fi addr=$(echo $line | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}") if [ ! -z "$addr" ]; then ipset -exist add unblock $addr continue fi dig +short $line @localhost | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}" | awk "{system("ipset -exist add unblock "$1)}" done < /opt/etc/unblock.txt
Дайте права на исполнение:

Chmod +x /opt/bin/unblock_ipset.sh
Скрипт достаточно простой, вот суть его работы… Ждём, когда заработает резолвинг домена google.com (если этого не сделать, то при загрузке маршрутизатора не будет заполнено множество unblock, т.к. маршрутизатор будет находиться ещё в процессе инициализации). Читаем строки в файле unblock.txt. У прочитанных строк автоматически удалены пробелы и табуляция в начале и в конце. Пропускаем пустые строки. Пропускаем строки, которые начинают на символ #. Ищем в строке CIDR. Если CIDR найден, то добавляем его в unblock. Ищем в строке диапазон. Если он найден, то добавляем его в unblock. Ищем в строке IP-адрес. Если IP найден, то добавляем его в unblock. Резолвим строку через dig. Все IP-адреса результата добавляем в unblock.

6. Скрипт для формирования дополнительного конфигурационного файла dnsmasq из заданного списка доменов (unblock_dnsmasq.sh)

Создайте скрипт /opt/bin/unblock_dnsmasq.sh :

Mcedit /opt/bin/unblock_dnsmasq.sh
Вставьте (Shift+Insert) содержимое:

#!/bin/sh cat /dev/null > /opt/etc/unblock.dnsmasq while read line || [ -n "$line" ]; do [ -z "$line" ] && continue [ "${line:0:1}" = "#" ] && continue echo $line | grep -Eq "{1,3}\.{1,3}\.{1,3}\.{1,3}" && continue echo "ipset=/$line/unblock" >> /opt/etc/unblock.dnsmasq done < /opt/etc/unblock.txt
Дайте права на исполнение:

Chmod +x /opt/bin/unblock_dnsmasq.sh
Скрипт достаточно простой. Последовательно читаем строки из /opt/etc/unblock.txt. У прочитанных строк автоматически удалены пробелы и табуляция в начале и в конце. Пропускаем пустые строки. Пропускаем строки, которые начинают на #. Пропускаем строки, которые содержат IP-адрес (IP или CIDR), т.е. нас интересуют только строки с именами доменов. В файл /opt/etc/unblock.dnsmasq вносим строки вида «ipset=/доменное_имя/unblock». Это означает, что после определения IP-адресов конкретного домена они будут автоматически добавлены во множество unblock.

Обязательно запустите скрипт для генерация файла unblock.dnsmasq:

Unblock_dnsmasq.sh
Проверьте, что файл unblock.dnsmasq создался:

Cat /opt/etc/unblock.dnsmasq

7. Скрипт ручного принудительного обновления системы после редактирования списка доменов (unblock_update.sh)

Создайте скрипт /opt/bin/unblock_update.sh :

Mcedit /opt/bin/unblock_update.sh
Вставьте (Shift+Insert) содержимое:

#!/bin/sh ipset flush unblock /opt/bin/unblock_dnsmasq.sh /opt/etc/init.d/S56dnsmasq restart /opt/bin/unblock_ipset.sh &
Дайте права на исполнение:

Chmod +x /opt/bin/unblock_update.sh

8. Скрипт автоматического заполнения множества unblock при загрузке маршрутизатора (S99unblock)

Создайте скрипт /opt/etc/init.d/S99unblock :

Mcedit /opt/etc/init.d/S99unblock
Вставьте (Shift+Insert) содержимое:

#!/bin/sh [ "$1" != "start" ] && exit 0 /opt/bin/unblock_ipset.sh &
Дайте права на исполнение:

Chmod +x /opt/etc/init.d/S99unblock

9. Перенаправление пакетов с адресатами из unblock в Tor (100-redirect.sh)

Для этого создайте файл /opt/etc/ndm/netfilter.d/100-redirect.sh :

Mcedit /opt/etc/ndm/netfilter.d/100-redirect.sh
Вставьте (Shift+Insert) содержимое:

#!/bin/sh [ "$type" == "ip6tables" ] && exit 0 if [ -z "$(iptables-save 2>/dev/null | grep unblock)" ]; then ipset create unblock hash:net -exist iptables -w -t nat -A PREROUTING -i br0 -p tcp -m set --match-set unblock dst -j REDIRECT --to-port 9141 fi exit 0
Если вы в шаге 2 использовали hash:ip , а не hash:net , то замените hash:net на hash:ip. Фактически мы дополнительно дублируем функцию создания множества unblock из 2 шага. Это нужно для подстраховки, если скрипты из fs.d ещё не начали запускаться, а скрипты netfilter.d уже запускаются. Ничего страшного, если unblock уже было создано ранее, команда просто будет проигнорирована.

В этот же файл вы можете добавить (это необязательно) перенаправление всех запросов на внешний порт 53 на себя. Это нужно, чтобы клиенты в локальной сети не использовали сторонние DNS-сервисы. Запросы будут идти через штатный DNS-сервер. Перед последним exit добавьте:

If [ -z "$(iptables-save 2>/dev/null | grep "udp \-\-dport 53 \-j DNAT")" ]; then iptables -w -t nat -I PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 192.168.0.1 fi if [ -z "$(iptables-save 2>/dev/null | grep "tcp \-\-dport 53 \-j DNAT")" ]; then iptables -w -t nat -I PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 192.168.0.1 fi
Замените при необходимости 192.168.0.1 на внутренний адрес вашего маршрутизатора (LAN).

Дайте права на исполнение:

Chmod +x /opt/etc/ndm/netfilter.d/100-redirect.sh

10. Настройка dnsmasq и подключение дополнительного конфигурационного файла к dnsmasq

Удалите содержимое конфигурационного файла dnsmasq:

Cat /dev/null > /opt/etc/dnsmasq.conf
Откройте файл конфигурации dnsmasq:

Mcedit /opt/etc/dnsmasq.conf
Вставьте (Shift+Insert) содержимое:

User=nobody bogus-priv no-negcache clear-on-reload bind-dynamic listen-address=192.168.0.1 listen-address=127.0.0.1 min-port=4096 cache-size=1536 expand-hosts log-async conf-file=/opt/etc/unblock.dnsmasq server=8.8.8.8
Замените при необходимости 192.168.0.1 на внутренний адрес вашего маршрутизатора (LAN).

11. Добавление задачи в cron для периодического обновления содержимого множества unblock

Это дополнительная страховка на тот случай, если программы/устройства используют свой собственный метод резолвинга, а IP-адрес домена изменился. Всё, что нужно сделать, это с желаемой периодичностью запускать скрипт unblock_ipset.sh. Для примера будем запускать каждый день в 6 утра.

Откройте в редакторе файл /opt/etc/crontab :

Mcedit /opt/etc/crontab
Добавьте в конце:

00 06 * * * root /opt/bin/unblock_ipset.sh
При желании вы можете закомментировать все остальные шаблонные задачи. Вот, как будет выглядеть ваш файл crontab:

12. Отключение штатного DNS-сервера и перезагрузка маршрутизатора

Подключитесь к CLI маршрутизатора Keenetic (порт 23 для Telnet и 22 для SSH, если в системе добавлен компонент «Сервер SSH»).

Выполните команду:

Opkg dns-override system configuration save system reboot
Встроенный в прошивку DNS-сервер будет выключен, и вместо него будет использоваться dnsmasq из состава Entware. Маршрутизатор при загрузке проверяет, подмонтирована ли папка opt (есть ли флешка/диск с Entware). Если есть, то штатный DNS-сервер не используется. Если нет, используется. Т.е. вынув флешку и перезагрузив маршрутизатор, у вас всё будет работать, как и раньше (перед настройкой).

После перезагрузки откройте в браузере сайт check.torproject.org (он должен быть добавлен в unblock.txt). Если вы всё сделали верно, то вы увидите надпись «Congratulations. This browser is configured to use Tor.»:

Основные методы диагностики ошибок после настройки

Если проверка с сайтом check.torproject.org (он должен быть добавлен в unblock.txt) проходит, но для других ресурсов продолжает открываться заглушка от провайдера (или не открываются), скорее всего, провайдер вмешивается в DNS-трафик, подменяя ответы - вам нужно сделать дополнительный обход фильтрации DNS-запросов.

Если после настройки что-то работает не так, как нужно, используйте простые команды для определения проблемного этапа.

Отобразите содержимое множества unblock:

Ipset list unblock
Если система сообщит, что такого множества нет, то ошибка на этапе 2 или вы не включили модуль Netfilter в системе (в случае с Keenetic).

Если множество окажется пустым, то не отработал скрипт unblock_ipset.sh, который в свою очередь должен быть запущен стартовым скриптом S99unblock. Запустите этот скрипт unblock_ipset.sh вручную. Если множество заполнилось, то ошибка на этапе 8. Если скрипт не может выполниться (скорее всего, ожидает резолвинга google.com), то ошибка где-то на стороне DNS-сервера, возможно, на этапе 10 или 6.

Проверьте наличие редиректа в iptables:

Iptables-save 2>/dev/null | grep unblock
Если его нет, то ошибка на этапе 9.

Если вообще все сайты не работают, т.е. не работает DNS, ошибка где-то в этапе 6 или 10. Возможно, на этапе 9.

Если все сайты из unblock.txt не работают (превышено время ожидания), но все другие работают, то проблема где-то на стороне Tor, ошибка на этапе 3.

Дополнительный обход фильтрации DNS-запросов провайдером

Если провайдер вмешивается в DNS-трафик, подменяя ответы для заблокированных ресурсов, это очень просто обойти. Для этого мы будем использовать dnscrypt-proxy. При желании и опыте вы легко можете заменить dnscrypt на stubby (DNS over TLS).

Dnscrypt будет использоваться только для тех доменов, которые перечислены в unblock.txt. Все остальные запросы будут идти через штатные DNS-серверы.

Если вы уверены, что ваш провайдер не фильтрует DNS-запросы, то эту дополнительную настройку делать не нужно.

У вас уже должен быть настроен описанный выше обход блокировок. Нижеследующие настройки идентичны для Padavan и Keenetic OS.

Установите дополнительное ПО на маршрутизаторе:

Opkg update opkg install dnscrypt-proxy2
Откройте файл конфигурации dnscrypt-proxy:

Mcedit /opt/etc/dnscrypt-proxy.toml
Найдите параметры listen_addresses, fallback_resolver, cache и измените их:

Listen_addresses = ["127.0.0.1:9153"] fallback_resolver = "77.88.8.8:1253" cache = false
77.88.8.8:1253 - это адрес DNS-сервера Яндекс с нестандартным портом. Он является резервным на тот случай, если у dnscrypt-proxy возникнут какие-то проблемы.

Запустите dnscrypt-proxy:

/opt/etc/init.d/S09dnscrypt-proxy2 start
Убедитесь, что dnscrypt-proxy работает (вы должны в ответ увидеть список IP-адресов):

Dig +short google.com @localhost -p 9153
Откройте в редакторе скрипт /opt/bin/unblock_ipset.sh :

Mcedit /opt/bin/unblock_ipset.sh
Замените содержимое на:

#!/bin/sh until ADDRS=$(dig +short google.com @localhost -p 9153) && [ -n "$ADDRS" ] > /dev/null 2>&1; do sleep 5; done while read line || [ -n "$line" ]; do [ -z "$line" ] && continue [ "${line:0:1}" = "#" ] && continue cidr=$(echo $line | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}/{1,2}") if [ ! -z "$cidr" ]; then ipset -exist add unblock $cidr continue fi range=$(echo $line | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}-{1,3}\.{1,3}\.{1,3}\.{1,3}") if [ ! -z "$range" ]; then ipset -exist add unblock $range continue fi addr=$(echo $line | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}") if [ ! -z "$addr" ]; then ipset -exist add unblock $addr continue fi dig +short $line @localhost -p 9153 | grep -Eo "{1,3}\.{1,3}\.{1,3}\.{1,3}" | awk "{system("ipset -exist add unblock "$1)}" done < /opt/etc/unblock.txt
Мы внесли небольшое изменение - теперь dig для резолвинга использует не штатный DNS-сервер, а dnscrypt-proxy с портом 9153.

Откройте в редакторе скрипт /opt/bin/unblock_dnsmasq.sh :

Mcedit /opt/bin/unblock_dnsmasq.sh
Замените содержимое на:

#!/bin/sh cat /dev/null > /opt/etc/unblock.dnsmasq while read line || [ -n "$line" ]; do [ -z "$line" ] && continue [ "${line:0:1}" = "#" ] && continue echo $line | grep -Eq "{1,3}\.{1,3}\.{1,3}\.{1,3}" && continue echo "ipset=/$line/unblock" >> /opt/etc/unblock.dnsmasq echo "server=/$line/127.0.0.1#9153" >> /opt/etc/unblock.dnsmasq done < /opt/etc/unblock.txt
Мы внесли небольшое изменение - теперь при генерации файла unblock.dnsmasq дополнительно вносятся строки вида «server=/доменное_имя/127.0.0.1#9153». Это означает, что резолвинг доменов из списка будет происходить через dnscrypt-proxy.

Выполните unblock_update.sh:

Unblock_update.sh
Готово. Все сложные настройки позади. Теперь вы будете только редактировать список unblock.txt при необходимости, добавляя или удаляя из него домены или IP-адреса для разблокировки, и командой unblock_update.sh активировать внесённые изменения.

UPDATE 01.04.2019 . Часто приходят личные сообщения по статье с типовыми вопросами. Отвечу тут на самые распространённые.

Как сделать доступными сайты доменной зоны.onion?

В torrc добавить:
VirtualAddrNetwork 10.254.0.0/16 DNSPort 127.0.0.1:9053 AutomapHostsOnResolve 1
Для доступа ко всем доменам зоны onion добавьте в dnsmasq.conf:
server=/onion/127.0.0.1#9053 ipset=/onion/unblock
Если вы не хотите открывать доступ ко всем доменам зоны onion, а лишь к определённым, то в dnsmasq.conf добавьте записи следущего вида:
server=/rutorc6mqdinc4cz.onion/127.0.0.1#9053 ipset=/rutorc6mqdinc4cz.onion/unblock server=/nnmclub5toro7u65.onion/127.0.0.1#9053 ipset=/nnmclub5toro7u65.onion/unblock server=/flibustahezeous3.onion/127.0.0.1#9053 ipset=/flibustahezeous3.onion/unblock

Как сделать обход блокировок для клиентов VPN-сервера, запущенного на маршрутизаторе?

В torrc строку с TransPort замените на:
TransPort 0.0.0.0:9141
Добавьте дополнительный редирект с необходимымм интерфейсом (ИНТЕРФЕЙС - интерфейс VPN-сети):
iptables -t nat -A PREROUTING -i ИНТЕРФЕЙС -p tcp -m set --match-set unblock dst -j REDIRECT --to-port 9141

У Mi Router 3 оригинальная прошивка подразумевает интерфейс на китайском языке. Препятствие между русскоязычным пользователем и китайским роутером может разрушить только скрипт Padavan от Asus. Возможно, вы хорошо читаете и воспринимаете информацию и на английском, но, к сожалению, заставить Сяоми говорить на этом языке в один клик невозможно. Давайте разбираться, как сделать использование устройства понятным и комфортным.

Как прошить роутер Xiaomi Mi Router 3 под Padavan – познакомимся с полной инструкцией сразу после того, как разберемся с видами прошивки. Как было сказано ранее, оригинальная версия доступна только на китайском, каковы альтернативы?

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

Заменить стандартную прошивку роутера от Сяоми можно на:

  1. Официальную с англоязычным интерфейсом.
  2. Русскую версию через Padavan.

Как прошить Xiaomi Router 3: пошагово

Прошивка роутера Xiaomi Mi Wifi 3 на английскую версию (более надежную в сравнении с версией от Падаван) делается довольно легко.


Есть еще один способ, который срабатывает не всегда, но требует намного меньше усилий. Мы просто попытаемся «обмануть» маршрутизатор, зададим в качестве нашего места пребывания Европу. Как?


Для чего необходима прошивка роутера

Говоря простым языком, прошивка –операционная система устройства. Без нее роутер не будет функционировать. Перепрошивать роутеры нужно тогда, когда невозможно настроить устройство желаемым образом с использованием оригинальной прошивки, или же, если прибор работает некорректно. При перепрошивке исправляются найденные ошибки, вводятся новые возможности.

Если по какой-либо причине вы решились перепрошивать свое устройство – будьте предельно внимательны, не спешите, перепроверяйте каждый шаг. Некорректная прошивка устройства может привести к неполадкам или даже к полной неработоспособности прибора.

Инструкция по прошивке от Padavan


Возможно, через некоторое время вы пожелаете вернуться к заводской прошивке. Реально ли это сделать?

Для этого воспользуйтесь официальным загрузочным сайтом http://www1.miwifi.com/miwifi_download.html Там выбираем вкладку «ROM» в верхней части страницы. Вам станет доступен список моделей роутеров, в котором необходимо отыскать свой. Скачиваем любой из предложенных файлов, присваивая ему при этом имя miwifi.bin

Понадобится небольшая пустая флешка. Ее нужно отформатировать в FAT32 и поместить туда установленный файл.

Затем роутер потребуется отключить от электросети, вставить подготовленную флешку в USB- разъем устройства, зажать на корпусе «Ресет» и не отпуская вновь включить в сеть роутер. Когда оранжевая лампочка начнет мерцать, «Ресет» можно отпустить.

p.s.s..сегодня выложили очередную модификацию..так что смотрите по полному адресу

по автоматической сборке прошивки XRMWRT Padavan для роутера Xiaomi Mi-router mini .
Для пользователей Windows и прочих .

Внимание!
Я пересобрал виртуалку:
Теперь всё работает максимально просто, инструкция обновлена.
Скачать можно , образ называется mi-nano (zip версия для яблочников).

Данная инструкция для тех у кого не собирается прошивка от Padavan. Она содержит, подготовленный мной, образ виртуальной машины. Вам остаётся только пошагово следовать моим указаниям. Обратите внимание, что текст несёт в себе минимум информации дабы не забивать вам мозг лишним и не пугать тех, кто собирается делать это первый раз. Хотя я постарался предостеречь вас от всех известных ошибок, помните что вы действуете на свой страх и риск, хотя он и минимален.
Информация будет обновляться, а образ виртуалки дорабатываться. Если у вас возникнут вопросы или что-то пойдёт не так пишите мне в QMS или задайте вопрос в этой теме.


  • Не нужно устанавливать сначала дистрибутив потом необходимые пакеты;

  • Всё в одном архиве и всё работает;

  • Требующиеся от вас знания минимальны;

  • Сама прошьет вам роутер, просто подключите компьютер в туже сеть;

  • Позволяет править конфиг и ресурсы в процессе подготовки;

  • Позволяет собирать с серым скином.


  • Не даёт прочувствовать процесс от и до и научиться азам;

  • Не очень удобно вытаскивать прошивку если надо её сохранить вне виртуалки.

1. Создать аккаунт mi account. Регистрация на сайте account.xiaomi.com занимает немного времени и возможна как по номеру телефона, так и по email (предпочтительнее );
2. Связать роутер с Xiaomi аккаунтом, например, через мобильное приложение Xiaomi MiWiFi RUS , для этого роутер должен быть подключен к интернету а телефон к роутеру;
3. Обновиться до последней версии девелоперки (стабильная версия прошивок не поддерживает SSH) . Скачать можно на дружественном китайском ресурсе (прошивку надо забирать из раздела "mini-"), либо воспользоваться официальным сайтом (скачивать прошивку "ROM for Mini " соответственно);-она в правой части страницы

4. Зайти на страницу http://d.miwifi.com/rom/ssh , указав свой аккаунт Xiaomi к которому привязывали роутер;
5. Скачать файл miwifi_ssh.bin и запомнить пароль для Root, записать файл на флешку желательно небольшого объёма, отформатированную в FAT32 ;
6. Выключить роутер, воткнуть флешку в USB порт роутера, удерживая RESET на роутере, включить его, дождаться, когда индикатор замигает оранжевым, отпустить RESET, дождаться, когда индикатор загорится синим;
Теперь переходим к следующему тому.

1. Скачиваем один из архивов и разархивируем в C:\Users\ваш пользователь\VirtualBox VMs или в другое понравившееся вам место, путь указан стандартный (архивы по возможности буду обновлять);
2. Открываем Oracle VM VirtualBox (если нету то скачиваем рекомендуемая версия 4.3.12.93733 );
3. Далее Машина - Добавить..., указываем путь до папки которую разархивировали ранее;
4. Открываем настройки машины и исправляем её характеристики (количество ядер и оперативной памяти) чтобы она работала быстрее но не конфликтовала с реальностью;
5. Запускаем машину, вводим логин foreman и пароль 4815162342 (да это из сериала LOST);
6. Запускаем скрипт:

./start.sh

Отвечайте на вопросы скрипта 1 - это положительный ответ 0 - отрицательный. Если хотите сбросить выполнение Ctrl+C . Всё остальное автоматизировано.

Справочная информация:
update.sh - скрип обновления, хотите обновить скрипты, тогда просто запустите его;
start.sh - основной файл который следует запустить сразу, он скачивает исходники и ведёт вас дальше по дороге к светлому будущему;
download.sh - отладочный файл, часто случается, что исходники скачиваются с ошибкой я зацыклил его чтобы у вас было больше одной попытки при ошибке;
build.sh - сборка прошивки во время которой вы можете отредактировать конфиг, заменить файлы исходников и даже поменять скин;
flash.sh - автоматическая прошивка, просто и безопасно;


  • Файловый менеджер можно запустить следующей командой:

    mc


    Далее все действия производим клавиатурой, а именно стрелочками. Все подписанные команды снизу это клавиши F1 ... F10 если хотим выбрать, жмём Enter.

  • Когда запросит пароль вводим: " 4815162342 " (обратите внимание, пароль при вводе не отображается);

  • Если экран станет чёрным нажмите любую кнопку, это заставка;

  • Запаситесь терпением, в зависимости от конфигурации вашей машины компиляция может занять от 10 до 30 минут;

  • Обратите внимание, что если ПК с виртуалкой подключен к нашему роутеру, вытаскивать прошивку с виртуальной машины нет необходимости. Прошиться можно через консоль, скрипт сам предложит это сделать.

Тема прошивки роутера Xiaomi Mi Router весьма актуальна по нескольким причинам. Главная в том, что весь его интерфейс на китайском языке без какой-либо альтернативы. Поэтому для того, чтобы более-менее понять то, что написано в стоковой прошивке, нужно устанавливать в браузер дополнительное расширение для перевода. Пользоваться можно, но неудобно. Казалось бы, к чему эти заморочки? Купи себе другой роутер с русской локализацией и пользуйся. Но подкупает низкая стоимость при больших технических показателях и функциональных возможностях роутера. Аналоги от других производителей, продающиеся здесь, стоят на тысячу и более рублей дороже.

Какие есть варианты?

Постоянно пользоваться китайской версией, как вы понимаете, невозможно. Поэтому я решил сделать данное руководство, в котором расскажу о двух возможностях прошивки роутера :

  • На официальную английскую
  • На версию Padavan, или Asus

Данная инструкция подходит для всех моделей с USB портом — прошивка Xiaomi Mi Router 3 происходит точно так же, как и Mini.

Официальная прошивка роутера Xiaomi Mi WiFi 3 на английский язык

Итак — как перевести Xiaomi Router 3 на английский язык и больше не заморачиваться с постоянным с этими бесконечными паучками.

Порядок действий несложный:

  • Скачать английскую прошивку Xiaomi
  • Загрузить ее на роутер
  • Заново настроить уже в англоязычной версии

Прошивка роутера Xiaomi Mi WiFi Router от Padavan для Asus

Еще одно решение китайского языка в панели управления — установить кастомную версию микропрограммы на роутер Xiaomi. Самой удачной на сегодняшний день является прошивка Padavan, или как ее еще называют от Asus по имени фирмы, для которой она была изначально сделана. Процесс установки не самый легкий, но если все делать правильно, то получится без проблем, если вы хоть немного умеете пользоваться компьютером. Поэтому я в данной статье постарался максимально подробно изложить весь процесс обновления ПО роутера на примере модели Xiaomi Mini для вашего удобства.

Для достижения конечного результата нам потребуется прошить Xiaomi Mi Router несколько раз:

  • Установить оригинальную прошивку XiaoMi для разработчиков
  • Установить прошивку Pandora
  • Установить прошивку Asus

Прошивка для разработчиков

Начнем. Прежде всего заходим на страницу загрузок Xiaomi во вкладку «ROM» и скачиваем пакет «ROM for» для своей модели (Mini, 3, 3C, 3G и т.д.) из правой колонки — это официальная версия ПО для разработчиков. С ее помощью мы сможем управлять глубокой прошивкой роутера.

Далее заходим в админку роутера по адресу , в раздел «Общие настройки > Состояние системы» и выбираем скачанный файл для прошивки. В моих скринах вы увидите переведенные страницы интерфейса через встроенный в Chrome Гугл переводчик — так пользоваться стоковой прошивкой удобнее всего. При работе для удобства используйте кабельное подключение компьютера к роутеру Xiaomi — не нужно будет при каждой перезагрузки заново к нему подключаться.

Происходит перепрошивка роутера — в это время его нельзя отключать от питания.

Скачиваем необходимые файлы и программы

После перезагрузки роутера опять настраиваем его на подключение к интернету от вашего провайдера и заходим в репозиторий Роутер-Клуба , где умельцы регулярно выкладывают свежие прошивки Padavan и не только на несколько разных роутеров. Прокручиваем вниз страницы и заходим в папку с последней датой.

В этой папке находим еще одну — xrm_base, в ней лежит нужная прошивка от Asus, скачиваем ее к себе на компьютер.

В личном кабинете Xiaomi Mi Router находим номер своего аккаунта — он справа от меню рядом с фото профиля.

Логин у всех будет «root» — пароль индивидуальный.

Нажимаем на кнопку с иероглифами справа от пароля и потом еще раз в всплывающем окне, тоже правую кнопку — и скачиваем файл для подключения по SSH протоколу к Xiaomi Mi Router.

Его нужно поместить на чистую, отформатированную в FAT32 флешку размером от 4 до 8 Гб.

И наконец, последнее, что надо скачать пакет программ с нашего хранилища для прошивки Asus.

Прошивка от Pandora

Приступаем к собственно прошивке. Вынимаем кабель питания из нашего роутера, берем флешку и вставляем ее в USB разъем на маршрутизаторе Xiaomi.
Далее зажимаем булавкой кнопку «Reset» и вставляем кабель электрического питания. Ждем, пока светодиод замигает желтым цветом и отпускаем кнопку «Ресет». Если все нормально, то светодиод поменяет цвет на синий. Если он станет красным, то повторите все манипуляции с флешкой и роутером сначала.

После этого запускаем из того же архива программу hfs.exe и добавляем в него файл PandoraBox.bin. Это виртуальный сервер, который мы запускаем на компьютере и с которого зальем прошивку на роутер.

Следующим шагом запускаем программу putty.exe из того же архива — это SSH клиент, который позволит подключиться к «внутренностям» Xiaomi. Вбиваем в адресной строке IP роутера — 192.168.31.1. Остальные значения оставляем как есть — и жмем кнопку «Open».

Откроется новое диалоговое окно, где нас сначала попросят ввести логин и пароль от роутера — вспоминаем ту информацию, которую мы получили в своем аккаунте на сайте Xiaomi. Логин — «root»

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

Далее вбиваем команду «cd /tmp » — чтобы попасть в папку с временными файлами роутера.
После этого даем команду «wget ССЫЛКА_НА_ФАЙЛ_ИЗ_ПРОГРАММЫ_HFS.EXE «. В моем случае она выглядит как «wget http://192.168.151.1/PandoraBox.bin»

Дальше надо определить, куда именно в вашем конкретно устройстве установить прошивку. Делается это командой «cat /proc/mtd «. После нее появится список, в котором нужно найти одно из значений — «firmware», «OS1» или «FirmwareStub». Будет именно одно из них, которое мы употребим. Мне выпало «OS1»

Теперь выполняем команду, которая прошьет наш роутер на версию от Pandora:

mtd -r write /tmp/PandoraBox.bin OS1

Вместо OS1, как вы поняли, у вас может быть firmware или FirmwareStub

Роутер начнет прошиваться, после чего перезагрузится.

Прошивка Xiaomi от Asus (Padavan)

Теперь, когда Пандора накатилась, запускаем опять HFS.EXE и аналогично добавляем в нее файл прошивки Asus — тот который скачивали в самом начале с репозитория RouterClub.

Скачали. Теперь перезапускаем еще раз программу PUTTY.EXE и подключаемся снова к роутеру, теперь по новому IP, который задан в новой прошивке — 192.168.1.1

Здесь нам надо заново авторизоваться, для этого используем логин «root», пароль «admin».
Далее опять заходим в каталог командой «cd /tmp » и заливаем в него файл прошивки от Padavan — Asus — «wget http://192.168.1.151/НАЗВАНИЕ_ФАЙЛА.trx » — ссылку опять же берем из проги HFS.

После этого накатываем прошивку командой «mtd -r write /tmp/НАЗВАНИЕ_ФАЙЛА.trx firmware » — обратите внимание, здесь уже используем в конце именно команду «firmware»

И ждем перезагрузки роутера, после которой в браузере набираем его IP — 192.168.1.1, по которому попадем в админку. Для авторизации используем пару логин-пароль admin-admin. Для подключения к роутеру по WiFi к сети «Роутер Клуб» используйте пароль «1234567890».

Наградой наших долгих трудов будет новая админка с множеством дополнительных возможностей, который не было в стоковой прошивке. Например, теперь будет доступна функция подключения мобильных модемов и раздача гостевой wifi сети на частоте 5 ГГц, и это только самый-самый минимум произошедших изменений.

Надеюсь, у вас тоже все получилось!

Для большей наглядности привожу два видео руководства, которые пошагово показывают весь процесс. Кстати, установка прошивки Podovan на Xiaomi Mi Wi-Fi Router 3 и 3G имеет отличия от Mini — обратите на это внимание!

Padavan для Mi Router 3/3G

Для Xiaomi Mini

Как Вернуть Официальную Прошивку На Роутер Xiaomi Mi Router 3?

Я достаточно долго пользовался роутером Xiaomi на разных прошивках, но для многих читателей блога процесс установки сторонней версии ПО слишком сложен, поэтому чаще мне все-таки задают вопросы про то, как работать с роутерами Xiaomi в обычной официальной версии админки. Поэтому я решил вернуть все обратно и откатить устройство до оригинальной китайской версии, чтоб создать серию статей про настройку роутера, что называется, «из коробки».

Разумеется, я поделюсь с вами своим опытом, как откатиться с кастомной прошивки до официальной Xiaomi.
Итак, для начала идем на для роутеров Xiaomi. Здесь тоже будет все по-китайски, поэтому в последний раз воспользуемся браузерным переводчиком, встроенным в Google Chrome.

После того, как страница будет читабельной, переключаемся на вкладку «ROM», чтобы появился список маршрутизаторов, на которые имеется прошивка.
Находим в нем свою модель и скачиваем любую из двух представленных версий ПО — Стабильную или Девелоперскую

Файл будет иметь какое-то название — мы его переименовываем в

После чего скидываем на нее файл прошивки miwifi.bin — в самый корень и чтоб больше ничего на ней не было.

  • отсоединяем роутер от кабеля питания
  • вставляем флешку в его USB порт
  • зажимаем булавкой кнопку Reset
  • и одновременно с зажатой кнопкой подключаем шнур питания обратно
  • через 5-10 секунд, когда замигает оранжевая лампочка, отпускаем кнопку сброса

Логин: admin, пароль: admin. Попадаем на главную страницу административной панели.

Как видите, все выглядит крайне симпатично. Нажав на значки по центру экрана можно узнать о состоянии Интернет, состоянии беспроводной сети. о подключенных клиентах и используемом накопителе. Также есть возможность быстро поменять требуемые параметры- настроить подключение к сети Интернет, изменить настройки беспроводной сети, заблокировать определенных пользователей и настроить доступ к накопителю.

Служит для настройки доступа к роутеру и накопителю из внешней сети, даже если у вас динамический ip-адрес. Настройка до безобразия проста, останавливаться не будем.

VPN сервер и VPN клиент

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

Статистика трафика по всем интерфейсам в режиме реального времени.

Системные ресурсы.

Статистика нагрузки на ЦП и оперативную память в реальном времени.

Дополнительные настройки.

Самая информативная вкладка. В одном окне перечислены все оставшиеся разделы настроек.

Настройка беспроводной сети 2.4.Ghz. Можно настроить основные параметры, открыть гостевой доступ, подключиться используя технологию расширения покрытия беспроводной сети (WDS), запретить определенным клиентам доступ по MAC, настроить дополнительные параметры авторизации через сервер RADIUS и (вкладка “Профессионально”) увидеть множество непонятных параметров тонкой настройки сети, которые лучше не трогать)))))

Беспроводная – 5.Ghz

Настройка беспроводной сети 5 Ghz. Все настройки аналогичны настройкам 2, 4 Ghz.

LAN – IP-адрес LAN

Что у нас здесь? Изменение локального ip-адреса маршрутизатора, настройка DHCP-сервера, правила маршрутизации, настройка multicast и IPTV, настройка физических WAN и LAN Ethernet портов встроенного свитча; включение компьютера в локальной сети, используя Wake-on-LAN.

WAN – Интернет-соединение

Здесь можно настроить интернет-соединение, настроbть интернет-подключение для протокола IPv6, настроить переадресацию портов, использовать DMZ и DDNS

Брандмауэр

Огромное количество настроек брандмауэра. Даже не вижу смысла их рассматривать, большинство пользователей даже не зайдет в этот раздел. Возможно, многим будет полезна фильтрация URL (можно отключить доступ к определенному сайте на уровне роутера)

Настройки USb-накопителей, торрент-клиента, медиа-сервера, FTP, подключение USB-модема и принтера для общего использования.

Лучшие статьи по теме