Xiaomi Mini Wifi Router — мал да удал. Экспресс-обзор и прошивка от Padavan. Прошивка роутера Xiaomi Mini прошивкой Padovan Тонкая настройка прошивки от падавана

Логические

Прошивка Padavan FirmWare для Asus за долгие годы ее существования в определенных кругах стала синонимом залога стабильности в работе wifi роутера. Не многие заводские микропрограммы могут похвастаться удобством настройки и надежностью в функционировании всех заложенных в маршрутизатор возможностей. Далее я покажу наглядно, как установить прошивку Padavan на роутер Асус.

В чем секрет прошивки Padavan?

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

  • Решено множество ошибок и проблем
  • Улучшена стабильность работы
  • Дополнительные программные утилиты, такие как торрент-клиент, менеджер загрузок Aria2, UPnP/DLNA A/V медиасервер и другие
  • Расширены возможности диагностики
  • Доработан механизм IGMP Snooping’а
  • Встроен сервер NFS
  • Добавлен L2TP/OpenVPN сервер
  • Доработаны компоненты IPv6/PPTP/L2TP

Как скачать прошивку Padavan для Asus?

Удивительно, но скачать прошивку от Padavan для роутера Asus RT-N14U, которым я пользуюсь, мне не удалось с официального сайта ее разработчика — сейчас там выложена только версия для RT-N56U, хотя раньше, помнится, там можно было найти для очень большого количества моделей. Но немного погуглив, мне удалось найти один репозиторий , где лежала прошивка Padavan для Asus RT-N14U — надеюсь, что когда вы будете читать эту статью, ссылка еще будет актуальной, ибо сами знаете, в нашем мире все быстро меняется…


Находим свою модель и скачиваем к себе на компютер последний актуальный выпуск по порядковому номеру — обратите внимание, что файл прошивки для Asus должен заканчиваться на.TRX. Также я обнаружил, что тут есть несколько вариантов исполнения — для полного обновления выбирайте «FULL».

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

Далее заходим в раздел «Беспроводная 2.4 ГГц» (а у кого-то возможно будет доступна для настройки и сеть 5 ГГц, если роутер двухдиапазонный). Здесь активируем пункт «Включить радиомодуль», задаем SSID сети, то есть ее название, и ключ «WPA», то есть пароль для подключения.


Сохраняются настройки прошивки Padavan кнопкой «Применить»

Видео обзор прошивки 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

Недавно приобрел отличный роутер Xiaomi Mini. За свои 25$ он имеет процессор с тактовой частотой 600МГц и 128Мб оперативной памяти, порт USB 2.0, два lan порта, 2.4 и 5ГГц Wifi.
Если кратко, то за эти деньги это лучший роутер на данный момент.

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

В сети предлагают две прошивки для этого роутера.
1 - PandoraBox. Это модифицированный openwrt, это хорошо для тех, кто понимает что делает, имеет опыт работы с Linux и хочет поработать напильником.
2 - Модифицированная прошивка ASUS от Padovan. Тут все намного проще и дружелюбнее пользователю, но отдельно пакеты не поставишь.

Я решил прошиться прощивкой от Padovan. По странным причинам эту прошивку запрещено распространять в собранном виде. Поэтому придеться собрать самому. Для этого есть bash скрипт - PROMETHEUS.

Итак, включаем роутер (лучше подключить его к старому роутеру, чтобы точно подключиться к интернету, это обязательное условие окончания настройки) и настраиваем при помощи приложения Xiaomi или через браузер по адресу 192.168.31.1 .

После этого регистрируем аккаунт Xiaomi. Лучше делайте это через facebook, на почту письма мне так и не пришли.

Стоковая прошивка Xiaomi Mini не позволяет подключиться к роутеру по SSH. Это можно исправить путем обновления на прошивку для разработчиков.
Переходим на сайт Xiaomi и скачиваем прошивку тут http://www1.miwifi.com/miwifi_download.html . Не забывайте переключиться на вкладку ROM.

Если у Вас китайский интерфейс, можете ориентироваться по скринам или же установить Chrome (он все переведет).

Во время прошивки роутер перезагрузится и будет мигать оранжевым светодиодом, по окончании загорится синий.
Теперь разблокируем ssh. Переходим суда https://d.miwifi.com/rom/ssh и качаем файл miwifi_ssh.bin

Тут же запоминаем пароль root.
Кладем прошивку на флещку (лучше меньшего объема), вставляем в выключенный роутер, зажимаем чем-то тонким кнопку Reset и включаем, ждем пока оранжевый светодиод не начнет моргать, можно отпускать. Ждем пока не загорится синим. Готово.
Теперь берем ssh клиент, например Putty (если у Вас Linux то вообще ничего не нужно).
Пробуем подключиться по адресу роутера.

Ssh [email protected]

Теперь нужно собрать прошивку. Для этого нужен дебиан подобный linux. Я делал на ubuntu. Если у Вас нет под рукой линукса, сойдет виртуальная машина.

Для начала работы со скриптом PROMETHEUS выполните такие команды.

Wget -O start.sh http://prometheus.freize.net/script/start-99.sh chmod +x start.sh ./start.sh

Скрипт установит нужные для сборки пакеты и закачает исходники прошивки.

Собирать будем со стандартным конфигом. Если с трудом понимаете, что происходит, лучше делайте также.
PROMETHEUS управляется нажатием клавиш.
После окончания загрузки исходников, скрипт предложит выбрать конфиг, выбираем mi-mini (у меня 1).
Сначала собираем компилятор и набор утилит для сборки прошивки (toolchain) - нажимаем 3.
Курим.
Теперь собираем саму прошивку - firmware. У меня клавиша 4 затем 3 (Собрать firware).
Курим.
Жмем Прошить firmware (4). Тут нужно настроить подключение по ssh. Указываем логин и пароль, которые запомнили при скачивании прошивки с сайта xiaomi.

Альтернативные заводским прошивки для роутеров были, есть и будут популярны всегда. Особенно когда фирменное программное обеспечение от производителя имеет изъяны и недоработки.
Один из ярких примеров прошивка от Падавана для Asus и Xiaomi. Она более функциональна, чем фирменный софт, более стабильна и надежна, за что и имеет тысячи поклонников по всему миру.
В этой инструкции я хочу подробно остановиться на том, как настроить телевидение IPTV на ппрошивке от Падавана.
Тем более, что этот вопрос становиться всё более и более актуальным, так как услуга цифрового телевидения от различных провайдеров всё больше и больше отвоевывает позиции у классического эфирвого ТВ.

Для того, чтобы настроить цифровое ТВ на прошивке Padavan, надо открыть в веб-интерфейс своего роутера и зайти в раздел «WAN», где уже сделаны настройки Интернет-соединения:

Прокручиваем страничку до самого последнего подраздела «Изоляция портов и VLAN фильтрация». У большинства операторов цифрового телевидения (Ростелеком, Билайн, Дом.ру, ТТК) для работы ТВ-приставки надо выделить для неё один из LAN-портов. Он отсоединяется от общей группы и настраивается как-бы параллельно WAN-порту. Делается это просто. Надо в поле «Порт IPTV STB (WAN-мост)» выбрать тот LAN-порт, в который будет включена ТВ-приставка.

В некоторых случаях (такая схема настроена изначально на оборудовании оператора связи) для работы ТВ необходимо указать VLAN ID. Тогда надо сдвинуть переключатель «Фильтрация тегированного VLAN трафика» в положение «Вкл.»

Ниже появятся дополнительные поля для ввода VLAN на Интернет или цифровое ТВ. Как правило, чаще всего на Интернет указывать VLANID не нужно. А вот для ТВ в поле «VID» вводим идентификатор, который предварительно узнали в технической поддержке. В поле «PRIO» желательно указать приоритет 4 или 5.

На этом обычно настройки IPTV на прошивке Падаван у роутеров ASUS и Xiaomi завершены и можно подключать ТВ-приставку. Если вдруг меню загружается, список каналов загружается, но каналы не показывают, попробуйте включить дополнительно «IGMP Snooping». Делается это в разделе LAN >> IPTV :

Находим строчку «Включить Multicast маршрутизацию» и сдвигаем ползунок в положение «Вкл.» Ниже есть ещё раздел «Multicast трафик — Ethernet свитч», а в нём строчка «Включить IGMP Snooping». В ней тоже надо сдвинуть ползунок в положение «Вкл.» Нажимаем кнопку «Применить».

Если ТВ-приставка не может получить IP-адрес- попробуйте зайти в раздел LAN >> Маршруты :

Сдвиньте в положение «Вкл.» ползунок «Использовать маршруты DHCP». Нажмите кнопку «Применить».


Всем привет, сегодня на обзоре купальник снова роутер:) Но необычный. Начнём с того, что роутер этот за пределами рынка Китая не продаётся и я буквально заставил магазин добавить его в ассортимент. Что же в нём такого особенного? Прежде всего, меня покорил его внешний вид. Далее, в описании он значился как гигабитный и, судя по скупой информации, добытой с китайских форумов он должен был быть подходящим под требования прошивки «от Падавана». Что же получилось по факту и почему и с какими языковыми барьерами мне пришлось столкнуться - рассказываю под катом, добро пожаловать:)

︎ ДОСЬЕ ◀

● Технология Gee Turbo 2.0 signal core, обещающая увеличение покрытия до 300 метров
● В 3 раза быстрее обычного порошка роутера(wifi), в 10 раз быстрее обычных роутеров(ethernet).
● 3 двухдиапазонных антенны, 2.4GHz 2x2 MIMO, 5GHz 2x2 MIMO
● Двухдиапазонный b/g/n, 802.11 a/n/ac 2.4GHz 2x2 300Mbps, 802.11 a/n/ac 5GHz 2x2 867Mbps
● Гигабитная сеть
● Разъем Micro SD
● USB 2.0
● 1 WAN, 2 LAN

︎ ФОТОГРАФИИ ОТ МАГАЗИНА ◀

Если позволите, сначала я приведу маркетинговые фотографии от производителя/магазина, потом свои собственные.

На мой взгляд, внешний вид глаз радует.
Теперь несколько слайдов с описанием возможностей:

Дополнительная информация

︎ А ЧО ТАК ДОРОГО-ТО?! ◀

Постойте, спросит возмущенный читатель, а почему он такой дорогой, золотой, чтоли? Нет, он не золотой, он из анодированного алюминия, как у айфонов/макбуков. Причем, это не крашенный алюминий, а именно такой сплав, я пробовал попилить пилкой, краска не сходит. Так почему же он такой дорогой? Разберёмся:
Product Weight: 0.538 kg
Package Weight: 0.800 kg
Product Size (L x W x H): 11 x 192.6 x 2.3 cm
Package Size (L x W x H): 13 x 21 x 5 cm
Прежде всего, мы платим за посылку весом 800 грамм. Увы, за красоту приходится расплачиваться. Далее, на роутере имеются LNA(усилители), которые тоже удорожают производство. Ну и гигабит, для него тоже нужны более дорогие чипы и трансфораматоры. Ну и двухдиапазонность, куда без неё. Стоит ли оно того? Попробуем узнать.

Ну да ладно, с этим разобрались, теперь мои собственные фоточки.

︎ СОБСТВЕННЫЕ ФОТОГРАФИИ ◀

Прибыл роутер в такой вот коробочке:


Немного разорвав сбоку упаковку, увидел логотип торговой марки фирмы HiWiFi - «Gee»


Коробка, вид сверху. Гирбест подкинул в коробку дряного качества переходник, но всё равно приятно.


Она же, снизу.


Снял крышку коробки, аккуратно разложены коробочки с мелочевкой, торчат антенны роутера, роутер накрыт инструкцией.


Убираем инструкции.


Переворачиваем:)


Комплект поставки(а патчкорд могли и бы золотой положить!):


Инструкция на китайском




Герой обзора.


Может стоять вертикально(ушек под настенное крепление - не предусмотрено)


Антенны гнутся на 90 градусов и вращаются на 180 градусов.


Подлянка от китайцев - треугольные винты.


Но нет ничего невозможного, шлицевая отвертка с шириной, совпадающей с гранью треугольника справилась.


Антенны не откручиваются.


А вот и плата, всеми нами любимый MT7620:)


Обратная сторона луны платы.


Напрашивающиеся сравнения:
1) смартфон


2) xiaomi 10400


Взвесим:


С подключенной консолькой.

︎ ПРОШИВКА С ЗАВОДА ◀

Примечание: если на скриншотах английский язык - это автопереводчик с китайского в google chrome.

Экран приветствия:


Воткните интернет в роутер


Настройка типа подключения


Предложение воспользоваться китайским чудо-приложением для смартфона:


Установка пароля на админку:




Успех!


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


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




Вообще прошивка интересная, умеет какие-то приложения, но они, по большей части, предназначены для китайского рынка и нам бы всё равно никаких бонусов не дали. Но было и забавное, название очень понравилось:

︎ ВЗЛОМ ◀

Как выяснилось, роутер огорожен по полной программе и просто так прошивку в него не залить. Конечно, с помощью программатора это делается в 10 кликов, но так как не все на муське еще их приобрели, то будем искать народный способ.
Для этого необходимо выучить китайский язык.
Шутка. Но почти необходимо. Для прошивки нужно сменить загрузчик на breed(желательно) и заменить штатную, но разработчики предусмотрели почти всё: прошивка либо скачивается с сервера обновлений, либо заливается через штатный веб-интерфейс, но при этом и загрузчик и прошивка защищены ЭЦП(цифровой подписью) и левяк подсунуть не получается:(Изучая прошивку путём перебора я выявил участок с ЭЦП, но как её подделать, не придумал, вот он:


А вот сама эцп:

Поэтому мы попытаемся включить режим разработчика, режим, в котором доступен ssh на роутер.
Заходим в роутер, регистрируем себе hiwifi-аккаунт, пытаемся включить режим разработчика.



Но чтобы его включить, надо иметь…

Дополнительная информация

КИТАЙСКУЮ СИМКУ!!!


На которую уже упадёт смс с кодом для разблокировки. Где же её взять, да еще для всех мусковчан? И решил я тогда попытать техподдержку. Но техподдержка доступна исключительно через китайскую программу-аналог не то твиттера, не то вайбера, под названием WeChat. Регистрируемся там и пишем в техподдержку HiWiFi(аккаунт: jiluyou)
Пишем телегу:

К чату присоединяется агент техподдержки skylar:
Скажите нам свой мак-адрес и мы разблокируем вам режим разработчика, но слетаете с гарантии. Хаха, с гарантии, дааа.

Прошло немного времени и мне сообщили, что мой аккаунт разработчика активирован.

Следом прилетела инструкция, как включить аккаунт разработчика(человек с мозгами-шестерёнками, это, видимо разработчик):

Далее идём, куда нас послали:






Урааа! Пол дела сделано.
Надеюсь, после моих обзоров, все уже умеют пользоваться ssh?!
Заходим по ssh в роутер, порт 1022, айпи 192.168.199.1, admin/admin:


Мы в системе! Далее готовим usb-флешку с двумя файлами - breed и прошивкой от падавана, которую я подготовил.

Кстати, ребята, я всё-таки решил попробовать запилить сайт по роутерам, назвал его ни много ни мало - :)
Обсудить я предлагаю практически все модели роутеров, прошивки от Padavan, OpenWRT, Zyxel, InvizBox(прошивка для nexx 3020 из коробки умеющая tor, эдакий интернет-презерватив).
Так же там всегда можно найти еженочные свежие сборки прошивок от Padavan, на данный момент поддерживаются следующие роутеры:

HiWiFi 5681
NEXX WT3020
VONETS все 300 мбитные
TCL-T1
И, эксклюзив, альфа-версия прошивки для NEXX WT1520, на данный момент не работает wan и usb, но есть надежды это зачинить.

Итак, мы зашли по ssh, по логин-паролю admin/admin, смотрим как определилась наша флешка:


Ок, sda1.
Создаем директорию для маунт-пойнта:

Монтируем флешку, смотрим, что за файлы на флешке:


Прошиваем загрузчик, вводим буква-в-букву, иначе будет мучительно больно.


Прошиваем прошивку от падавана:


Собственно, всё. Отключаем питание, вынимаем флешку, ждем загрузки. И вот:

︎ ОБЛОМ, ОТКУДА НЕ ЖДАЛИ ◀

И тут меня ожидал некислый такой облом:


ВОУ-ВОУ-ВОУ, какие еще 100мбит, у нас же гигабитный роутер!
Как оказалось, действительно гигабитный роутер, но… С одним гигабитным портом. Се ля ви.
Выпив залпом крепкий алкогольный напиток, задумался. Что же делать? Ну, плохо, конечно, но с другой стороны, если у вас 100мбит-провайдер, то ничего страшного, локалка гигабит, всё хорошо.
Если провайдер даёт интернет на скоростях, превышающих 100 мбит и у вас нет гигабитной локалки, то тоже не всё потеряно. Однако, если у вас и локалка гигабитная и провайдер гигабитный - беда, ищите другой роутер, ждем вала новых устройств осенью на чипе 7621.

︎ В ЧЕМ СИЛА, БРАТ? ◀

Итак, вернусь к мегафишке данного роутера - антенных усилителям. Я сравнил на работе силу сигнала точек, Cisco Wifi за пару килобаксов и данного. Угадайте, у кого сигнал сильнее? Наш сетевик был в шоке и решил взять себе этот девайс:) Роутер лупит ЛЮТО, уж простите за такие выражения. Скриншот с андроид-телефона:
2.4 ГГц :


5ГГц


Тест скорости за натом(IPoE):



По-моему, вполне прилично, в пиках качает на скорости 51 мегабайт в секунду.

︎ ПЛЮСЫ ◀

+ Гигабит(хоть и не совсем честный)
+ Лютая сила wifi-сигнала
+ Внешний вид
+ Альтернативные прошивки
+ Слот для карт памяти(несмотря на то, что я еще не придумал, как впилить это в прошивку)

︎ МИНУСЫ ◀

- Не все порты гигабитные
- Сложноватый способ прошивки
- Цена, из-за тяжелого корпуса роутера и габаритной коробки.

︎ ВЫВОДЫ ◀

Я потратил много времени, уговаривая менеджера добавить роутер, который никто не продавал за пределами рынка китая и очень надеялся на этот роутер. С одной стороны, он доверие оправдал, с другой - есть недочеты.
Но в целом данный роутер мне очень понравился, и, с оговоркой на цену и неполноценную гигабитность(а так же достаточно мудрёный способ отвязки от китайской прошивки), могу его смело рекоммендовать всем(но поставить подальше от головы).

На этом всё, желаю всем хорошего, стабильного интернета и жду всех заинтересованных на роутерклабе;) До новых встреч, друзья!

И да, если Вам помог данный обзор, смело ставьте плюс обзору, это лучшая благодарность.