Default Green Orange
Gemini_13's Blog
Блокнот полезных вещей
Home
    • Карта сайта
    • Обо мне
RSS

DD-WRT: превращаем Dlink DIR-320 в Asus WL-500GP

Железо, Разное Add comments

Один из самых популярных вопросов в инете — «какой беспроводной роутер выбрать для дома?». И чаще всего на него отвечают: ASUS WL-500g Premium. При этом забывают упомянуть, что стоит эта железяка больше $100. Мне это кажется совершенно неоправданным. Более того, можно получить роутер с той же функциональностью и даже построенный на том же чипсете за половину от указанной суммы. Для этого потребуется купить роутер Dlink DIR-320 и воспользоваться приведенной ниже инструкцией. В результате мы получим мощный роутер, который можно использовать не только по прямому назначению, но и установить на него файл-сервер, принт-сервер, torrent-клиент и еще много-много всего.

Итак, поехали.

1. Скачиваем прошивку DD-WRT_mini_usb Eko c сайта dd-wrt.com

2. Прошиваем девайс согласно инструкции: http://www.dd-wrt.com/phpBB2/viewtopic.php?p=232838&sid=128eb1a54450aa3577d880e3d19dfd20
Наберитесь терпения. С первого раза может не получиться. Я смог залить прошивку только сменив компьютер.
Примечание: в статье по ссылке предлагается шиться версией Standart Generic. Это не совсем правильно, т.к., для данного роутера лучше подойдет именно версия Mini USB от Eko.

3. Если роутер прошился и работает — возрадуйтесь, половина дела сделана. Теперь настраиваем подключение к интернет и изучаем веб-интерфейс прошивки. Инструкция для поключения к Корбине (годится и для других провайдеров с PPTP Dual Access) здесь: http://homenet.corbina.net/index.php?showtopic=87133

4. Через Веб-интерфейс включаем поддержку JFFS2 (вкладка Тех. Обслуживание->Управление) и поддержку USB (вкладка Службы->Службы). В этом разделе включаем все пункты, кроме поддержки USB 1.1 (UHCI) и поддержки USB 2.0 (последнее, в принцпе, работает, но глючно)

5. Подключаем к роутеру флешку или HDD с USB-интерфейсом. Если планируется подключение принтера и/или нескольких дисков, используем USB-хаб. Встроенная памаять роутера всего 4 МБ, и большая ее часть используется прошивкой, поэтому часть подключенной флешки или диска будет использована для установки дополнительных компонентов. Желательно выделить для этих целей отдельную партицию на диске или даже целую флешку, которая будет подключена к роутеру «на веки вечные». Флешку или партицию форматируем в ext.3. Под Windows, к сожалению, это сделать невозможно, поэтому ищем компьютер с линуксом или качаем образ Live CD. Я использовал Xubuntu: http://xubuntu.com/
Примечание: форматировать в ext.3 остальные партиции необязательно, роутер отлично работает с FAT.

6. Подключаемся к роутеру телнетом, вводим команду dmesg и ищем строки типа

/dev/scsi/host0/bus0/target0/lun0: p1

Если используется диск с несколькими партициями, то будет что-то вроде:

/dev/scsi/host0/bus0/target0/lun0: p1 p2 p3

Это «внутренний» адрес флешки. Теперь нужно подключить ее к встроенной памяти роутера:

mount -o noatime /dev/scsi/host0/bus0/target0/lun0/part1 /jffs

Чтобы подключение происходило автоматически при загрузке роутера, добавляем эту команду в Параметры запуска через веб-интерфейс (вкладка Тех. Обслуживание->Команды). Проверяем, подключилаь ли флешка, командой df. Если флешка подключилась, вы увидите что-то вроде:

/dev/scsi/host0/bus0/target0/lun0/part1
233333 33365 187921 15% /jffs

также увеличенный размер JFFS будет виден через веб-интерфейс на вкладке Статус

7. Для расширения функциональности роутера используем пакеты Optware. Сначала подготавливаем место для их установки:

mkdir /jffs/opt
mount -o bind /jffs/opt /opt

8. Скачиваем установочный скрипт:

wget http://www.3iii.dk/linux/optware/optware-install-ddwrt.sh -O - | tr -d "\r" > /tmp/optware-install.sh

и запускаем его:

sh /tmp/optware-install.sh

У меня скрипт выдавал ошибку на стадии проверки конфигурации, поэтому я отредактировал его с помощью редактора vi, удалив из него соответствующий раздел.

9. Изменяем пути по умолчанию:

export PATH=/opt/bin:/opt/sbin:$PATH
unset LD_LIBRARY_PATH

10. Список пакетов Optware можно получить командой

ipkg-opt list | more

Мне необходим Самба сервер для доступа к дискам, подключенным к роутеру и принт-сервер p910nd. Для примера рассмотрим настройку и установку самбы.

11. Скачиваем необходимые пакеты, устанавливаем и запускаем их:

/opt/bin/ipkg-opt update
/opt/bin/ipkg-opt remove samba
/opt/bin/ipkg-opt install samba2
/opt/bin/ipkg-opt install xinetd
/opt/etc/init.d/S10xinetd start
/opt/etc/init.d/S80samba start

Если все прошло успешно, веб-интерфейс самбы будет виден по адресу: http://192.168.1.1:901/

12. На вкладке Global меняем имя guest account на «root». Настраиваем общий доступ к папкам на вкладке Shares. Проверяем, как все работает.

13. Теперь нам нужно сделать так, чтобы Самба запускалась автоматически при загрузке роутера. Для этого создаем скрипт optware.startup:

mkdir /jffs/etc
mkdir /jffs/etc/config
vi /jffs/etc/config/optware.startup

со следующим содержимым:

#!/bin/sh
mount -o bind /jffs/opt /opt
unset LD_LIBRARY_PATH
unset LD_PRELOAD
[ -e /opt/etc/profile ] && mount -o bind /opt/etc/profile /etc/profile
if [ -d /opt/etc/init.d ]; then
for f in /opt/etc/init.d/S* ; do
[ -x $f ] && $f start
done
fi

и делаем его загрузочным:

chmod +x /jffs/etc/config/optware.startup

14. Для того, чтобы подключенные к роутеру диски корректно отключались при его перезагрузке, добавляем Shutdown скрипт через веб-интерфейс (вкладка Тех. Обслуживание->Команды):

umount /mnt &
umount /opt &
umount /jffs &
sleep 2

15. Перезагружаем роутер и наслаждаемся результатами.

Сразу скажу, что перед тем, как я познакомился с DD-WRT, мои знания о линуксе были равны нулю, да и сейчас не сильно увеличились. Конечно, опытный линуксовод сделает все сам без проблем, поэтому данная инструкция предназначена скорее для таких же чайников, как я сам — надеюсь, она поможет кому-то сэкономить время и немного денег. Если ее недостаточно, дополнительную информацию можно получить в DD-WRT Wiki: http://www.dd-wrt.com/wiki/index.php/Optware и в форумах на том же сайте.

www.boards.auto.ru


25 сентября, 2012  
Tags: asus, d-link, dd-wrt, dir-320, wl-500gp, прошивка

Leave a Reply

  • Рубрики

    • FreeBSD (20)
    • Linux (46)
    • MySQL (11)
    • Windows (14)
    • Железо (3)
    • Мои моды к TorrentPier II (16)
    • Настройка сервера (49)
    • Разное (33)
    • Скрипты (30)
  • Свежие записи

    • Поля форм на Yii2: textInput(), passwordInput() и hiddenInput()
    • Поля форм на Yii2: CheckboxList()
    • SpeedTest датацентров Digital Ocean
    • Патчим Gearman на Debian
    • nginx + Apache 2.4 и REMOTE_ADDR (решение проблемы)
    • Создание и подключение swap-файла в Debian
    • Запуск PhpStorm 9 x64 на Windows
    • Рекурсивная замена прав доступа для папок и файлов в Linux
    • VirtualBox 5 + phpVirtualBox на Debian 8.2 (jessie)
    • Обработка сессий PHP с помощью Redis + phpredis на Debian 7.8
  • Ссылки

    • My GitHub
  • Архивы

    • Июнь 2016 (2)
    • Март 2016 (2)
    • Январь 2016 (3)
    • Ноябрь 2015 (2)
    • Август 2015 (1)
    • Февраль 2015 (1)
    • Январь 2015 (7)
    • Октябрь 2014 (1)
    • Июнь 2014 (1)
    • Май 2014 (1)
    • Апрель 2014 (7)
    • Февраль 2014 (9)
    • Январь 2014 (5)
    • Декабрь 2013 (7)
    • Ноябрь 2013 (1)
    • Октябрь 2013 (3)
    • Август 2013 (4)
    • Июль 2013 (4)
    • Июнь 2013 (3)
    • Апрель 2013 (2)
    • Март 2013 (2)
    • Февраль 2013 (6)
    • Январь 2013 (2)
    • Декабрь 2012 (1)
    • Ноябрь 2012 (2)
    • Октябрь 2012 (7)
    • Сентябрь 2012 (22)
Все права защищены © 2012 Gemini_13's Blog
G13.org.ua