Превращаем недорогой роутер в домашний сервер

Этот пост был написан примерно год назад и вообще для вражеского сайта и не совсем соответствует тематике ЕЕ. Но, думаю, может быть интересен. На вражеском сайте пост стал недоступен после того, как я с гневом выпилил оттуда свой аккаунт после очередного произвола НЛО.

Так что пускай тут полежит, в моём персональном блоге. :)

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

В этом посте я хочу поделиться своим опытом по созданию сервера на основе роутера D-Link DIR-320. На роутере были подняты Веб-сервер, FTP, настроена видеотрансляция. Хотя статья и предполагает использование DIR-320, для другого роутера процесс настройки будет отличаться незначительно.

Аппаратное обеспечение



Я использовал роутер DIR-320. Данный девайсик имеет MIPS32-микроконтроллер Broadcom BCM5354 с тактовой частотой 240 МГц, оперативную память объёмом 32 МБ, энергонезависимую память объёмом 4 МБ. Сетевые интерфейсы, 2.4 ГГц RF-модуль, USB-контроллер интегрированы в микроконтроллер. Ещё в устройстве установлен 100-мегабитный свитч на 4 порта. Кстати, микроконтроллер достаточно сильно грелся, но после того, как на него был посажен на термопасту небольшой медный радиатор, температура снизилась до нормальных 40-50 градусов. Кроме того, на плате не был установлен экран на высокочастотном модуле, хотя и была предусмотрена площадка для его пайки. Впрочем, эти небольшие недостатки конструкции компенсируются сравнительно низкой ценой устройства, хорошим потенциалом для моддинга, поддержкой альтернативных прошивок, лёгкостью восстановления стандартной прошивки после неудачных экспериментов. Кроме роутера был использован 4-портовый USB-хаб Manhattan, UVC-камера A4-Tech PK-750MJ на китайской микросхеме VC0332, USB-флешка Kingston на 2 ГБ, пара патч-кордов по 1,5 м. Питание осуществляется от стандартного блока питания на 2 Ампера из комплекта роутера. Запаса мощности вполне хватает для питания дополнительных устройств. При подключении более серьёзных потребителей (например, HDD) желательно установить блок питания по приличней, Meanwell'овский юнит например.

Роутер

Выбор прошивки



Первой прошивкой, на которую я обратил внимание, была DD-WRT. Эта прошивка порадовала качеством, стабильностью и обширным набором дополнительных пакетов — Optware. DD-WRT поддерживает множество устройств, легко устанавливается, имеет удобный веб-интерфейс, множество возможностей доступно сразу после заливки прошивки в роутер. Однако DD-WRT основана на старом ядре 2.4, что накладывает серьёзные ограничения. Например, ядро 2.4 не поддерживает модуль uvcvideo, который требовался мне для подключения камеры. Погуглив, я узнал о прошивке OpenWrt. Последний релиз OpenWrt 10.03 под кодовым именем Backfire, вышедший 8 апреля 2010 г, поддерживает ядро 2.6.32. Для этой прошивки создан набор дополнительных пакетов — X-Wrt, в котором можно найти очень много полезного портированного софта и админку WebIf. Главная особенность OpenWrt — перезаписываемая файловая система, которая монтируется поверх стандартной файловой системы, что позволяет устанавливать пакеты в роутер и выполнять конфигурирование привычным редактированием файлов. Возможно монтирование как части энергонезависимой памяти роутера, незанятой прошивкой (с использованием файловой системы JFFS2), так и внешнего носителя. Для установки пакетов используется менеджер opkg. OpenWrt вместе с дополнительными пакетами распространяется в исходниках.

Сборка прошивки



Нам понадобится любая операционная система на основе Linux. Я использовал Arch Linux.

Для получения исходников, нужно установить subversion:

$ sudo pacman -S subversion


Скачиваем Buildroot OpenWrt:

$ mkdir ~/openwrt && cd ~/openwrt
$ svn co svn
://svn.openwrt.org/openwrt/branches/backfire


Скачиваем и устанавливаем дополнительные пакеты и патчи:

$ cd backfire
$
./scripts/feeds update && ./scripts/feeds install -a


Проверяем наличие всех нужных для сборки пакетов и инициализируем конфигурацию прошивки:

$ make defconfig


Конфигурируем прошивку:

$ make menuconfig


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

Меню настройки

Выбираем систему:

Target System -> BCM947xx/953xx -- выбираем вариант для нашего BCM5354 с ядром 2.6


Выбирать пакеты можно как для установки в прошивку, так и просто для сборки. Пакеты, собранные без установки образуют наш мини-репозиторий, из которого их можно будет устанавливать уже после заливки прошивки в роутер. Памяти в DIR-320 всего 4 МБ, причём обязательно должно остаться немного свободного места для использования JFFS2. Так что будем устанавливать минимально необходимый набор пакетов, а остальное соберём для последующей установки на внешний носитель. Чтобы выбрать пакет для установки в прошивку, нужно нажать Y. Я добавил в прошивку пакеты, требуемые для монтирования флешки:

Kernel Modules -> USB Support -> core, usb2, ohci -- для поддержки контроллеров USB 2.0
Kernel Modules -> USB Support -> storage -- для поддержки USB-накопителей
Kernel Modules -> Filesystems -> ext3 -- выбираем нужные файловые системы
Base System -> block-mount -- для монтирования через fstab
Utilities -> disc -> block-extroot -- для монтирования поверх файловой системы
Utilities -> Editors -> nano -- удобный текстовый редактор для конфигурирования системы


Также, добавил веб-админку. Без админки не удастся установить пароль для входа по ssh:

Administration -> webif -> webif, webif-applications -- веб-админка


Затем, выбираем пакеты для сборки без установки. Не стоит выбирать много лишних пакетов, чтобы время сборки не увеличивалось до неразумных пределов. Чтобы выбрать пакет для сборки без установки, нужно нажать M. Многие пакеты можно установить и из основного репозитория, однако нужные модули ядра стоит собрать, т.к. в репозитории могут быть несовместимые версии. Я выбрал модули ядра, необходимые для подключения UVC-камеры — kmod-video-core и kmod-video-uvc.

Также можно настроить некоторые параметры прошивки, например сетевой адрес по умолчанию. Я установил адрес 192.168.0.1 (адрес роутера по умолчанию — 192.168.1.1):

Image Configuration -> LAN IP Address -> 192.168.0.1

При необходимости, можно сконфигурировать ядро. Я оставил всё по умолчанию.

$ make kernel_menuconfig


Собираем прошивку:

$ make


В процессе сборки прошивки также будут скачиваться и собираться необходимые инструменты для кросс-компиляции, скачиваться исходники ядра, пакетов и т.д. Сборка займёт от 30 минут до нескольких часов, в зависимости от производительности сети и компьютера. После завершения сборки, в папке bin будут находиться созданные образы прошивки в различном формате и собранные пакеты. Нам понадобится образ прошивки в формате squashfs — openwrt-brcm47xx-squashfs.trx.

Заливка прошивки



Для заливки прошивки понадобится TFTP-клиент (неважно, под Linux или Windows), я использовал GUI'шную утилитку под Windows, которую можно найти на сайте DD-WRT. Нужно подключить PC к LAN-порту роутера, выставить на сетевом интерфейсе PC статический IP 192.168.0.10 и маску подсети 255.255.255.0. В TFTP-клиенте выбрать файл прошивки и выставить IP сервера 192.168.0.1. Включить роутер и дождаться линка, затем отправить прошивку в роутер. Загрузчик ждёт прошивку в течении пары секунд, так что, возможно, понадобится несколько попыток, также, при необходимости, стоит сразу разобраться с фаерволом, чтобы отправить прошивку без лишней задержки. После того, как прошивка будет отправлена на роутер, нужно подождать пару минут, пока загрузчик не завершит внутренний цикл прошивки и не включится диагностический светодиод.

Перед заливкой новой прошивки стоит запастись оригинальной прошивкой — если заливка пройдёт неудачно, можно будет вернуть оригинальную прошивку через консоль восстановления. Для этого нужно включить роутер, удерживая Reset, затем зайти браузером на 192.168.0.1.

После завершения прошивки, настраиваем сетевой интерфейс компа на получения адреса с помощью DHCP, перезагружаем роутер. OpenWrt загружается несколько дольше оригинальной прошивки, причём диагностический светодиод светится во время загрузки и гаснет при завершении. Если всё прошло успешно, заходим браузером на роутер. На этом этапе не обязательно настраивать роутер — после подключения внешнего накопителя, настройки будут храниться на нём и придётся заново настраивать. Достаточно лишь установить пароль.

Подготовка накопителя



Накопитель нужно разбить на разделы fdisk'ом и отформатировать. Я создал 3 раздела — под систему, под домашние директории и под своп. Не забудь заменить /dev/sdb на имя съёмного накопителя в своей системе:

Disk /dev/sdb: 2004 MB, 2004877312 bytes
62 heads, 62 sectors/track, 1018 cylinders
Units = cylinders of 3844 * 512 = 1968128 bytes
Disk identifier: 0xa8afe1b3

Device Boot Start End Blocks Id System
/dev/sdb1 1 255 488281+ 83 Linux
/dev/sdb2 255 992 1416015+ 83 Linux
/dev/sdb3 992 1019 52567 82 Linux swap / Solaris


Форматируем:

$ mkfs.ext3 /dev/sdb1
$ mkfs
.ext3 /dev/sdb2
$ mkswap
/dev/sdb3


Настройка прошивки для загрузки с внешнего накопителя



Заходим на роутер SSH-клиентом, используя логин root и пароль, установленный через веб-админку. Редактируем файл /etc/config/fstab.

$ nano /etc/config/fstab


Редактируем одну секцию «mount» для монтирования раздела накопителя поверх основной файловой системы. Для монтирования других разделов, будет использоваться файл fstab, хранящийся на внешнем накопителе:

config mount
option target
/
option fstype ext3
option enabled_fsck
0
option device
/dev/sda1
option options rw
,sync
option is_rootfs
1
option enabled
1


Перезагружаем роутер, заходим в веб-админку. Если всё прошло успешно, админка должна снова попросить установить пароль — устройство успешно смонтировалось и настройки теперь хранятся на нём.

Настройка прошивки


Меню настройки

Заходим на роутер SSH-клиентом, создаём точку монтирования для домашних директорий:

$ mkdir /home


При желании установить собранные вместе с прошивкой пакеты, расшариваем их (папку bin Buildroot'а) FTP-сервером, затем прописываем наш мини-репозиторий в файле /etc/opkg.conf, добавив строку:

src/gz mypackages ftp://(адрес сервера)/brcm47xx/packages


Обновляем список пакетов:

$ opkg update


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

$ cd /var/opkg-lists
$ rm X
-Wrt packages


Устанавливаем нужные пакеты:

$ opkg install kmod-input-core kmod-video-core kmod-video-uvc


Основное конфигурирование удобно выполнять через веб-админку. Устанавливаем имя хоста, часовой пояс, добавляем точки монтирования, настраиваем сетевые интерфейсы и т.д. Я смонтировал раздел для домашних директорий с опциями async и noatime, чтобы продлить жизнь флешке. Перезагружаем роутер и проверяем результат:

$ df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 2.0M 2.0M 0 100% /rom
tmpfs 14.5M 72.0K 14.5M 0% /
tmp
tmpfs
512.0K 0 512.0K 0% /dev
/
dev/sda1 461.8M 19.8M 418.1M 5% /overlay
mini_fo:/
overlay 2.0M 2.0M 0 100% /
/
dev/sda2 1.3G 558.4M 733.6M 43% /home


Устанавливаем FTP-сервер



Создадим группу админов сервера:

$ echo web:x:101: >> /etc/group


Создадим пользователя ftp для анонимного входа, добавим его в группу nogroup (65534), и пользователя ftpadmin для администрирования файлов, доступных по FTP.

$ echo ftpadmin:*:102:101:ftpadmin:/home/srv/ftp:/bin/ash >> /etc/passwd
$ echo ftp
:*:103:65534:ftp:/home/srv/ftp:/bin/ash >> /etc/passwd
$ mkdir
-p /home/srv/ftp
$ chgrp
-R web /home/srv
$ chown ftpadmin
/home/srv/ftp


Зададим пароль для пользователя ftpadmin

$ passwd ftpadmin


Установим pure-ftpd — быстрый и лёгкий FTP-сервер

$ opkg update
$ opkg install pure
-ftpd


Настройки сервера находятся в файле /etc/config/pure-ftpd. Разрешим анонимный вход и выберем отдельный лог отредактировав следующие строки:

option noanonymous '0'
option anonymouscantupload
'1'
option syslogfacility
'none'
option altlog
'stats:/var/log/pureftpd.log'
option enabled
'1'


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

Запустим сервер:

$ /etc/init.d/pure-ftpd start


Зайдём в веб-админку на вкладку Services и отметим pure-ftpd для автоматического запуска. Чтобы сервер был доступен из интернета, нужно зайти на вкладку Firewall и открыть 21 порт.

Устанавливаем веб-сервер



Создадим домашнюю директорию для файлов и пользователя, который будет владеть этой директорией:

$ echo wwwadmin:*:101:101:wwwadmin:/home/srv/www:/bin/ash >> /etc/passwd
$ mkdir
/home/srv/www
$ chgrp web
/home/srv/www
$ chown wwwadmin
/home/srv/www


Зададим пароль для пользователя wwwadmin:

$ passwd wwwadmin


Установим веб-сервер lighttpd с нужными плагинами:

$ opkg update
$ opkg install lighttpd lighttpd
-mod-cgi lighttpd-mod-access lighttpd-mod-redirect


Установим PHP:

$ opkg install libsqlite3 php5-cgi php5-mod-pdo php5-mod-sqlite php5-mod-gd php5-mod-session


Сконфигурируем lighttpd. Настройки хранятся в файле /etc/lighttpd/lighttpd.conf.

Подключим нужные нам плагины:

server.modules = (
"mod_cgi",
"mod_access",
"mod_redirect"
)


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

server.document-root = "/home/srv/www"


Зададим имена документов по-умолчанию:

index-file.names = ( "index.htm", "index.php" )


Укажем CGI-обработчик для PHP:

cgi.assign = ( ".php" => "/usr/bin/php-cgi" )


Желательно указать UID и GID для сервера, чтобы он не работал с правами суперпользователя:

server.username = "wwwadmin"
server
.groupname = "web"


Настроим PHP, отредактировав файл /etc/php.ini. Подключим нужные модули, раскоментировав соответствующие строки:

extension=pdo.so
extension
=gd.so
extension
=session.so
extension
=sqlite.so


Изменим параметр doc_root на пустую строку, иначе интерпретатор будет искать скрипты не в том месте:

doc_root =


Чтобы сервер заработал, нужно сначала перевесить веб-админку роутера с 80 порта на какой-нибудь другой порт. Запустим сервер:

$ /etc/init.d/lighttpd start


Создадим в /home/srv/www файл test.php с таким содержимым:

<?php phpinfo(); ?>


Откроем 192.168.0.1/test.php. Если всё прошло удачно, увидим таблицу с настройками PHP:

Перейдём на вкладку Services веб-админки и разрешим автоматический запуск lighttpd. На вкладке Firewall откроем 80 порт чтобы сервер был виден из интернета.

Настраиваем видеотрансляцию


Вебка

Для начала, нужно установить нужные для камеры модули и убедиться, что камера успешно подхвачена системой:

$ ls /dev/video*
/dev/video0


Для видеотрансляции будем использовать пакет MJPEG-Streamer. Это довольно тяжелый пакет, но его можно немного твикнуть.

Вернёмся к Buildroot'у. Получим исходники пакета:

$ cd ~/openwrt/backfire
$ make package
/mjpg-streamer/clean
$ make package
/mjpg-streamer/prepare


Поправим код для сжатия в JPEG. Путь может немного отличаться для разных версий пакета и библиотек:

$ nano build_dir/target-mipsel_uClibc-0.9.30.1/mjpg-streamer-r94/plugins/input_uvc/jpeg_utils.c


Найдём в коде строку инициализации параметров сжатия:

jpeg_set_defaults (&cinfo);


После этой строки можно переопределить некоторые параметры сжатия JPEG. Выберем быстрый целочисленный метод для DCT:

cinfo.dct_method = JDCT_IFAST;


Сохраним изменения, скомпилируем пакет, обновим индекс пакетов:

$ make package/mjpg-streamer/compile V=99
$ make package
/index


Подключимся к роутеру по SSH. Включим наш репозиторий в /etc/opkg.conf. Установим MJPEG-Streamer:

$ opkg update
$ opkg install mjpg
-streamer


Настройки пакета находятся в файле /etc/config/mjpg-streamer. Отредактируем нужные строки:

config mjpg-streamer core
option device
"/dev/video0"
option resolution
"640x480"
option fps
"1"
option port
"310"
option enabled
"true"


Если камера отдаёт поток в формате MJPG, на этом настройка закончена. Моя камера отдаёт несжатый поток в формате YUV, для неё нужно включить JPEG-сжатие. Отредактируем файл /etc/init.d/mjpg-streamer. Найдём командную строку запуска демона:

$PROG -- --input "input_uvc.so --device $device --fps $fps --resolution $resolution" --output "output_http.so --port $port" &


Добавим параметр --yuv для плагина input_uvc:

$PROG -- --input "input_uvc.so --device $device --fps $fps --resolution $resolution --yuv" --output "output_http.so --port $port" &


Стартуем демон:

$ /etc/init.d/mjpg-streamer start


Если всё прошло нормально, должен включиться светодиод на камере. Для проверки работы сервера зайдём на 192.168.0.1:310/?action=stream. Не все браузеры нормально поддерживают MJPG-поток. Статическая картинка доступна по адресу 192.168.0.1:310/?action=snapshot. Для отображения видео на веб-странице можно использовать встроенную поддержку браузера (имеется в Firefox, Chrome, частично в Opera), Javascript или Java-апплет. Страничка с примерами есть дистрибутиве MJPEG-Streamer.

Индикация посетителей


Платка

Мне хотелось сделать какую-нибудь индикацию приходящих посетителей. Для этого я взял яркий RGB светодиод, подключил его к USB через самодельный переходник на микроконтроллере. Программу для управления написал и отладил в Visual C, затем портировал и собрал под роутер с помощью Buildroot'а OpenWrt. Приходящие посетители, активность веб-сервера и FTP и другие события обозначаются вспышками разных цветов. Впрочем, эта система заслуживает отдельного поста.

Регистрация домена



Я зарегистировал домен для своего проекта в зоне RU у 2domains.ru меньше чем за 100 рублей. Регистратор мне понравился, на верификацию ушло всего 4 часа.

P.S. На всякий случай



Я новичок в мире Linux, к тому же, в первый раз пишу такой большой пост, так что могут быть ошибки. Если так, то они сделаны не из вредности.

Вскрытие и перепрошивка роутера лишают тебя гарантии на девайс. Возможны и другие проблемы. Впрочем новые роутеры (например, DIR-320) сложно убить перепрошивкой — загрузчик зашит в энергонезависимую память микроконтроллера (в отличии, например, от RedBoot, использовавшегося в более ранних моделях), так что в любой момент можно сделать откат на оригинальную прошивку. Но в любом случае, ты ковыряешь роутер на свой страх и риск.

Удачи!
Вконтакте
0

Комментарии (135)

RSS свернуть / развернуть
Статья супер!
А что можно сказать об DSL-2640U?
Хотелось бы тоже «обновить» девайс.
0
  • avatar
  • qic
  • 15 апреля 2011, 12:21
Этот девайс тож есть в списке поддерживаемых OpenWrt. Просто надо будет выбрать нужную архитектуру при сборке прошивки)
0
0
Спасибо!
0
Ой, как вовремя! Как раз на столе лежит DIR-615 C2 с запоротой прошивкой. Хочу попробовать восстановить и поставить DD-WRT.
0
Супер!
Запилить бы что-нибудь подобное на дримбоксе, всё равно без дела валяется :))
0
Мило. А как по скорости? В качестве хранилища сервера юзается двухгиговая флешка?
0
  • avatar
  • Vga
  • 15 апреля 2011, 14:11
HTTP нормально впринципе, не тормозит но и не летает.
Вот видио (сжатие видио с вебки в MJPG) аццки грузит проц. Жалкие 320x240 1fps — около 15% CPU. Хотя если найти вебку, отдающую поток сразу в JPEG, всё будет намного лучше.
0
классно. у меня такой же. можно попробовать. а модули для юсб-модемов есть?
а еще трехсотый с убитой прошивкой. никак что-то не могу восстановить
0
А трехсотый какой ревизии? Их два совсем разных… У меня как раз DIR-300/NRU (HW B1) и стоит, под DD-WRT бегает.
0
а, или первой. короче, тот, который не NRU
0
А DD-WRT туда прошить пробовал? Там аццкий ман, как до бута достучаться)
А вот 300/NRU шьется через вебморду. Если прошивка слетит — хз че делать…
Неплохо бы еще на нем до USB достучаццо, на чипе она есть. Но чип — BGA289) Так что если не вытянуто наружу по плате…
0
Через вебморду можн прошить только родную прошивку. Что-то своё — только через TFTP или бут.
Бут, кстати, тож имеет вебморду. Чтобы до неё добраться нужно включить роутер с зажатым ресетом и выставить статический айпи на интерфейсе компа.
Вот если и бут слетит — тогда JTAG) В принципе ничего в нём страшного нету — мануалов в сети полно.
0
В А1 там нужно плясать с бубном и витухой. А В1 спокойно съедает ддврт через вебморду. Правда хз как на родную откатиться — у дд-врт другой формат прошивки и на страничке выложены только DD-WRT для оригинальной прошивки и DD-WRT для DD-WRT.
Ну и вообще В1 мне нравится. Тока почему-то скорость выше 54мбит не устанавливается, хотя и сетевуха, и роутер — draft-n с заявленной скоростью 150.
0
Хм… ну может быть)
А в DIR-320 только через TFTP получается залить альтернативную прошивку.

Мой тож не может прокачать больше 5мб/с между локалкой и инетом. Просто потому что загрузка проца доходит до 100% У мя прост к нему жки подключен, на котором и трафик и загрузка проца:)
0
Нет, у моего соединение вай-фай поднимается не выше, чем на 54 мбита, т.е. в режиме G. Хотя в настройках стоит NG-mixed.
0
Хм… да дело тут не в режиме а в том, что он впринципе не успевает гонять столько данных между интерфейсами.
0
Я говорю про скорость интерфейса. Почему оно не отображает заявленную циферку в 150 мбит, пусть даже если неспособно их задействовать?)
Хотя я даже и не видел на роутере загрузки выше 10-20%, даже если гнать данные с деска на ноут.
0
А, вот ты о чём)
Ты уверен что роутер поддерживает режим n. Я тут посмотрел, вроде только g.

Но то что между локалкой и инетом они могут гонять только 50мбит где-то — общеизвестный факт) Из-за работы NAT может такая загрузка?)
0
Для DIR-300/NRU (HW rev.B1) заявлена поддержка 802.11n (draft), со скоростью до 150мбит/с. Построен он на Ralink RT3050, в котором также заявлена поддержка draft-n. В компе — сетевуха D-Link DWA-525, тоже с заявленной поддержкой draft-n 150mbit/s. Подключен как правило только деск, но переключать с NG-mix на N only не дают три девайса ревизии G.
150мбит меня (пока) интересует по локалке — инет все равно 3/5-мегабитный, а вот гонять данные гигабайтами на 54мбитах между компами кисло.
0
Поэкспериментировал с роутером.
В N-Only он таки поднимает линк на 150мбит… Толку-то, при передаче деск-ноут скорость выше 20мбит не поднималась. При загрузке проца роутера 5%. Печально… Или я что-то сделал не так…
В NG-Mixed линк поднимается на 150Мбит, но уже через секунду падает до 54. Хотя сигнал на уровне «хороший».
0
Имею dir-300/NRU.
Прошивал ddr-wt.
Что на заводской, что на ддровской прошивке 10мбит… при гигабитной карточке в ноуте…
0
Есть, конечно, модули для модемов. OpenWrt — вполне себе современный линух. Есть даже DebWrt — сборка OpenWrt, которая может ставить пакеты прям с дебиановских репозиториев.

DIR-300, к сожалению, без USB, так что флешку не воткнёш. А родной памяти мало. Но вроде можно сделать SD Card-мод:)
0
да я его по тупости убил. хоть бы восстановить сейчас.
0
Ну вроде они через JTAG перешиваются. Схемка адаптера и прошивка нагугливаются. Хотя сам не пробовал)
0
Если ривизия А1: то вот ссылочка на форум, там описано по шагам.
www.lan23.ru/forum/showthread.php?t=2133
0
Примерно с теми же намерениями я и прошил свой Dir-300 навсегда =)
0
Как по мне — DDWRT мудреная, а если ещё и допиливать её… Я свой DIR 320-й прошил «развитием прошивки от Олега»:
code.google.com/p/wl500g/
В ней по умолчанию:
FTP Server
Samba
NFS Server
Web Camera
3G/CDMA Modem
WiMAX
Плюс работа с принтерами, флешками, usb винтами.

Из всего этого изобилия пользуюсь только сетевым принтером :)

p.s. Не реклама.
0
А она разве что-то кроме асусов держит?
0
DIR-320 практически копия WL500 с меньшим объемом памяти и хз еще чего)))
0
Пишут, что поддерживает такие роутеры:
wl500gP
wl500gPv2
wl500W
RT-N16
RT-N12
RT-N10
DIR-320
WNR3500L
WRT610N v2

Но вижу, что по факту поддерживается больше, например WL700gE, в общем, нужно смотреть на форуме:
wl500g.info/showthread.php?t=3921

Или списки проверенных роутеров:
wiki.vectormm.net/index.php/Прошивка_энтузиастов

А роутер Dlink DIR 320 — по факту копия Asus WL-500gpv2, но ровно в два раза меньше RAM (16мб), и FLASH (4мб).
Вот ссылка на описание железа asus:
code.google.com/p/wl500g/wiki/Devices

И может кому из местных умельцев ближе тема модификации методом пайки :)
wl500g.info/showthread.php?t=7048
0
WL700Ge поддерживается, но для перепаянной флешки. впрочем, я себе так и сделал — просто передул флешку и пользую все прелести прошивки…
0
Не понравилась.

1. Ужасный интерфейс, сделаный жпегами низкого качества.
2. UVC вебку не держит.
3. Это не линух, просто сборка. OpenWrt — линух. Можеш к роутеру дисплей подключить, да иксы поставить — будет комп.
0
Вообще, перечитай начало поста
Многие пользователи не ждут от родной прошивки ничего хорошего и устанавливают альтернативную прошивку. Но, как правило, на этом всё и заканчивается. Пользователь изучает встроенный веб-интерфейс и радуется новым возможностям поумневшего устройства. Однако, прошивка роутера — полноценная операционная система на базе Linux, позволяющая воплотить многие задумки, выходящие далеко за рамки привычной функциональности роутера.
Иметь полноценный линух в маленькой коробочке, на который можно поставить любой пакет, запускать любой софт, подключить что угодно, etc. и просто поставить сборку на старом ядре, содержащую полтора намертво зашитых пакета — это явно не одно и тож.
0
Кроме того, даже этот самый DD-WRT круче асуса в 100500 раз. У DD-WRT хотя бы есть довольно большой набор расширений — Optware. Хотя и ограниченный и ядро старое.
0
Я свой DIR 320-й прошил «развитием прошивки от Олега»:
code.google.com/p/wl500g/
Пробовал в свое время, но…
1) Поддерживает только бестолковые броадкомы. А они начистую проигрывают девайсам на атеросе по цене/качеству. Тот же tplink 1043 стоит почти как 320-й, ну может чуть дороже. Зато гигабитные порты, проц в 2 раза быстрее и это атерос а не долбаный броадком, так что скорость юсб человеческая хотя-бы. А не 5Мб/сек, которые очень доставали на wl500gp.
2) Там раритетная версия ядра. Поэтому о свежих вкусных плюшах из последних ядер можно забыть. А мне вот например нравится файловая система ext4 для внешнего HDD (стала юзабельна в районе 2.6.30 примерно) и всякие фенечки типа ipset ака «mass-ban iptables'ом кучи диапазонов IP без тормозов» :D.
3) Веб-морда угробищна на вид.
4) И по сравнению с текущей LuCI из openwrt — ничего не умеет.
5) Запись на файловую систему в «олеге» реализована на редкоть криво и уродски. В openwrt поступили намного умнее и поэтому донастройки и доустановку всяких плюшек производить намного удобнее. Можно, блин, отредактировать файл и не париться по части левых команд. Как на нормальном компьютере. Каковым эти штуки и являются по большому счету :))
0
А что ты считаешь о DD-WRT и о чипсетах от Ralink?
0
я на свой поставил прошивку от олега (адаптированную вампиком)
0
У меня тоже dir-320. Перепробовал кучу прошивок. Как ни крути — тормоз тормозом при работе как с Wi-Fi так и PPTP/L2TP соединением.
Поиграться и только, для серьезной работы не подходит. Из плюсов только цена и сетевой принтер. Мне например раза в 3 быстрее фильм вновь скачать из интернета чем по WI-FI перекинуть с одного ноута на другой, причем второй ноут через Ethernet подключен.
0
Вы все явно не поняли о чём пост (
0
Я понял, мне понравилось, просто вчера я сонный был как муха. Идея очень хорошая!
Кстати камера доступна из тырнета? Было бы классно подключиться и посмотреть))
0
Дык моя старая домашняя страничка)
0
Только там ничего интересного)
0
Идея и реализация дизайна понравилась. Я вот на extJs пишу поэтому сначала не понял что загрузилось, думал исходник json элемента)))
0
Пару часов гугла мучил по DIR-120, а толком ничего не нашел ((( Очень интересно использовать все возможности железяки.
0
У меня такой в ящике валяется, покупал прошлой весной специально для этих целей и забил. Хотел собрать ручками свой ТруЪ мини-дистр Линукса. Все стало на том что патчи для ядра 2.6.32-2.6.34 от OpenWrt делали ядро нерабочим (конкретно для Broadcom 5354, еще тикет был на баг-трекере OpenWrt), а ядро без патчей (ванильное) тоже не работает. Так и забросил я это дело, перестал красноглазить и кинул его в ящик. Если у кого есть полноценный набор стабильных патчей для Броадком 5354, буду премного благодарен!
0
  • avatar
  • wasw
  • 16 апреля 2011, 02:15
Мега респект тебе и dipcore.com/, благодаря вашим статьям на моем роутере тоже бегает пингвин, и выполняются мои программки. Вообще для домашней автоматизации мега крутейшая вещь это роутер с линуксом, подцепил к USB хабу толпу ftdi'ек, а к ним что хочешь и gsm модем цеплял (правда инет так и не настроил) и gps (тока нахрена он на роутере) и просто avr'ок всяких, и с лампочками, и с релюшками, и с АЦП. И даже usbasp работает. Тоесть можно даже прошивать через ssh клиент с той стороны планеты. Хотя я пользуюсь uart bootloader'ом все через ту же ftdi'ку.
Сейчас всерьез задумываюсь о том чтобы поменять оперативку на 64Мб, ибо программ уже понаставлено в роутер и самописных и нет до дури.
0
Мега респект тебе и dipcore.com/, благодаря вашим статьям на моем роутере тоже бегает пингвин, и выполняются мои программки.
Да там на почти всех прямо с фабрики пингвин бегает, только обычно урезанный очень.
0
про моргающий через usb светодиод — точнее, про сборку программы — можно где-то прочесть? или не было оформлено?
0
да всё оч тупо там. писал когда то на вражеском хабре пока мой акк не выпилили за то, что «не умеет писать точку в конце предложения и заглавную букву в начале». но гугл помнит)))
0
занятно! а прошивка небольшая вышла — может, получится в тиньку впихнуть? Кстати, первые два устройства были какими? :-)
0
Что за первые 2 устройства?
0
«Себе я придумал VID 0xeffe, а PID'ы стал присваивать по порядку. Данный девайсик получил PID 0x0002 :)»
ну должны быть PID 0x0000 и PID 0х0001, разве не так?
0
аа… ну 0-то зачем ставить. ещё не определиться девайс. а первый вотъ
0
пробую сейчас скомилировать с помощью avr-gcc под тини2313
там реально нужно три таймера? или можно обойтись без TIMER2_COMPA_vect? portc? (кстати по схеме вообще не видно, чтобы он использовался)
жаль, что мало комментариев. по-моему из такого проекта получился бы отличный учебный материал для новичков…
0
хз, я оч давно это писал — не помню что там в прошивке да как.
но могу точно сказать — под тиньку точно не скомпилится без серьёзного допиливания)
0
Вам что стандартных настроек в DIR-320 не хватает?
-1
В стандартных настройках нет торентокачалки и загрузчика. Удобно на ночь оставлять под загрузку — серфить не мешает, не жужжит и кушает многоменьше.
0
Не хватает. Да и стабильности тоже. Я перешивал DIR-300/NRU, там особо ничего не добавишь — USB нету, а своей памяти в обрез под прошивку. Но тем не менее, после перепрошивки стало намного лучше.
0
а если при редактировании fstab я получаю вот такое? [ Error writing fstab: Invalid argument ], пробовал создать любой файл а он пишет мне [ Error writing test: No space left on device ]
и как это лечить?
0
а если при редактировании fstab я получаю вот такое? [ Error writing fstab: Invalid argument ]
А у вас файловая система на которой находится файл допускает запись в нее? Можно посмотреть например командой mount.

и как это лечить?
Проверкой что на томе на который производится запись возможна запись и достаточно места. Например, squashfs — readonly файловая система, openwrt использует довольно хитрый гибрид-оверлей с JFFS2 для создания иллюзии его записываемости. В фабричных прошивках файловая система обычно тотально ридонли кроме /tmp и кусков /var. В опенврт — есть несколько вариантов как собрать образ.
0
На самом деле для знакомства с openwrt на первый раз достаточно скачать готовый бинарь с сайта. В случае самоличной сборки образа под себя надо как минимум…
1) Понимать какие пакеты и зачем нужны
2) Правильно расставить опции и нигде не накосячить (если правильно выбрать таргет, дефолты конечно правильные, но все-таки)
3) Вообще понимание кто такой linux и с чем его едят.
4) Если честно, на данном этапе развития openwrt вебморда luci намного приятнее и функциональнее чем webif.

Итого я бы сказал что для первого раза как-то оверкилл + хорошо бы посмотреть для начала на сам «Backfire 10.03.1-rc6» чтобы понять как это выглядит в «умолчальном» виде от его авторов на данный момент.
0
Суть всех описанных бубноплясок в том, чтобы получить бинарь, который смонтирует внешний накопитель, который позволит работать с openwrt как с нормальной ОС — добавлять пакеты, хранить файлы, etc.

luci, вполне может быть. Я её так и не посмотрел…
Сейчас уже ушёл от роутера с openwrt к неттопчику с дебианом)
0
Суть всех описанных бубноплясок в том, чтобы получить бинарь, который смонтирует внешний накопитель, который позволит работать с openwrt как с нормальной ОС — добавлять пакеты, хранить файлы, etc.
Вообще, если скачать «дефолтную» сборку openwrt, можно обнаружить что именно так оно и работает по задумке его авторов в «дефолтовом» виде ;). А если кто хочет взять быка за рога — ну никто и не обещает что этот бык сильно покладист: «что испек то и ешь». При том до того как хвататься за растопку печи — хорошо бы глянуть дефолтный образ, чтоли. В дефолтовой прошивке записываемая ФС делается оверлеем — на ридонли squashfsпри помощи модуля mini_fo накладывется read-write JFFS. Получается и компактно, и записывать можно (прямо на флешку — в JFFS2 раздел), и failsafe режим в котором загрузка системы идет без монтирования jffs есть, так что если доигрались (зафайрволив самого себя, снеся ssh, etc) — можно относительно просто загрузиться с дефолтными параметрами, а дальше или переформатить ФС или подмонтировать ее в сторонку и откатить неулачные изменения руками. И все это в 4Мб флеша, в дефолтной версии. Из 4Мб даже немного остается на модификацию файлов и новые пакеты. Правда я читер — у меня девайс с 16Мб флеша на AR7161, там вообще раздолье — около 15Мб со сжатием доступно для пакетов даже без диска, чего хватает на все нужные мне пакеты, а диск чисто под закачки и его можно отцепить без потери функциональности.

Сейчас уже ушёл от роутера с openwrt к неттопчику с дебианом)
Дебиан штука хорошая, на серверах пользую. Однако неттопы как правило относительно большие и прилично кушают. Что обычно вынуждает оснащать их вентиляторами, при том сомнительной степени надежности. Не говоря о том что роутер из дебиана делать явно утомительнее чем из openwrt, где 99% типовых сетевых операций есть сразу. Но как вариант для тех кому надо именно мини-сервер — вполне. Я сделал что-то подобное из мощной роутерообразной железки и пакетов и фич openwrt мне вполне хватило, получился довольно позитивный агрегат. Сетевой комп на MIPS по сути :)
0
Мм. Я совсем другой носитель имел в виду. Не оверлей на встроенной флешке) У мя же на роутере работал трансмишен, etc.
0
Мм. Я совсем другой носитель имел в виду. Не оверлей на встроенной флешке) У мя же на роутере работал трансмишен, etc.
У меня трансмишн влез в флешку вместе с остальными нужными пакетами (в 16М да еще со сжатием — дурное дело не хитрое, еще 70% свободно аж). А вот его дира даунлоадов и всяких временных файлов были поселены на usb-винч. В отличие от броадкома где usb весьма дохлый, атерос порадовал тем что на холостом ходу спокойно упирается в usb :)
0
Можно и так. Правда собирать всё равно есть смысл — некоторые пакеты собраны без необходимых плагинов, да и версии в репозитории могут быть довольно старые.
0
На самом деле, если попадается старый пакет — лучше всего в багтрекер написать. Весьма эффективно. Мне вот наприер мешал жить старый smartmon tools, который в принципе не умел работать с моей usb-коробочкой диска. А самая свежая версия уже умеет, если форсануть тип девайса. Ну я и попросил в багтрекере подтянуть версию пакета. Подтянули в транке в момент, да и в остальные вроде уже бэкпортировали.
0
Вообще, если скачать «дефолтную» сборку openwrt, можно обнаружить
Если возьмёшь чистый билдрут и соберёшь как есть, получишь эту самую дефолтную сборку.
0
Получу я там некую сборку дефолтную для выбранной платформы. Насколько оно соответствует образам выложенным на скачку — вопрос интересный. По идее там рядом с образами лежит и конфиг-файл который им соответствует, можно сравнить с тем что по дефолту, но я как-то не заморачивался.
0
Правда я читер — у меня девайс с 16Мб флеша на AR7161
Какой это девайс? Алсо, почему «читер»? Ты туда сам впаял флешку на 16М, чтоли?
0
Какой это девайс? Алсо, почему «читер»? Ты туда сам впаял флешку на 16М, чтоли?
Это вот такой девайс: ubnt.com/support/rspro — когда я не нашел в магазине роутеров за разумную цену с желаемыми параметрами, я взял и купил у буржуев то что нашел интересного за нормальную цену. Плата за $90 и доставка около 30 (я купил 2, так что посчитаем что по 15 на каждую). А собрал все в подходящем по размеру просторном корпусе от 3.5" диска, куда влез еще и 2.5" винч вместе с 2.5" диском (через usb -> SATA коробочку). По логике — это скорее провайдерская штука для создания крутых хотспотов, вот потому и читер. На данный момент уже есть «юзерские» роутеры на таком же AR7161 с параметрами на таком же уровне (WNDR3700 например) и цены уже не очень дикие. В девайсине 16М флеша (чего достаточно для всех мыслимых пакетов в сетевой железке) и 128 оперативы. Чего хватает для торентов и nginx'а (в основном для отгрузки файлов когда хочется их расшарить народу, не натыкаясь на лимиты хостингов).Ну и юсб — не такая какашка как в броадкомах (приветы DIR320), где более 5Мб/сек с диска — счастье. Эта штука спокойно упирается в юсб (dd if=/dev/sda of=/dev/null на раз выдает около 40Мб/сек, явно упираясь в 480Мбитов юсб а не что либо еще). Получился некий гибрид роутера и торентокачалки.
0
Интересный девайс. А где купил?
(dd if=/dev/sda of=/dev/null на раз выдает около 40Мб/сек, явно упираясь в 480Мбитов юсб а не что либо еще)
Гм. А на ПК оно уже на 33МБ/с в лимит шины упирается. Этот лимит и на вики помянут, кстати.
0
По моим тестам получалось что чтение девайса влобовую, указанной командой (без оверхеда файловой системы, мне неинтересно было ФС тестировать, т.к. они бывают разные и влияют на результаты) — было 35-40Мб/сек. Английская вика говорит про «A high-speed (USB 2.0) rate of 480 Mbit/s (~57 MB/s) was introduced in 2001». С учетом протокольного оверхеда, 40Мб/сек для raw чтения девайса (без оверхеда ФС) вполне правдоподобно вроде. Чтение файлов разумеется будет помедленнее, насколько именно — зависит от файловой системы, файлов и как одно с другим утряслось.
0
Нет, 480Мбит — это физическая скорость передачи битиков по шине, включая bit stuffing и прочий оверхед. В сочетании же со всеми прочими оверхедами шины получается максимум в районе 33МБ/с (они там дюже суровые). Victoria, сканируя диск (это без ФС, просто последовательное посекторое чтение) показывала скорость не выше 30000кбайт/с, а вот при подключении того же винта через USB 3.0 адаптер — уже упиралась в лимит самого винта (50-75МБ/с в зависимости от дорожки).
0
Ну я в курсе про битстуффинг и прочее — примерно половину талмуда на 2.0 я осилил, потом мозг все-таки взорвался :). А нельзя ли ссылку где про 33 мб? В анлийской вике не нашел так сходу ни звука о 33мб/сек. Нельзя ли меня пнуть куда-нибудь где есть пояснение откуда эта цифра берется, с соответствующим «матаном»?

Victoria, сканируя диск (это без ФС, просто последовательное посекторое чтение) показывала скорость не выше 30000кбайт/с
Во первых честно говоря я линуксному стеку юсб как-то больше доверяю чем остальным. Во вторых, ограничения может вносить еще и сам чип контроллера usb-sata и его степень дружбы с мамкой, насколько я знаю разные сочетания могут давать разные результаты при казалось бы одинаковых условиях. Собственно указанная команда (dd) тоже делает именно посекторное чтение влобешник с девайса, без разбора файловой системы.
0
Пруфлинк. Ну и по собственным впечатлениям — никогда не видел, чтобы MSD выдавал более примерно 30 МБайт/с. FS, тащемта, на больших файлах очень незначительный оверхед вносит, и скорость на них заметнее всего. На USB 1.1, опять же, выше 0.6-0.7Мбайт/с не работало.
0
Пруфлинк.
Судя по всему это кто-то из головы написал свою «имху». Никаких научных обоснований этой цифры я не вижу. Просто взятый с потолка цифирь и общие слова о больших задержках. В википедии вполне можно наткнуться на неточный материалец, специфичные точки зрения и частные мнения. Особенно в русскоязычной. Поэтому доверять можно только тому что внятно подкреплено фактами. В данном случае это должны быть или вычисления на основании спеков протокола, с пояснениями что и почему. Или же ссыль на ресурс где это проделано и получилась именно такая цифирь.

FS, тащемта, на больших файлах очень незначительный оверхед вносит
Очень зависит от ФС и оборудования. Например NTFS через FUSE на слабом девайсе легко внесет огроменный оверхед, посадив скорость в разы ;). Плюс всякая там фрагментация может быть, обращения к структурам ФС и прочая. Чтобы устранить эти далеко не тривиальные факторы которые можно довольно сильно варьировать, я читал образ девайса напрямую. Хотя ради интереса еще разок померяю пожалуй, благо это просто.
0
Ну это достаточно точно согласуется с моими наблюдениями. Возможно связано это еще с тем, что система часть полосы резервирует под себя, опять же не уверен как много пропускной способности отжирают низкоскоростные устройства (USB вроде TDMA шина, насколько я понимаю). В общем, ни разу не видел, чтобы работало хотя бы близко к полной полосе пропускния, обычно в районе половины. Возможно что роутер не резервирует 20% полосы пропускания, плюс на шине нет других устройств — вот оно и выдает на несколько мегабайт больше.
Например NTFS через FUSE на слабом девайсе легко внесет огроменный оверхед, посадив скорость в разы ;)
На больших файлах оверхед очень мал. Структуры ФС кэшируются в памяти (именно поэтому NTFS флешки/винты нельзя выдергивать не отмонтировав даже если запись не прозводилась) и файлы трансферятся на максимальной скорости, какую позволяет шина. Собсна я сравнивал даже с одним и тем же железом — USB 3.0 SS 3.5" HDD Box с винтом WD Caviar Green 750GB — на USB 2.0 виктория выдает не более 30000 КБ/с, через USB 3.0 (причем не лучший адаптер — способен обеспечить из-за недоработок и PCIEx1 1.0 интерфейса не более 40% полосы пропускания) выдает 50-75 МБ/с в зависимости от дорожки.
0
А вот и в англовики. Здесь чуть более оптимистичные данные. Вероятно, роутер раскачивает скорость возле максимума (42МБ/с, остальное оверхед шины) за счет того, что на USB висит только винт, ПК же попутно опрашивает мышку, клаву и прочие USB устройства.
0
На данный момент лучше брать что-то из tp-link 741 или 941, проц пошустрее, USB нет, но можно припаяться прямо к процу. У первого usb 1.1, у второго 2.0. Опенврт под них есть готовая, но если цеплять USB нужно самому собирать.
0
  • avatar
  • mcsa
  • 05 декабря 2011, 23:20
А почему не 1043? Недорогой, гигабит+300М, USB. У меня такой. Я, правда, вкатил на него DD-WRT и еще руки не дошли до установки дополнительного софта.
USB нет, но можно припаяться прямо к процу.
Это в каком же там корпусе проц? А то я сколько видел оных — все в BGA, фиг подпаяешься (а видел я TI AR7100 в ADSL-модеме STARNET, какие-то броадкомы в DSL-2500*, Ralink RT3050 в DIR-300/NRU и Atheros AR9132 в TL-WR1043ND).

Гм, согласно базе DD-WRT, в 941-м тот же AR9132, который у меня и который в BGA корпусе.
0
OpenWrt доставил ответы.
741: чипсет в QFP, спокойно можно запаяться. Но начиная с HW v4 там другой чипсет. Хотя на вид он QFN (можно попробовать подпаяться) и имеет USB 2.0 Host, но не совсем ясно, куда именно подпаиваться. Возможно инфа есть на страничках для других роутеров на этом чипсете.
941: Чипсет тот же, что и у 1043, а USB разведен на плате. Остается только запаять гнездо и подать на него питание — OpenWrt Wiki предлагает поставить 78L05, но можно запаять и родную схему питания, на 34063. Впрочем, стоит он как 1043, в котором USB уже запаян, а свитч поставлен гигабитный.
0
У нас (Украина) 941 и 1043 разница порядка 15уе. Деньги не большие, но все же разница есть :)
0
Ну у кого как. 941 — 1800р, 1043 — 2400р. 741 не нашел.

А скоростя по USB все перечисленные роутеры какие дают? 2.0 то 2.0, но дирка-320 у меня физически 2.5мбит/с с винта тянула (самба и dd). у остальных как?

И ещё вопрос. Кто пробывал ставить альтернативки на адсл мопеды?
0
Я брал TL-WR1043ND в DNS летом, выложил около 1900. Сейчас 941 там стоит 1799, 741 — 999. Правда, последний наверняка версии 4.x, на чипсете AR9331. А он, хотя и имеет внутре USB, но менее паябелен и еще нужно где-то выяснить, на какие пады оный USB выведен.
Так, а TL-WR1043ND сечас там стоит 2399. Забавно… С такими ценами смысл в 941-м уже появляется, если гигабит не нужен (лично я выбрал 1043 именно из-за гигабитного эзернета, так-то роутеров с USB хватает).
но дирка-320 у меня физически 2.5мбит/с с винта тянула (самба и dd). у остальных как?
Мой TL-WR1043ND по самбе выдает, говорят, до 9-11МБ/с, т.е. около сотни мегабит — на форумах DD-WRT была тема, где кто-то жаловался на медленную самбу, а затем указал способ решения этой проблемы, но я его уже забыл. У меня она не взлетела вообще — хрюшка упорно не видит роутер в сети. По вайфаю же скорость почему-то вообще не желает подниматься более 16-20 мегабит.

По поводу альтернативок — я ставил прошивку от Acorp LAN120 на STAR-NET. У них идентичное железо, и даже вебморды почти идентичны, но акорповская опенсорс, функциональней и стабильней. А всякие DD-WRT/OpenWrt вроде их даже и не поддерживают — там обычно 1-2 метра флеша и 8МБ ОЗУ.
0
Мой TL-WR1043ND по самбе выдает, говорят, до 9-11МБ/с, т.е. около сотни мегабит
МБ зачастую означает мегабит, не смотря на большую Б. Не поверю я что 100 мегабит роутер вытянет с винта, при том что ещё не всякий винт их выдаст. Вообщем 10 мегабит это заметно лучше 2.5, параллельная загрузка вообще не будет мешать (при 2.5 на тяжелых фильмах подтормаживает всё таки).

То что ось не видет сетевые диски бывает. надо во первых включить обнаружение себя в сети (парадокс), затем пару раз попробивать в ручную полное имя к ресурсу. после этого находится за милую душу и по вафле и при слабых сигналах.
0
Нет-нет, мегабайт. Даже USB 1.1 выдает порядка 5 мегабит при работе с MSD. А более-менее современные (этого века т.е.) винты выдают не менее 400 мегабит. USB 2.0 способен обеспечить порядка 250 мегабит с MSD. Скорость как правило ограничивается скоростью процессора роутера или самим линком.

Что до SMB, то оно у меня вообще работает только при благоприятной фазе луны, с вариантами «да я тут вообще один в сети!», «вот еще ноутбук есть, но не открывается», «вот десктоп, с него качается, а обратно — ни-ни». Роутер и вовсе ни один комп ни разу не видел в сети. Может я его готовлю неправильно, но впечатление чего-то, работающего в зависимости от фазы луны, он у меня производит еще с тех времен, когда я работал в КБ, где вроде как все настраивал админ.

затем пару раз попробивать в ручную полное имя к ресурсу
А как оно вообще выглядит, это полное имя?
0
//dir-320/disk0_3$ (скрытый ресурс если) например.
там у винды траблы бывают когда открытых ресурсов нет у себя, бред, но стоит что-нибудь расшарить и все пашет. Потом еще из-за нелатинницы в именах. Наличие смешанного типа открытия доступа (просто открыть доступ всем к одной папке и так же всем, но через расширенные настройки — всё, хоть систему переставляй). Это даже без участия роутеров и никсов в сети.
Сколько я не сталкивался с глюками, но закономерности до сих пор не нашел. Единственно когда на моей памяти сеть работала нормально — это у всех просто открывался доступ всем (rw права по разному можно настраивать). Как только возникают пользователи, где угодно в сети, всё хана.
0
Ну у кого как. 941 — 1800р, 1043 — 2400р. 741 не нашел.
Если поискать, 1043 можно найти в районе 2000. За 2000 железка с гигабитными портами, usb и 300Мб вайфаем — очень даже. Памяти вот правда маловато. В смысле RAM.
0
Ее расширить можно. Правда есть две проблемы — во первых, найти чип DDR SDRAM 32Mx16, а во вторых — перепаять его на многослойной плате, которую хрен чем прогреешь.
0
У меня есть чуть более годный девайс, в котором и без перепайки 128, что несколько способствует моей лени. Но вообще мне еще нужен какой-нибудь «умный гигабитный свич» и 1043 имхо вполне сгодится, будучи однозначным победителем по цена/качество на текущий момент по моему imho.

которую хрен чем прогреешь.
По хорошему для такого нужен нижний подогрев, но у меня его тоже нет (в отличие от паяльных станций которые нынче стали по гуманным ценам, подогревы таким пока что-то не очень страдают).
0
Ну, этот дешевле и распространенней все же. Хотя этот ваш rspro весьма интересен.
По хорошему для такого нужен нижний подогрев
Нинай, нищебродский подогрев из прожектора не помог. Сдул выкрутив фен то ли на 400, то ли на 450. Обратно паял уже паялом. Но всерьез опасался, будет ли после этого роутер вообще работать.
Алсо подогрев не так уж много стоит вроде, китайский термовоздушный в районе 1.5-2к есть.
0
Ну, этот дешевле и распространенней все же. Хотя этот ваш rspro весьма интересен.
По крайней мере, спеки железа заранее известны и прочая. Как бонус, для настоящих извращенцев в формате miniPCI (коего аж 3 слота) бывают не только вайфай карты, но и довольно много чего еще. От компортовых мультипортовок до плат видеозахвата, sata контроллеров и даже интелского гигабитного эзернета.

Но всерьез опасался, будет ли после этого роутер вообще работать.
А чего с ним случится то? Самой плате нагрев пофиг, если ее совсем уж жестоко не пережарить. А старый чип в общем то и не нужен по идее :). Наиболее очевидными проблемами видится шанс отодрать контактные площадки или замкнуть/не пропаять но это еще постараться надо.

Алсо подогрев не так уж много стоит вроде, китайский термовоздушный в районе 1.5-2к есть.
Любопытненько, надо будет посмотреть. Подобные эксперименты мне по вкусу.
0
А чего с ним случится то?
Ну я снес одну площадку (к счастью, NC) и по моему отклеил еще несколько, плюс изрядно нагрел плату, чип (я же его сдул с планки памяти, хотя там не пришлось так жестоко жарить) и прилежащие компоненты.
Честно говоря я даже сейчас не до конца уверен, что оно без глюков работает. Неплохо бы прогнать что-то вроде мемтеста.

Так что ежли кто еще надумает так апгрейдить — рекомендую запастись подогревом и сразу выставлять фен на хороший поток и температуру.
0
Это в каком же там корпусе проц? А то я сколько видел оных — все в BGA, фиг подпаяешься
В 1043 и так usb разъем сзади есть, так то паять его не требуется ;)
0
Так речь кагбэ о роутерах, где его нету — 741 и 941. Ну и в 941 спасает то, что разъем разведен на плате, всего лишь не запаян.
0
Мне почему-то показалось что вопрошавший о 1043 это сказал. Разве нет? У него как раз по моему чип в BGA, но т.к. юсб уже распаян, какой-то особой проблемой это не является.
0
Нет, 1043 я предллагал как альтернативу, а спрашивал насчет 741/941, которые
tp-link 741 или 941, проц пошустрее, USB нет, но можно припаяться прямо к процу
Собственно, я затем проверил в вики OpenWrt и отписался о результатах.
0
А, тогда я видимо недопонял, сорри. А кстати у 741 разве не usb 1.0 с всего лишь 12Мбит? В большинстве форумов почему-то утверждают что оно вот так. Если правда, это резко понижает его полезность.
0
В новых моделях уже 2.0. Впрочем, и 1.1 не сказать чтобы совсем плохо. По крайней мере, намного лучше, чем ни шиша.
0
D-Link DIR-320 — слишком слабая машина… для экспериментов лучше взять что-то типа netgear stora. ибо гигагерцный процессор и 256/256 Мб памяти (RAM/FLASH) дают на порядок больше возможностей… А роутер на то и роутер, чтобы инет домашней сети раздавать… веб-сервер падает уже примерно 10 подключениях(проверено на торрент-треккере для небольшой сети)… а если его использовать еще и как медиасервер — то и с тремя подключениемя на веб-сервер справляется еле-еле… Толи дело сетевой накопитель… осталось только прикрутить к нему консоль через последовательный порт… и будет полностью готовый сервак…

П.С. В настоящее время на подобном девайсе развернуто более 20 дополнительных сервисов… все было собрано из исходников прямо на накопителе из репозитариев федоры.
Прикручена сетевая загрузка операционной системы с использованием технологии PXE.(загружаем комп без винча вообще =))
Установлены конвертеры радио для вещания из тырнета в локальную сеть(10 каналов).
Установлены конвертеры для вещания 4х телевизеонных каналов из IGMP в HTTP (После этого dir-320 спокойно их кажет по вайфаю, сам IGMP на нем работает плохо)
После развертывания X-сервера стало возможным управлять машиной в графическом интерфейсе… по сети естесно…
и еще много чего интересного =)
может быть потом и напишу об этом статейку =)

П.П.С. Данный девайс был куплен «сломанным»… типа на запчасти всего за 5$… через 15 минут все работало как новое… сам себя перепрошил из инета…
0
для экспериментов лучше взять что-то типа netgear stora. ибо гигагерцный процессор и 256/256 Мб памяти (RAM/FLASH) дают на порядок больше возможностей…
Из него к сожалению роутер не получится вообще. А openwrt просто великолепен именно как роутер. Особенно последние RC-версии.
0
Я это к тому, что дир-320 и так работает на пределе… особенно если к нему подключено много машин… вот попробуйте с двух компьютеров запустить просмотр он-лайн видео и набрать на роутере
# top
0
Я это к тому, что дир-320 и так работает на пределе… особенно если к нему подключено много машин…
Так что вы хотите? Это железо отстало на пару поколений от современных чипов. Раньше этот броадком был в топовых роутерах а сейчас это low end, для тех кто хочет продавать старое решение хоть в каком-то виде. Вот поэтому и имеет смысл покупать уже что-то типа 1043, или (если жаба не давит) — что-то типа wndr3700. Они в разы быстрее на многих задачах.
0
А за счет чего? Казалось бы, тот же MIPS, частоты ненамного выше.
0
почему не написано что нужно корень копировать на флэшку? без этого у меня лично умирал вебиф пока не набрёл на другую статью(при заходе на 192.168.0.1 тупо писал что не найдена папка что то такое)… там как раз было всё как надо всё робит…
я ставил на TP-LINK mr3420 цель сделать видеорегистратор над входной дверью но что то у меня не получается motion завести… камера logitech c 270 через mjpg-streamer поток идёт нормально без затупов и так далее в HD качестве которая она и вывозит… и проц загружен 0-6% НО вот с motions бьюсь не могу понять чё ему надо… кто более шарит гляньте… ps motion собирал через make menuconfig

# motion -n
[0] Processing thread 0 — config file /etc/motion.conf
[0] Unknown config option «ffmpeg_cap_new»
[0] Unknown config option «ffmpeg_cap_motion»
[0] Unknown config option «ffmpeg_timelapse»
[0] Unknown config option «ffmpeg_timelapse_mode»
[0] Unknown config option «ffmpeg_bps»
[0] Unknown config option «ffmpeg_variable_bitrate»
[0] Unknown config option «ffmpeg_video_codec»
[0] Unknown config option «ffmpeg_deinterlace»
[0] Unknown config option «movie_filename»
[0] Unknown config option «timelapse_filename»
[0] Unknown config option «sql_log_image»
[0] Unknown config option «sql_log_snapshot»
[0] Unknown config option «sql_log_mpeg»
[0] Unknown config option «sql_log_timelapse»
[0] Unknown config option «sql_query»
[0] Motion 3.2.11.1 Started
[0] Thread 1 is from /etc/motion.conf
[1] Thread 1 started
[1] cap.driver: «uvcvideo»
[1] cap.card: «UVC Camera (046d:0825)»
[1] cap.bus_info: «usb-ar71xx-ehci-1.3»
[1] cap.capabilities=0x04000001
[1] — VIDEO_CAPTURE
[1] — STREAMING
[1] Supported palettes:
[1] 0: YUYV (YUV 4:2:2 (YUYV))
[1] 1: MJPG (MJPEG)
[0] motion-httpd/3.2.11.1 running, accepting connections
[0] motion-httpd: waiting for data on port TCP 8080
[1] index_format 2 Test palette MJPG (320x240)
[1] Using palette MJPG (320x240) bytesperlines 0 sizeimage 51200 colorspace 00000008
[1] VIDIOC_G_JPEGCOMP not supported but it should be (does your webcam driver support this ioctl?)
[1] found control 0x00980900, «Brightness», range 0,255
[1] «Brightness», default 128, current 128
[1] found control 0x00980901, «Contrast», range 0,255
[1] «Contrast», default 32, current 32
[1] found control 0x00980902, «Saturation», range 0,255
[1] «Saturation», default 32, current 32
[1] found control 0x00980913, «Gain», range 0,255
[1] «Gain», default 0, current 0
[1] mmap information:
[1] frames=4
[1] 0 length=51200
[1] 1 length=51200
[1] 2 length=51200
[1] 3 length=51200
[1] Using V4L2
[1] Resizing pre_capture buffer to 1 items
Not a JPEG file: starts with 0x05 0x22
Not a JPEG file: starts with 0x05 0x22
Not a JPEG file: starts with 0x05 0x22
Not a JPEG file: starts with 0x05 0x22
Corrupt JPEG data: 1 extraneous bytes before marker 0xd4
[1] Error capturing first image
[1] Started stream webcam server in port 8081
Corrupt JPEG data: 1 extraneous bytes before marker 0xd0
Corrupt JPEG data: 1 extraneous bytes before marker 0xd3
Corrupt JPEG data: 2 extraneous bytes before marker 0xd4
Corrupt JPEG data: 2 extraneous bytes before marker 0xd3
Corrupt JPEG data: 1 extraneous bytes before marker 0xd5
Corrupt JPEG data: 1 extraneous bytes before marker 0xd7
Corrupt JPEG data: 1 extraneous bytes before marker 0xd3
Corrupt JPEG data: 1 extraneous bytes before marker 0xd6
Corrupt JPEG data: 2 extraneous bytes before marker 0xd4
Corrupt JPEG data: 2 extraneous bytes before marker 0xd6
Corrupt JPEG data: 1 extraneous bytes before marker 0xd2
0
О какая тема. Не заметил :)) Давно такой же фигней страдаю. Дома стоит DIR-615 с 64 метрами памяти (на openwrt wiki даже инструкцию наваял как память проапгрейдить и usb впаять), usb и openwrt со всеми свистелками и перделками типа i2c (датчики температуры и влажности дома и на улице), GPIO, vpn (до обеих работ), iptv маршрутизацией (мультикаст), файваем и т.п. Планирую на такой отдельной коробочке всю домашнюю автоматизацию держать.

В столе лежит запасной WR941ND (тоже 64 метра, usb и т.п.). На работе WR1043ND с 64 метрами памяти, openwrt, iproute2 — разруливает интернет (5 pppoe каналов + 1 pptp резервный на 25 мегабит в сумме), нат, полиси маршрутизация, шейпинг каналов, фаервол, openvpn). Тема просто шикарная.

Плюс еще делал километровый вай-фай линк между двумя DIR-615 с openwrt на работе.

На сегодняшний день 1043ND вне конкуренции прежде всего потому, что нет ахулиарда сильно отличающихся аппаратных реализаций как на DIR-615 например, имеется гигабитный свитч с поддержкой вланов на борту и адекватный фай-вай.
0
чё за срань не могу понять почему я взял genius islim 1300v2 и она в motion норм работает но у неё ОБРЫГАНОЕ качество невозможно смотреть на это порно… а logitech c 270 не в какакую — пишет ту фигню что я сверху писал… и причём обе эти сраные камеры есть в списке поддержки UVC дров… ктонить может прокоментировать ?? что за беспредел?
0
сделал вот так
v4l2_palette 6
заработало тока тупит по ЛЮТОЙ!!! :( боян
0
А не подскажет ли сообщество почему билдрут каждый раз при компиляции OpenWRT качает что-то из инета? В частности ncurses, хотя этот пакет у меня установлен в системе. И можно ли как-то единожды закачать эти пакеты, чтобы потом не тратить на них время?
0
погу предположить что надо configure запустить повторно. мож оно не в курсе досих пор, а мож и не та версия которую просит. не сталкивался с таким.
0
Еще одна проблема возникла уже при настройке роутера. Для подключения инета мне нужно клонировать MAC-адрес.

Нужный адрес введен, настройки сохранены, роутер перегружен. Но DHCP провайдера не выдает IP, причину понять сложно, симптомы такие же как и неправильный MAC. Может есть какие-то хитрости с клонированием MAC'а, о которых я не знаю?
0
тоже, имея DIR-300, задумывался о выкрутасах, расширяющих его функционал (а для начала — хотя бы пропускную способность).

в итоге за 2,5тыр купил miniITX мать с D425 интеловским процем, за 1тыр miniITX-корпус с 60Вт-питальником, винт и доп.сетевка уже были, собрал, поставил ХР, WinRoute, GeneFTP, торрент-клиент, настроил и радуюсь. а модем кстате включил в режиме точки доступа для домашней локалки.

деньги примерно те же, что и при покупке нормального модема, но насколько больше мощности и возможностей для настройки и издевательств!.. плюс такую конфигурацию хрен положишь торрент-клиентом (что для железных модемов не редкость).
0
за 1тыр miniITX-корпус с 60Вт-питальником
Гм, дешево. Я когда присматривался они под пару тыр были.
А вообще, я hp-шный микросервер хочу. Все в комплекте и корпус предусматривает установку 4 винтов.
Но задачи роутинга и вайфая я бы все равно на железке оставил.
0
Если речь про HP Prolian Microserver (HP36L например) то я накололся — 4 винта, да. Только одна из корзин уже сразу занята системным, свободно три.
0
да ну, какие 4 винта, зачем столько. они и электричество жрут, и греются, и шумят. и стоят в сумме как один какой-нибудь трехтеррабайтник (которого за глаза).

алсо, с ценами кажись наврал: корпус 1.5 тыр, мать 2 тыр.
0
каждому свое… заказчик, которому брал этот HP — держит видеоархив на жестких дисках… стопочка 2ТБ винтов. сразу все корзины и заняли.
0
я от видеоархивов отказался, когда подключил интернет 10мбит))
самому террабайтник нужен чтобы в провайдерскую локалочку раздавать прон страждущим — и им профит, и мне денежка)
0
А что делать когда инет отваливается? ведь как раз тогда и возникает желание киошку поглядеть :)
0
10мбит не спасают от «хочу пересмотреть этот фильм и обязательно в HD и немедленно» :)
0
мне эти причуды неведомы)
а «что посмотреть» загодя потихоньку скапливается или в медиаплеере, или на вот вышеописанном серванте. пару десятков гиг хватает
0
и стоят в сумме как один какой-нибудь трехтеррабайтник (которого за глаза).
Не, я 4 трехтерабайтника и хочу :) Ну или три, если под систему выделить отдельный винт. Собсна у меня сейчас в компе в сумме стоит 3ТБ (честных, а десятичных и вовсе 3.32). Свободно… Ну гиг сто, после того как выпихнул архив NDS м GBA ромов на внешний хард.
Если речь про HP Prolian Microserver (HP36L например) то я накололся — 4 винта, да
Именно про него.
0
… а теперь подумай, что будет, если этот винт гикнется ;)
0
Это проблема, да. Именно поэтому я хочу соединить их в RAID 5. Ну и заменяю не дожидаясь выхода из строя.
0
А я спокойно дожидаюсь пока они полностью копыта отбросят. Бекап только важных данных периодический делаю (болванки двд хватает для этого). А всё остальное не столь критично, можно повторно найти в сети.
0
Каждому свое. Сбэкапить на болванки 3ТБ данных достаточно затруднительно. Проще и дешевле снять винт за пару лет до его выхода из строя и хранить на нем.
0
Добрый день.
Есть девайс dwl-2100ap ver. A3 это обычная точка доступа. Поднял openwrt настроил dhcp и firewall, но не могу сделать казалось бы простую вещь, изменить MAC адрес на eth0.
При попытке изменения MAC выдает «ifconfig: SIOCSIFHWADDR: Operation not supported», как я понимаю программным путем не удастся поменять, может кто знает как его изменить
0
такой вопрос — длительное время пытаюсь собрать ядро для dir-320, первоначальные проблемы были(и остаются) в том что изменения произведенные по SSH не сохраняются!!! — но сейчас столкнулся с более странной проблемой после обновления исходников и сборке нового ядра (даже с конфигом по умолчанию) ВООБЩЕ не работает ни SSH ни TELNET просто не открыты порты!!! кто подскажет вчем может быть пробема???
0
Пичаль,

Веб сервер на zyxel keenetic 4g не поднимается. Точнее сам lighttp работает и даже выдает статичный index.html, а вот в связке с пхп не пашет — error 500 :(
0
При этом в логи ничего не говорит. может я правда через жопу вывод в лог настроил…
0
А что в скрипте, может какого-то модуля пхп не установлено?
Попробуй проверить работоспособность самого пхп (echo '<?php phpinfo();' | php5).
Покажи что получится когда запустишь)
0
Все, разобрался :) Оказалось все до идиотизма просто — я тупо скопипастил (вот асёл!) из статьи путь /usr/bin/php-cgi, а у меня перед этим должно стоять еще /media/DISK_A1/system (пакеты на внешнем накопителе живут и работают). По этому никакого пхп он найти не мог и жаловался.

Вот так
0
А вот MySql в пакетах для моего роутера не оказалось. Собирать не умею. А без него не пашет вордпресс.

Теперь неспешно разыскивается cms для бложека, которой не нужен майскуль
0
А ядро какое выбирал? Вроде на 2.6.32 был mysql-server. Мона ещё это попробовать.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.