Jump to content
Local
darkavenger

Stargazer на D-link DIR-320

  

48 members have voted

  1. 1. Stargazer на роутере

    • Стоит попробовать
    • Бредовая идея
    • Попробую, отпишусь


Recommended Posts

Доброго времени суток

 

Писал сюда

http://www.hub.ru/forum/index.php?showtopic=35448

 

Поставил компилятор прямо на D-link DIR-320, подключил своп (без него для компиляции не хватало памяти), сборка и компиляция заняла около 7 часов, авторизатор компилируется минут 10, архитектура там mipsel.

Stargazer запускается, правда все пути пришлось изменить, чтобы работал из одного каталога (вроде портабельной сборки, кстаии изменение пути к модулям в конфиге результата не дает), т.к. часть файловой системы там read only. Тестирую со вчерашнего утра, вроде пока работает. Клиентов подключается немного, мелкая сетка человек на 10, настроена динамическое изменение правил шейпера - в зависимости от числа подключенных - в моей конфигурации шейпер больше ресурсов ест даже чем сабж.

Проц грузит 50-70%, памяти отъедает половину, правда кажется что как торрент-клиент (а этим раньше занимался мой DIR) одновременно работать не сможет - ресурсов не хватит, надо более мощный роутер типа Netgear 3500L.

Share this post


Link to post
Share on other sites

На самом деле потребления ресурсов ниже как оказалось - много отъедал динамический шейпер, подкорерктировал, в итоге 30% ресуров с включенным stargazer, шейпером на 4 мбит канале при десятке пользователей.

 

Вижу что особенно данное решение никому не интересно, настаивать не буду =)

Если у кого то будет интерес пользоваться Stargazer на дешевых роутерах-мыльницах с DD-WRT на борту - пишите в личку, подскажу как что настроить.

Share this post


Link to post
Share on other sites

а в пакет собрать не пробовали? :huh:

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

Share this post


Link to post
Share on other sites

:) Вот это издевательство над железом!!!

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

Я бы и сам почитал более подробно, что как...

Share this post


Link to post
Share on other sites

Вот честно - сильно я сомневаюсь, что сие потянет серьёзную нагрузку.

Интересно - не спорю, я как техник по натуре от такого применения DIR-320 вообще балдею и кулибину этому большой поклон.

Но с точки зрения простоты решения и практичности мне б например было бы легче на каком-нить стареньком пентиуме СТГ поднять. :)

А автора можно бы было попросить для будущих поколений выложить сюда пошаговое решение, чтобы никому не пришлось морочиться.

Может быть даже прошивку готовую ил конфиг. А? :)

Share this post


Link to post
Share on other sites

Ну, почему!!!

Если имеется например 2-3-5 юзеров, чем этот вариант плох? Я вообще в восторге от такого!!! :)

Жду статью!!!

Share this post


Link to post
Share on other sites

>легче на каком-нить стареньком пентиуме СТГ поднять

Он у меня на стареньком пентиуме и был, надоело чистить, надоел шум, надоело думать что вдруг завра надо будет материнку новую древнюю искать с невздувшимися конденсаторами :) при всех возможных недостатках такого решения - это кайф когда нет движущихся, жужжащих и засасывающих подъездную пыль частей, требующих периодической чистки в самое неподходяще время, начинающих сбоить из-за вздувшихся от времени конденсаторов и прочих радостей, и потребляющих от розетки раз в 10 больше электричества.

 

Алгоритм вкратце такой:

1. На роутер устанавливается Linux, например DD-WRT

2. Устанавливаются нужные вам пакеты

3. Устанавливаются пакеты buildroot, make, busybox

4. Подключается swap с помощью busybox

5. скачивается stargazer и по его инструкции компилируется обычным образом

6. В процессе установки (make install) смотрим на что ругается (куда не может записать файлы), создаем копии этих веток ФС на USB и подключаем из на зипись вместо исходных вот так например

mount -o bind /jffs/usr/lib /usr/lib, добавляем все эти команды в /jffs/etc/config/optware.startupб чтобы при загрузке эти ветки ФС тоже подмнялись перед стартом stargazer

7. Добавляем в /jffs/etc/config/optware.startup запуск stargazer

 

P.S. Т.к. мой DIR-320 похоже что окончательно ушел под stargazer-шлюз, озаботился бесшумной торрент-качалкой (DIR как раз этим и занимался в предыдущей жизни), взял существенно более мощный Netgear 3500L, поставил на него linux, торрент-клиент и заодно протестировал работу со stargazer - летает вообще как самолет, ибо больше памяти, мощнее процессор, гигабитная сеть.

Думаю юзеров на такой посадить можно весьма немало.

 

Кстати перенос stargazer с DIR-320 на Netgear 3500L для теста делал простым копированием бинарников, все работает, видимо из-за того что ОС одна и таже.

В пакет бы завернуть это все дело, было бы удобно через менеджер пакетов ставить. Попробую.

 

Вот тут выложил скомпилированный под роутеры с dd-wrt/optware stargazer в виде портабельной сборки, с рабочими скриптами фаервола и шейпера

Share this post


Link to post
Share on other sites

darkavenger, тоже интересовала подобная идея !!! но боялся попробовать :)

Такое решение 100% имеет право жить !

 

Можно несколько вопросов:

Куда пишется статистика ? если на флешку то как флешка переживет в перспективе такую нагрузку ?

Как ведет себя старгайзер после перезагрузки?, ведь время слетает !

 

Какие варианты бекапирования данных ?

Share this post


Link to post
Share on other sites

>Куда пишется статистика ? если на флешку то как флешка переживет в перспективе такую нагрузку ?

У меня статистика пишется на флешку. Сомнений по надежности лично у меня нет, т.к. до этого, когда у меня stargazer крутился на древнем ящике, там тоже не было жесткого диска (переходник IDE-CF) и за 2 года проблем не было. Да и ничего не мешает вместо флешки воткруть в роутер usb-hdd.

 

>Как ведет себя старгайзер после перезагрузки?, ведь время слетает !

Время при старте роутера синхронизируется по инету. В стартовом скрипте, который запускает в конце stargazer можно дополнительно для надежности добавить ntpdate.

 

>Какие варианты бекапирования данных ?

Ровно такие же, как на "ящике". На вторйо раздел, на вторую флешку, на usb-hdd (в этом случае потребуется usb-хаб или картридер - например CF карта в нем для системы, логов и свопа, а SD под бэкапы, таким образом можно вставлять и вынимать бэкапное устройство без приостановки работы). Ну или по scp или ftp на внешний хост.

Share this post


Link to post
Share on other sites

>Куда пишется статистика ? если на флешку то как флешка переживет в перспективе такую нагрузку ?

У меня статистика пишется на флешку. Сомнений по надежности лично у меня нет, т.к. до этого, когда у меня stargazer крутился на древнем ящике, там тоже не было жесткого диска (переходник IDE-CF) и за 2 года проблем не было. Да и ничего не мешает вместо флешки воткруть в роутер usb-hdd.

 

...

Два года на одной флешке? А от какого производителя флешка? Были ли случаи отказов из-за битых секторов? Сколько на ней бед-блоков появилось за такой срок?

У меня на другом проекте используется похожее решение - промышленный комп с ФС на флешке: корень в r/o и раздел под базу со статистикой в r/w. За, примерно, 2 года эксплуатации из 40 штук умерла одна от Transcend и одна от Kingston (на 4 и 2 Гб соответственно). Область с корнем в порядке, а та куда проводилась запись восстановлению не подлежит.

Share this post


Link to post
Share on other sites

Производитель флешки Silicon Image, CF на 4 Gb, вся как r/w. После того как перешел на Dir-320+СГ, ящик остановил, флешку проверил - все читается, проблем вроде нет. В Dir-320 воткнул обычную USB, посмотрим сколько на ней проживет.

Share this post


Link to post
Share on other sites

Собери ПАКЕТ ЦЕНЫ ТЕБЕ НЕ БУДЕТ!!!! Чисто бин файл для того что бы прошить!!! Сайтик тебе напишем!!! Я те говорю вот тогда не просто знаменитостью станеш а как oleg firmware буд в гугле находиться. Это как раз законченное решение того что все хотели. Еще бы что бы был мастрер по настройке соединения вот вообще класс был бы!!!

 

Удачи в разработе!! Я вот пытался не вышло. Просто надо более 5 мин. А их пока небыло!! :D))

Share this post


Link to post
Share on other sites

Можно ещё с самими флешками поколдовать, есть специальные проги для их тонкой настройки.

У меня как-то одна "Transcend" глючить начала дико, так я её "вылечил". Теперь правда пишется на неё медленно, но работает ведь!

Кому интересно - вот сайт по теме, может пригодится.

Share this post


Link to post
Share on other sites

собрать в прошивку не смогу, не знаю как, да и весит все немало, не войдет думаю :P Да и так все просто вроде ставится, доработал пакет установки, portable:

 

1) прошиваете на роутер dd-wrt с поддержкой usb (пробовал на роутерах D-link Dir-320, netgear 3500L)

2) настраиваете интернет, роутер в режим "маршрутизатор" (не "шлюз", иначе будет пускать мимо stargazer'а), в разделе usb - автомонтирование устройств включить в /jffs, автозапуск после монтирования скрипта /jffs/etc/config/optware.startup

2) форматируете флешку в ext3

3) распаковываете на нее архив (в линуксе, чтобы сохранить права на файлы и признаки исполняемости)

stg-2.405.9.8.mips.portable.tar.zip

4) правите под себя файлы:

/opt/billing/etc/stargazer/rules

/opt/billing/etc/stargazer/stargazer.conf

/opt/billing/var/stargazer/admins

/opt/billing/opt/firewall

/opt/billing/opt/shaper.sh

5) в крон через веб интерфейс прописать

* * * * * root /opt/billing/opt/stargazermon

6) далее как обычно, через админку заводите юзеров и проч.

7) тут /opt/billing/opt разные полезные скрипты (статистика на консоль, корректное выключение, просмотр статистики шейпера и проч.)

8) уже установлен в сборке mc, bash, perl

stg-2.405.9.8.mips.portable.tar.zip

Share this post


Link to post
Share on other sites

В Dir-320 воткнул обычную USB, посмотрим сколько на ней проживет.

 

Прожила флешка два месяца :P noname qumo 4 гига

usb хард там избыточен, как по объему (меньше гига всей инфы), так и по

энергопотреблению

Пока что временно разбил флешку 4 гига на 4 раздела ext3 по гигу,

смонтирован первый в работу, остальные по очереди ночью монтируются и на них

сливается данные первого раздела.

При выходе из строя раздела 1 в работу планируется последовательно

монтироваться остальные.

Но как то некрасивым мне кажется такое решение :P

Share this post


Link to post
Share on other sites

по памяти кстати у сабжа требования весьма скромные, из 32 Мб около трети всего отъедает, смонтированный своп был востребован только при нативной компиляции, в процессе же работы никогда.

Share this post


Link to post
Share on other sites

Подскажите, вытянет ли он в таком состоянии 25 пользователей?

 

И, еще, я так понял без USB вообще никак не обойтись? Или все-таки в планах целиковая прошивка будет?

Share this post


Link to post
Share on other sites
В Dir-320 воткнул обычную USB, посмотрим сколько на ней проживет.

...

Прожила флешка два месяца

как-то мало флеха прожила, вы своп на ней гоняли что ли? у людей годами живут флешки..

а почему форматировали в ext3? тогда уж ext2, потому как ext3 никакого преимущества не имеет. или уж ext4 без журнала, это будет чуть быстрей... ну и монтировать с noatime.

 

гораздо интереснее было бы взять openwrt, выкинуть оттуда все лишнее (вплоть до gui, "ненужных" модулей iptables и т.п.) и собрать его в прошивку без всяких флешек. статистику или что там еще можно хранить на nfs-шаре..

Share this post


Link to post
Share on other sites

>Подскажите, вытянет ли он в таком состоянии 25 пользователей?

 

Вытянет, если не все из них торрентоманы, Netgear 3500l точно вытянет 25

 

>И, еще, я так понял без USB вообще никак не обойтись? Или все-таки в планах целиковая прошивка будет?

 

Без USB не обойтись

Share this post


Link to post
Share on other sites

Огромное спасибо за проделанную работу. Это то решение которое я очень долго искал. У меня есть один вопрос. А такая старая версия Stargazera чем обусловлена? Более новую невозможно скомпилировать на DD-WRT? Я попытался установить (скомпилировать) последнюю, но ничего не вышло. Не идет дальше этапа ./build. Как я понял не хватает библиотеки libexpat, а подсунуть ее так и не получилось.

Share this post


Link to post
Share on other sites

Огромное спасибо за проделанную работу. Это то решение которое я очень долго искал. У меня есть один вопрос. А такая старая версия Stargazera чем обусловлена? Более новую невозможно скомпилировать на DD-WRT? Я попытался установить (скомпилировать) последнюю, но ничего не вышло. Не идет дальше этапа ./build. Как я понял не хватает библиотеки libexpat, а подсунуть ее так и не получилось.

Возможно. Нужно подсунуть libexpat.so в /usr/lib, expat.h и expat_external.h в /usr/include.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×