sitelogo

By

Ставим OpenWRT на DIR320/NRU

Наконец, нашелся человек, который смог портировать прошивку OpenWRT на этот роутер (https://code.google.com/p/openwrt-on-dir-320-b1/). Без OpenWRT данный роутер лично для меня неинтересен и провалялся в шкафу долгое время в ожидании нормальной прошивки.

OpenWRT является сторонней, но универсальной и более продвинутой прошивкой, по сравнению со многими другими, поставляемыми производителем по умолчанию. Если сравнивать ее с прошивкой от D-Link, то возможностей у ней как минимум раза в два больше, а безопасность и стабильность зачастую выше. Если Вы еще не пробовали ее, то рекомендую попробовать. Стоит только перечислить функционал, который появится при переходе от прошивки D-Link к OpenWRT: SSH доступ, подключение флеш карт и жестких дисков большого объема с практически любыми файловыми системами, лучшая поддержка модемов EDGE\3G\4G, и конечно возможность устанавливать дополнительные пакеты прямо во внутреннюю флеш память, что позволяет расширить функционал настолько, насколько хватит ресурсов этого устройства. Роутер с OpenWRT успешно раздает интернет даже с подключенного по USB мобильного телефона.

К слову о ресурсах, их у роутера DIR320/NRU не так много (8MB Flash, 32MB RAM, 300MHZ MIPS CPU). Однако, для стандартного набора функций «торрент качок + wifi шаринг» этого достаточно. Так как ревизия B1 собрана совершенно на другом чипсете RT5350 (общим со старой моделью DIR320 можно найти только корпус), энергопотребление и нагрев этого роутера очень небольшие. Роутер не рассчитан на подключение множества девайсов через USB порт. Как правило, он будет глючить при подключении одновременно жесткого диска и 3G модема через пассивный USB хаб без внешнего питания.

Схемотехнические доработки

Фотография платы роутера представлена ниже. Роутер можно «разогнать» для подключения большего количества USB устройств двумя способами: покупкой USB хаба с внешним питанием или закорачиванием двух резисторов\дросселей на печатной плате перемычками из проволоки, как показано на рисунке. Кому как понравится.

dir-320nru_pcb

USB 3G модемы в режиме EDGE могут создавать помехи, которые будут вызывать глюки других устройств вроде USB HDD или самого роутера, поэтому их желательно подключать через USB удлиннитель и убирать подальше.

Установка OpenWRT

Устанавливается прошивка из специального аварийного режима роутера (как войти и установить, есть на странице http://wiki.openwrt.org/toh/d-link/dir-320_revb1). По-русски: выключаем роутер, зажимаем спичкой кнопку Reset и держим. Включаем питание, ждем 10-15 морганий индикатора питания роутера и отпускаем спичку. Роутер запустится в аварийном режиме, в котором отключены блокировки роутера на загрузку сторонних прошивок. Компьютеру присваиваем адрес 192.168.0.2, подключаем к роутеру кабелем в порт LAN. Заходим в браузере на 192.168.0.1, и загружаем прошивку. По указанной выше ссылке имеются прошивки AA и BB — это версии Attitude Adjustment (стабильная) и Barrier Breaker (тестовая), соответственно ставить лучше AA. Есть версии со встроенными mpcs, oscam, если этот софт не нужен, лучше ставить обычную прошивку std.

Начальная настройка и внутреннее устройство прошивки

OpenWRT имеет веб интерфейс для настроки роутера + SSH доступ с терминалом Linux для продвинутых пользователей. Поэтому, прошивка очень похожа на стандартную от производителя, но имеет гораздо больше настроек и возможностей. После перепрошивки роутера, нужно поменять адрес сетевой карты на 192.168.1.2 (к примеру), или установить DHCP клиент на этот интерфейс (получать сетевой адрес автоматически в Windows). Когда роутер загрузится (индикатор питания перестает мигать), можно зайти на страницу управления роутером (веб интерфейс) по адресу 192.168.1.1.

При первом посещении страницы, роутер попросит Вас установить пароль администратора, что нужно обязательно сделать. После установки пароля, Вы сможете заходить на роутер с этим паролем по SSH. Можно переключить язык на русский, если Вам так удобнее в меню «System->system->Language and style», правда в данной статье подразумевается работа с английским языком. Это и есть вся начальная настройка, далее настройки делаются в зависимости от того, что мы будем подключать к этому роутеру

OpenWRT разметка диска состоит из двух разделов — squashfs и jffs2. Squashfs представляет по сути сжатый архив, эта ФС работает только в режиме чтения. Если компилировать прошивку самому и заранее включить пакеты в этот раздел, то свободного места будет больше. Так как это дело трудозатратное, лучше скачать готовую прошивку, а софт ставить на второй раздел jffs2, который имеет размер всего лишь 1 с лишним мегабайт. Нужно заранее определиться, какие пакеты будете ставить, т.к. вычистить место удалением старых пакетов непросто — остаются зависимости и прочий мусор.

Имеется возможность сохранения конфигурации. Это понадобится для того, чтобы не переустанавливать все пакеты после апгрейда прошивки и не перенастраивать роутер. Правда, иногда не все настройки могут быть перенесены, желательно не менять прошивку AA на BB, так как они сильно различаются.

Подключение интернета

Роутер поддерживает массу вариантов подкючения интернета:

1) Через кабель в порту Internet (WAN). Используются различные интернет протоколы для доступа в интернет: статический адрес, DHCP клиент, PPTP, PPPoE, L2TP, и прочие, которые и мне не доводилось использовать. Этот вариант настройки зависит от параметров Вашего подключения к провайдеру и инструкция к подключению должна быть предоставлена провайдером в договоре о предоставлении услуг.

2) Беспроводной доступ по UMTS(3G)/GPRS/EDGE//4G. В этом случае нужно подключить модем или телефон через USB в роутер и создать интерфейс для подключения, указав точку доступа, логин и пароль.

В любом случае, нужно создавать новый интерфейс в меню Network->Interfaces. Пример настройки для 3G модема МТС ниже:

2013-06-30-143259_1920x1080_scrot

Важно! OpenWRT имеет довольно неплохой фаервол, позволяющий повысить безопасность и настроить правила. Не забудьте назначить новому интерфейсу его группу, интернет подключения должны находиться в группе WAN, а локальные интерфейсы (Ethernet и Wifi) в группе LAN, иначе работать не будет.

Подключение клиентских ПК и рекомендации по увеличению безопасности

Подключаются ПК через свитч LAN кабелем или же через WiFi. При подключении кабелем взломать Вас никто не сможет, а вот для WiFi нужно обязательно использовать шифрование. В настоящее время популярна тема про взлом WiFi сетей, так как большинство используемых протоколов шифрования взламываются перебором паролей или через найденные уязвимости. Единственным протоколом, который может защитить от взлома является WPA2+AES, остальные протоколы типа WEP сейчас приравниваются к открытым сетям для тех, кто в теме. Сети с защитой WPA2+AES тоже ломаются с помощью перебора, но для того чтобы взломать сложный пароль из 6 символов (это минимальный размер пароля), требуется очень много времени, конечно если пароль не представляет собой словарную фразу типа Elizaveta или 111111. Пароль должен быть как можно длиннее и содержать символы малых, больших букв, цифр и знаков сразу. Такой пароль сломать будет неимоверно трудно обычными средствами.

Есть также протокол WPS, позволяющий подключать клиентские ПК к защищенным сетям автоматически. Этот протокол ломается за 1-2 дня с помощью перебора, если не предусмотрено мер по сдерживанию атак по перебору. Заметим, что WPS включен по-умолчанию на прошивках от производителей, поэтому такой роутер взломать не составит труда с помощью программы Reaver. Конечно, со временем производители стали вводить такие меры, как максимальное число попыток или задержку между подключениями. Лучше не использовать WPS вообще.

Шаринг файлов (сетевой диск)
Для подключения к роутеру наиболее стабильно работающей файловой системой является ext3. Прочие ФС могут быть более требовательны к ресурсам и будут вызывать проблемы при интенсивной работе вроде зависания роутера с последующей перезагрузкой.

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

Необходимые пакеты: samba36-server, luci-app-samba.

Как настроить:
1.) Сервер: после установки пакетов и перезагрузки заходим в Web интерфейсе на страницу System/Mount Points. Там находим точку монтирования жесткого диска для шары, обычно она будет по пути /mnt/sdb1. Проверить содержимое диска можно, выполнив команду ls -l /mnt/sdb1 через SSH. На странице Services/Network Shares добавляем эту точку монтирования:
2013-06-12-164358_1024x600_scrot
В качестве владельца и группы файлов удобно использовать nobody/nogroup, т.к. информация о владельце всеравно будет утеряна на клиентских машинах под гостевым доступом.

2.) Клиенты.
Пример записи в fstab на клиентских машинах Linux:

1
192.168.1.1:/remote /mnt/remote cifs guest,rw,uid=user,gid=group,cache=none 0 0

Вместо user ставим своего пользователя, выполняем mount -a. Чтобы удаленная ФС стала доступна сразу нескольким локальным пользователям, другого пользователя можно добавить в группу (adduser  user group).
В Windows шара появится в сетевом окружении автоматически.

Торрент качалка
Нужно использовать клиент Transmission, т.к. пока ему нет альтернатив.

Необходимые пакеты: transmission-daemon, transmission-remote, luci-app-transmission.

Как настроить: после установки и перезагрузки заходим на страницу Services/Transmission и настраиваем торрент сервер. Для разрешения удаленного доступа, нужно настроить доступ по RPC:

2013-06-12-171311_1024x600_scrot

На клиентской машине с Linux (Debian) следует установить пакет «transgui»:

2013-06-12-172031_1024x600_scrot

Что еще не забыть сделать
Создайте на внешнем диске swap файл, и добавьте в автозагрузку роутера:

1
2
:~$ swapon /mnt/sdb1/swapfile
:~$ wifi

Первая строчка активирует своп файл, вторая поднимает Wifi, если он автоматически не включается после перезагрузки. Когда настраиваете новые сервисы, не забудьте разрешить их на странице System/Startup.



37 Responses to Ставим OpenWRT на DIR320/NRU

  1. Дмитрий пишет:

    Здравствуйте! А Вы можете рассказать о том, как сделать первоначальную настройку OpenWRT: поднять 3G, поднять Wi-Fi, рассказать о настройках безопасности… и т.д.?
    Заранее Вам благодарен.

    • viron пишет:

      Ладно, в ближайшее время добавлю в статью информацию об этом.
      Спасибо.

  2. Сергей пишет:

    Присоединяюсь к просьбе Дмитрия :)

    • viron пишет:

      Статья планировалась как описание доработок конкретно Dir320/NRU для работы под OpenWRT, а не как общая документация. То, что просил Дмитрий уже добавлено в статью.

  3. Максим пишет:

    на самом деле эти 2 резистора воткнуты специально для предотвращения «перегруза» и выхода из строя блока питания, то что на нем написано 5В 2А можно забыть, стоковый блок питания длительно (круглосуточно) и надежно может отдавать около 1,1А. Блоки питания — это вообще больная тема железок D-Link’а

    • viron пишет:

      Импульсные БП и так должны иметь защиту от перегруза. Иначе замкни выход DLink’овского БП и его можно будет выбросить в ведро. Резисторы тут стоят вместо плавких предохранителей на самый аварийный случай (распространенный китайский метод сэкономить). Если беспокоитесь о ТБ, можете не делать перемычки слишком толстыми. Или купить USB хаб с дополнительным БП. Лично у меня проблем со стоковым не было, работал нормально и с повышенной нагрузкой. Небольшой разгон, так сказать :)
      http://forum.easyelectronics.ru/viewtopic.php?f=14&t=6732

  4. Максим пишет:

    А вот в этом то как раз и вся фишка D-Link’овских инженеров — там действительно должны стоять предохранители, однако по их замыслу слишком «жрущая» железка должна заглючить и пользователь не будет ее использовать :) хаб с внешним БП — отличный вариант, хотя и несколько неудобный

    • viron пишет:

      В том и смысл статьи, чтобы длинковские инженеры немного обломались со своими замыслами. Железку можно заставить делать больше, чем ее заставили делать по умолчанию, при этом не докупая никаких комплектующих. Конечно, ковыряться с железкой, которая стоит не дороже рубашки — вариант не для каждого. Многим и правда проще будет сходить в магазин и купить хаб с питанием. Но так не интересно.

  5. Андрей пишет:

    Добрый день! Скажите, после установки этой прошивки будет ли работать роутер с модемом от МТС 4G? И где скачать дистрибутив данной прошивки?

    • viron пишет:

      Поддержка 4G есть насколько помню, конкретные модемы могут не поддерживаться. Zyxel keenetic попробуйте еще, если не попрет.

  6. Qwaker пишет:

    Вообще искал как собрать OpenWrt прошиву для своего DIR`а, но ваша статья тоже заинтересовала(тем паче, что есть ссыла на интересующую меня инфу), особенно порадовала фича для питалова. Спасибо за труд.

  7. Вячеслав пишет:

    Подскажите, на данной прошивке есть возможность настройки VLAN (IEEE 802.1q) и настройки UDP Proxy?

  8. ansid пишет:

    Зашел в аварийный режим, выбираю файл openwrt-AA-oscam-12.06.2013.bin — говорит, что файл еррор :(

    • viron пишет:

      У Dir-320 есть много ревизий, эта прошивка тестировалась только с B1. Может быть, можно откатить версию заводской прошивки или предварительно прошить Keenetic, если уверены, что у вас B1.

  9. Sergei пишет:

    интересная статейка, у меня был дир 320 старый, работал с шарингом после установки в нем ком порта, в дир 320 НРУ это реально сделать? Нигде не могу найти информации на счет этого.

    • viron пишет:

      Есть по ссылкам выше специальные сборки mpcs и oscam, думаю, mpcs специально предназначена для кардшаринга. Не тестировал.

      Наверное, нужно будет разбираться, как прикрутить COM порт. Есть USB-COM преобразователи, драйверы для которых есть в Linux по умолчанию. Может быть, нужно будет перекомпилировать прошивку из исходников, активировав нужные драйверы в конфиге ядра. Ещё где-то внутри на плате есть нераспаянные площадки дебажного UART’а.

  10. Andy_A пишет:

    Здравствуйте. После установки альтер-прошивки перестало работать IP-TV. Читал где-то, что прошива не пускает… как же это называлось… кажется «широкополосные пакеты» (или что-то в этом роде…) Возможно ли доступным образом это исправить?

    • viron пишет:

      Здравствуйте, это называется Multicast, он включается в настройках.

      • Andy_A пишет:

        Multicast… Боюсь показаться блондином, но где это?… Каждый пункт пересмотрел…

        • viron пишет:

          Боюсь показаться блондином, но сам IPTV под OpenWRT не настраивал. Действительно, видимо в OpenWRT из коробки из веб-интерфейса это не настраивается. Гугл показывает, что придется покрасноглазить для этого: http://defblog.tk/2013/08/31/nastroyka-udpxy-v-openwrt/, http://habrahabr.ru/post/138735/. В родных прошивках помню просто ставится галочка и может ещё некоторые настройки есть.

          • Andy_A пишет:

            К сожалению, то что там описано для меня (по большей части) лишь набор слов, например: «…подключены к роутеру по ssh под рутом…» :)
            К тому же ещё сплошь скрипты и коммандная строка…
            Так что, надежда только на специалистов… то есть — на вас.

  11. XuMePa пишет:

    А можно по подробнее про то главу — «Что еще не забыть сделать»
    Зашел я по SSH и вижу — root@OpenWrt:~$
    Где мне искать файл автозагрузки?
    Его название? Положение?
    И желательно название программы, которой редактировать удобнее?

    • viron пишет:

      Попробуйте добавить команды в файл /etc/rc.local. Вроде бы, я даже где-то видел специальный раздел в веб интерфейсе, куда можно прописать нужные команды.

  12. Валентин пишет:

    Уважаемый viron, после перезагрузки роутера не могу зайти в веб-интерфейс LuCi по адресу 192.168.1.1, пишет это «Response Error. Technical description:
    502 Bad Gateway — Response Error, a bad response was received from another proxy server or the destination origin server.» Как быть? Прошивать заново?

    • viron пишет:

      Прошейте, и с другого браузера\компа попробуйте. Питание раньше времени при прошивке не отключаете? А то так роутер вообще можно в кирпич превратить.

  13. Игорь пишет:

    А есть ли возможность как-то добавить в прошивку драйвер своего 4G модема (мегафон m100-4) Жалко роутер выбрасывать, а нигде не могу найти как это делается.

    • viron пишет:

      http://cyber-place.ru/showthread.php?t=1064
      Вот, например. В последнем сообщении на первой странице человек поднял Huawei E3272 под OpenWRT. Видимо, модем хитрый и сам создает виртуальный сетевой интерфейс в системе (сам работает как роутер). Нужно сделать, чтобы адреса локальной сети модема и OpenWRT не пересекались и поставить модули ядра, перечисленные в топике. Если у модема 192.168.0.1, то OpenWRT придется перенастроить на 192.168.60.1, к примеру. Затем в OpenWRT настраивается WAN соединение, которое будет ходить в интернет через шлюз модема (192.168.0.1). Веб морда модема также будет доступна на 192.168.0.1.

  14. Nik пишет:

    Скажите где скачать прошивку? для дир 320 нру

  15. Евгений пишет:

    Уважаемые специалисты помогите с такой проблемой: имеется роутер asus wl-500gp v1 прошит в OpenWRT ядро 3.3.8 хочу по USB подключить WIFI адаптер ALFA awus036h для работы следующим образом — прием сигнала на адаптер, отдача роутером по LAN порту (или WIFI). Помогите настроить эту связку.

  16. Juretsky пишет:

    Добрый день!
    Успешно прошил OpenWRT на dir-320nru, 3g-модем huawei e173 тоже удалось запустить. Теперь есть интернет по wi-fi, но нет по LAN — где порыться?

  17. Мюзицио пишет:

    Здравствуйте. Я прошил свой dlink dir 320 nru вашей прошивкой. Но он видит интернет. От провайдера идет adsl, через adsl-модем Huawei. Как правильно настроить интернет в вашей прошивке?

  18. Eduard пишет:

    Здравствуйте! Возможно ли подключить МФУ Canon i-sensys MF211 по USB к DIR-320nru/B1,под OpenWRT, принимая wi-fi от другого роутера? Схема: Ноут — LAN — asus RTn12e — WI-FI — Dir320 — USB — МФУ

    • viron пишет:

      Добрый день. Нужно смотреть, хватит ли места на Dir320 под пакет принт сервера cups, насколько принтер с линуксом дружит вообще. Если сможете настроить принтер, чтобы он определялся роутером, то подцепите по WiFi в Dumb AP режиме: https://wiki.openwrt.org/doc/recipes/dumbap. Иначе порты пробрасывать замучаетесь. Возможно придется железку помощнее найти, если места не хватит.

  19. Артем пишет:

    прошил роутер этой прошивкой, и теперь после перезагрузки роутера wi-fi отключается,приходится с компьютера заходить в веб-интерфейс и включать его, что сделать,чтоб автоматически включался?

    • Леонид пишет:

      В разделе Система — >Загрузка (System -> Startup) нужно прокрутить страничку вниз до раздела Локальная загрузка где ПЕРЕД строчкой
      exit 0
      добавить строчку
      uci set wireless.@wifi-device[0].disabled=0; uci commit wireless; wifi

Добавить комментарий

Ваш e-mail не будет опубликован.