Добрый вечер, день или что там у нас сейчас.
Вступление.
Так уж получилось, что любая технически сложная вещь, будь то компьютер, ноутбук, смартфон или роутер редко устраивает меня своей работой из коробки. Причиной тому чаще не железо, а именно программная часть, созданная производителем этой техники. Зуд во всех местах начинает стимулировать поиски нужной информации и софта. Благо энтузиастов на просторах интернета предостаточно, осталось только с умом применить их опыт, чего я особо не стесняюсь. За годы моих изысканий я "сносил" (в смысле как носки) несколько роутеров. ZyXEL P660HTW2 EE давно пылится бесхозным, поскольку ADSL уже ну совсем не актуален. Даже не знаю, какие операторы сейчас предлагают доступ по этой технологии. Хотя аппарат сам по себе очень крутой для своего времени. Netgear WGR614 v.9 также пылится, поскольку в стоке он не имеет поддержки L2TP. Пришлось отказаться еще в далеком 2010 году по причине перехода на L2TP Пчелайн. Не сбагрил его и не продал, так как он полюбился мне своей абсолютной безглючностью и скоростью работы. Далее пошла череда экспериментов. Это был сознательный выбор моделей, которые будут 100% подвергаться модификации софта, а именно Asus RT-N16 и парочка TP-Link TL-WR1043ND. Оба весьма производительны по железу, поскольку мне требовалось, чтобы аппарат тащил хорошую скорость и IPTV. Плюс эксперименты с поднятием всяких плюшек вроде Samba и торрент-клиента. То ли техника не сильно надежна, то ли эсперименты были через чур суровы, последние три роутера умерли своей смертью. Про Asus известно, что по причине мощного процессора и плохо организованного охлаждения, со временем он закипает. Накатить обратно уплывший чип — это отдельная история. TP-Linkи просто умирали без видимых причин. Таким образом не так давно я подошел к необходимости покупки нового зверя.
Новые линейки последних озвученных производителей еще мало были изучены энтузиастами, да и не хотелось новых граблей. D-Link и многочисленные новые китайские бренды в принципе не рассматривал. А в душе ностальгия по старенькому, дешевому и беспроблемному Netgear. Ну что ж, сказано — сделано. Изучив спецификации, вскоре принес домой это:


Спецификация:
Feature v1
CPU Atheros AR9344 560 MHz
RAM 128 MB
Flash 128 MB
Switch Atheros AR8327
Radios (2.4/5 GHz) Atheros AR9344 / Atheros AR9580
Max TX Power (2.4/5 GHz) 26 dBm / 24 dBm
Не дурно, правда? Процессор и оперативная память прям как у Pentium 3 когда-то… Все остальное традиционно для Netgear: достойное качество сборки, глянцевый пластик корпуса, неуродливый дизайн и нога для установки в вертикальном положении. Порадовало, что аппарат в отличие от конкурентов имел приличный блок питания на 2,5 Ампера, что сулило беспроблемное подключение внешних жестких дисков. Не в пример почившим с их 1,25-1,5А блоками. Известно, что шина USB 2.0 способна отдавать 0,5А тока. При этом мало какие даже современные 2,5 inch. жесткие диски укладываются в этот лимит. Понятно, что блок расчитан на пределе до каждого миллиметра провода, но зачем тогда анонсировать USB для подключения внешних носителей, если аппарату не будет хватать питания? Еще из достоинств отмечу гигабитный свитч. На сегодняшний день существует также вторая ревизия железа для этой модели, там еще более выдающиеся характеристики.
Включив аппарат, по опыту с WGR614, я ожидал беспроблемной эксплуатации на стоковом ПО. На тот момент эксперименты все ж немного утомили. Но меня ожидало разочарование… Прошивка на данном аппарате имела весьма глупый и нелогичный вид, отличалась гадкой скоростью работы и невозможностью активировать некоторые функции. Скажем, задействовать 5GHz в ней было вообще невозможно, вафля просто не включалась. Как собственно и не отключалась 2,4GHz. И даже обновление на имеющийся более свежий релиз ничего не улучшили. Скорее наоборот. Проматерился конечно про себя. Неужели и Netgear? Вот тебе еще один пример, когда тупое убогое заводское ПО неспособно раскрыть потенциал железа.

Краткий анализ кастомных прошивок.
Проектов, созданных и поддерживаемых энтузиастами великое множество. И чем менее известный проект, тем меньше о нем информации. По этому рассматривал основные три:
— Tomato USB
— DD-WRT
— OpenWRT
Tomato — пример очень классно сделанной, продуманной и завершенной работы. Она шустра, красива, функциональна и безглючна. В плане функционала мне очень по душе дерево меню. Логично и удобно. Имеет множество встроенных ништяков. Умничать тут не буду, это просто функционал нормального роутера НЕначального уровня, заменяющий отчасти по функционалу полноценный сервер. Но есть один большой недостаток: поддержка только чипсетов Broadcom. Netgear как известно, традиционно выпускается на чипах Atheros.
С DD-WRT давненько не возился, но пришлось снова вспомнить о ней. В отличие от Tomato, поддерживает как Broadcom, так и Atheros. Сообществом создается масса релизов этой прошивки, помноженная еще на чудовищное количество моделей роутеров, выпускаемых и продаваемых по всему миру. Из минусов этого решения — это нестабильность различных билдов и также как у стока, странная работа отдельных функций, а иногда и полный отказ, сброс настроек конфигурации. Кроме того, прошиваясь в DD-WRT из под оригинальной прошивки, возвращаться таким же путем на сток роутер совершенно не желал. А после пары-тройки попыток еще и прикидывался кирпичом. Читать сотни тикетов по устранению тех или иных багов, написанных сообществом на английском языке — не мой метод. Отказать.
Ну и наконец OpenWRT. Давненько я к ней присматривался издалека, почитывал. Почему? Потому что нельзя так просто… :_))) В общем я не являюсь гиком каким-то и ромоделом. Сам ничего не программирую и не пишу. Поэтому этот проект требовал от меня определенного осмысления. 95% процентов материала также на английском языке, что немного осложняло изучение. Плюс эти прошивки лишь в минимальном числе случаев накатываются, как я и привык, из под заводской прошивки. Не любитель я настраивать TFTP-сервера и консолить сутками. Вместе с тем, продукт добротный, постоянно развивающийся, относительно безглючный и очень гибко расширяемый под разные задачи. Мой новый друг просто не оставил мне других вариантов и пришлось ковыряться. И решения нашлись. К слову, в сети вообще не было найдено мной информации о переходе на OpenWRT на этой модели, так как продукт относительно свежий. Была лишь скудная информация о его родственниках WNDR3700-3800, а также разрозненная информация об установке прошивки на модели других производителей. Как известно, под разные модели роутеров пишутся разные релизы прошивок, по причине отличий в железе и функционале. На момент поиска, на мою модель нашлась только одна в предрелизной ветке Chaos Calmer. Это было в начале года, сейчас есть уже законченная 15.05, а также Barrier Braker 14.07 Вот общая страница загрузки.
OpenWRT и DD-WRT в принципе являются родственными, и даже иногда рекомендуется как безопасный метод — перепрошивка со стока через DD-WRT. Кроме того, есть прошивки с префиксом factory, предназначенные для первичной заливки OpenWRT. Но это все был не мой случай. Тупейшая DD-WRT никак не желала покидать роутер… В какой-то момент я даже думал забить и просто оставить сток. Получить очередной красивый кирпич мне совершенно не улыбало. И решение нашлось:
Возврат стока.
Натужное гугление привело меня на страничку техподдержки Netgear, содержащую ссылку на упрощенный но вполне себе работающий tftp-клиент и инструкцию.

Все успешно прошло, я порадовался ожившему роутеру. Но дурная башка по традиции не дает покоя ногам и я подумал: а почему бы мне не попробовать с использованием этого клиента также залить в него OpenWRT? Об этом вообще ничего и нигде в интернете не сказано. Есть информация о заливке через tftp, но по другим моделям с использованием других клиентов. То, что нетгировский клиент, скачанный на саппорте, может это делать, это приятное и пожалуй мое открытие. Поехали:
— скачиваем нужную прошивку здесь или здесь
Как я уже говорил, это прошивки с префиксом factory для первичного перехода на OpenWRT. После успешной установки и (злобно ЫХЫХЫ!) накатывания GUI на прошивку, нужно будет обновиться до рабочей версии соответственно 15.05 или 14.07
— подключаем роутер к большому брату патч-кордом и назначаем ему статический IP, соответствующий подсети, заданной в текущей прошивке 192.168.1.x
— запускаем клиент, и заполняем пустые поля: Server-IP роутера по умолчанию 192.168.1.1, File-путь к ранее скачанной прошивке factory
— выключаем роутер, далее запускаем его в boot-режиме. Для этого нужно зажать кнопку Reset острым предметом на пузе у роутера на 10 секунд, после подать питание. О переходе в этот режим роутер сообщает изменением цвета индикатора Power на оранжевый.
— сразу после включения жмем Upgrade и ожидаем окончания процесса. В случае успеха роутер должен загрузиться, а цвет индикатора Power снова стать зеленым. Профит.
— можно вернуть настройки IP на большом брате на автоматическое получение
Установка GUI и других необходимых пакетов.
Поскольку OpenWRT создана задротами-линуксоидами, ту самую пресловутую гибкую расширяемость нам с вами предстоит реализовывать ручками. Для этого нам потребуется: программа WinSCP, которую можно взять здесь и собственно пакеты для 15.05 или 14.07. Пакетов множество, нужно будет найти в списках необходимые — об этом ниже. Софтина позволяет получить доступ к файловой системе роутера (как и любого другого сервера), работая при этом в среде обычной Windows. Доступ нам этот необходим, для того чтобы поместить в роутер скачанные пакеты для установки. Почему так сложно? Потому что сразу после после прошивки наш роутер не имеет доступа к интернету для скачивания/обновления пакетов и по-прежнему не имеет GUI.
— устанавливаем и запускаем WinSCP
— настраиваем вход

— здесь жмем "Да"

— далее видим очень удобный интерфейс, напоминающий Total Commander и другие старые добрые файловые менеджеры. Переносим файлы пакетов с расширением *.ipk из панели диска в панель файловой системы роутера перетаскиванием, кнопочкой на панели или по F5. Разместить файлы пакетов можно хоть в корне, хоть в любом другом месте. Дело в том, что после установки файлы пакетов исчезнут.

Далее приступаем к установке пакетов. Для этого нам потребуется еще одна программусина, всем известный консольный клиент PuTTY, берем здесь или русскую версию здесь.
— скачиваем и запускаем PuTTY
— настраиваем вход аналогично с WinSCP

— "Да"

— логинимся, пользователь по умолчанию root, пароль изначально в OpenWRT не задан. При первом входе в GUI вам напомнят о необходимости его завести

— входим

— теперь устанавливаем пакеты в определенном порядке. Дело в том, что применительно к пакетам существует понятие зависимостей. Это означает, что установка необходимого нам пакета xl2tpd требует также установки еще ряда пакетов для поднятия соединения по этому протоколу. По умолчанию, как мы помним, прошивка девственно чиста.
— для этого ручками вводим команду: «opkg install имя_пакета» и устанавливаем по порядку
1. ip
2. resolveip
3. kmod-l2tp
4. kmod-pppol2tp
5. ppp-mod-pppol2tp
6. xl2tpd
Для каждого пакета создаем новую команду. Требуется ввод полного имени с путем к файлу:

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

— устанавливаем GUI LuCI также, как и все пакеты ранее
— перезагружаем роутер командой "reboot"
— закрываем WinSCP и PuTTY
— заходим в GUI роутера, как обычно, используя браузер и IP-адрес 192.168.1.1

— устанавливаем пароль во вкладке System-Administration

На этом все. Установка прошивки, пакетов и графического интерфейса завершена. В следующей записи расскажу о том, как поднять соединение L2TP в этой прошивке.
Теперь абзац, обратный по смыслу вступлению. Не знаю даже, как его обозвать… Просто попробую ответить на вопрос себе и читателю: а зачем я все это написал и почему именно на Drive2.ru? Большинство информации по этой теме очень разрознено и затрагивает преимущественно другие модели роутеров, но не мой. Везде в основном дается описание каких-то отдельных элементов настройки. Здесь я попытался обобщить всю изученную мной информацию в один готовый материал, который надеюсь послужит еще кому-то. Да и мне самому позволит освободить пространство в голове, изложив это "на бумаге", так сказать. Что касается выбора места для поста, мог бы конечно и на тематических форумах это выложить. Но так уж вышло, что я не являюсь читателем таких форумов. А Drive2.ru — он как родной. Здесь интересно и позитивно, приятно делиться опытом и приобретать новый.
До новых встреч. Maximiliene


Комментарии 4
в итоге что получилось, стоила игра свеч?
Да, стоила. Позже уже больше структурированной информации появилось. Роутер в таком варианте работает до сих пор и замены не просит.
а где посмотреть эту информацию?
Загугли open-wrt и модель роутера. Должен найти сайт проекта, часть материалов уже на русском. Если модель ходовая, скорее найдешь ее в списках совместимых. Внимательно с ревизией железа. И действуй по найду.