Сборка OpenWRT с accel-pptp.

0
ГОТОВО: Ваш голос учтен!

    Цены на интернет постоянно падают, вот и у меня провайдер поднял скорость, с 5Мбит/с до 10Мбит.с, за ту-же цену. И все бы ничего, да только вот скорость как была 5Мбит/с так и осталась, и виноват в этом был роутер в котором стояла прошивка OpenWRT. Дело в том что провайдер предоставляет доступ в интернет через pptp туннель, а стандартная реализация pptp в Linux работает в юзерспейсе и просто-напросто не хватает производительности железа. Немного погуглив я узнал, что есть выход, оказывается существует "реактивная" реализация под названием accel-pptp, которая работает в kernel-space(Таненбаум неодобряэ :)). Вот и решил я собрать OpenWRT с accel-pptp. Собирал я прошивку для роутера DLink DIR-320. Кстати, accel-pptp приняли в ядро начиная с версии 2.6.37 но LuCi всеравно юзает обычную версию.
Итак теперь сборка:

Сначала получаем исходники.

svn co -r 28289 svn://svn.openwrt.org/openwrt/trunk openwrt

Почему именно ревизия 28289 я незнаю :) просто она у меня собралась. Вы конечно можете стянуть более свежую версию, но с версией ядра >= 3 у меня accel-pptp не заработал.

Теперь переходим в директорию с исходниками.

cd openwrt

Создаем директорию в которой будут находиться дополнительные пакеты.

mkdir custom-feed

Копирум конфигурационный файл.

cp feeds.conf.default feeds.conf

В файле feeds.conf раскометируем строчку #src-link custom /usr/src/openwrt/custom-feed
и прописываем вместо /usr/src/openwrt/custom-feed путь к директории custom-feed которую мы только-что создали.

Качаем отсюда пакет
https://dev.openwrt.org/ticket/9605
и распаковываем его в директорию custom-feed
Ну собственно дальше идет процесс сборки.

./scripts/feeds update -a && ./scripts/feeds install -a
make prereq && make tools/install && make toolchain/install
make menuconfig
make V=99

Во время конфигурирования нужно выбрать свою архитектуру и модель wifi устройства, а так-же необходимо выбрать пакет ppp-mod-pptp, в конфигураторе <M>напротив пакета означает, что он будет собран отдельно и не включен в прошивку(его потом можно будет доустановить с помощью opkg), <*>означает, что пакет будет включен в прошивку и достаточно только прошить роутер.

Ну все после сборки прошивка и пакеты будут находиться в директории openwrt/bin/архитектура_роутера/

После прошивки нужно будет создать файл /usr/sbin/pptp иначе из LuCi не получится настроить pptp его просто не будет в списке.

touch /usr/sbin/pptp

И на последок выкладываю прошивку для архитектуры brcm47xx для моего dir-320.

openwrt-brcm47xx-squashfs.trx 2.5MiB
MD5: 307d089dfae336152e5cf8e71be22c1c

ppp-mod-pptp_0.8.5-3_ar71xx.ipk 18.2KiB
MD5: 54d6d3e51936aa2cd0b5f915c90d5108

openwrt-ar71xx-generic-wrt160nl-squashfs-sysupgrade.bin 2.9MiB
MD5: 682dd72b881ce009877777baf856b36d

  • 29 октября 2015 г. 15:19. Posted by Жрец Храма Цитировать #233

    надо заинглишить ))

    блин как же все сложно..у тя не роутер,а лего какой-то ))
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #237

    Ну да, OpenWRT еще то лего, зато я могу установить туда много чего интересного.

    Я могу установить вебсервер или подключить винт и качать торенты, могу установить астериск и заделать мини АТС, могу.. вообщем могу почти все то, что может обычный комп с линуксом ;)
  • 29 октября 2015 г. 15:19. Posted by Жрец Храма Цитировать #239

    чем-то напомнило часы-духовку-реактор-стиральную машину ))
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #334
    Need Help А не могли бы Вы помочь собрать подобную сборку для Linksys wrt160nl?
  • 29 октября 2015 г. 15:19. Posted by Жрец Храма Цитировать #337
    переживем праздники,тогда глянем..а в чем конкретно заминка?
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #338
    Need Help Не понимаю что делать дальше... с 3 попытки собралось, точнее с 3 попытки сборики ожил рутер, но без файвай =) ну и не понял как конфигурировать PPTP со статическими адресами для проверки то ли я сделал =)
  • 29 октября 2015 г. 15:19. Posted by Жрец Храма Цитировать #340
    к понедельнику будет..а пока -С рождеством!
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #341
    Need Help Жрец_Храма спасибо вам, буду ждать
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #342
    wifi Для работы файфая нужно при сборке включить пакет kmod-ath9k . А вообще, для этого роутера можно выбрать модель в конфигураторе и все нужные пакеты включатся автоматом кроме ppp-mod-pptp конечно, его только вручную.
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #343
    Need Help Где он лежит по точнее... =\
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #344
    Target System --> (X) Atheros
    Target System --> (X) Atheros AR71xx/AR7240/AR913x/AR934x
    Target Profile --> (X) Linksys WRT160NL
    Kernel modules --> Wireless Drivers --> <*> kmod-ath9k
    Network --> <*> ppp
                <*>   ppp-mod-pppoe
                <*>   ppp-mod-pptp
                < > pptp
    LuCI --> Collections --> <*> luci

    Как-то так. И все должно заработать ;)
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #345
    У меня кстати не собирается, наверное в арче слишком новый libstdc++.
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #346
    Need Help Хм, а у меня меню_конфиг совершенно другой... с кучей опций и вот я в нем лазил лазил, так и не нашол где же там ppp-mod-pptp =(
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #347
    И у меня куча опций. В самом начале меню есть раздел Network в нем есть пакет ppp и зависящие от него пакеты ppp-mod-pppoe, ppp-mod-pptp и еще что-то.
    Если пакета ppp-mod-pptp нету, значит что-то сделал не так.
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #348
    Need Help В нетворке ppp есть ppp-pppoe но нет pptp, что куда не так тыкнул не пойму, в конфце make prereq && make tools/install && make toolchain/install проскакивает строчка про accel-pptp...
    А какой путь к custom-feed нужно указывать? Я указал: /home/ruslan/wrt160nl/custom-feed туда же разархивировал пакет, туда же закачались исходники всмысле в wrt160nl... собирал под убунтой...

    • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #350

      RuSlan писал:
      в конфце make prereq && make tools/install && make toolchain/install проскакивает строчка про accel-pptp...
      А что именно пишет про accel-pptp?
      Раз пишет то таки находит пакет значит путь правильный.
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #349
    need help попробывал еше раз собрать... в Network в ppp только:
    <*> ppp........................................................... P│ │
    │ │ < > ppp-mod-pppoa............................................... P│ │
    │ │ <*> ppp-mod-pppoe............................................... P│ │
    │ │ < > ppp-mod-radius............................................. RA│
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #353
    У меня оказывается завалялся пакет ppp-mod-pptp_0.8.5-3_ar71xx.ipk .
    Есть еще разные пакеты для этой архитектуры, если что спрашивай.
    • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #354
      Вот терь точно хелп Билд собрался на 29712, ppp-mod-pptp есть.
      А вот как его сконфигурировать по ssh не пойму.. кстати первый раз зашол по телнету, сменил пасс, терь телнет упал тоже О.о что делать что бы поднять инет по pptp на нем через ssh? wi-fi в ауте (ath9k стоит), dhcp в ауте
      PS: хотя бы как откатить на свою родную прошивку (по tftp тока в состоянии кирпича получалось) на комадну tftp не реагирует по ssh, а там дальше буду читать с чем есть этот openWRT =)
      • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #355
        Нужно было включить пакет
        LuCI --> Collections --> <*> luci
        тогда-бы все легко и непринужденно настраивалось через web-интерфейс.
        SSH доступен только после смены пароля, тоесть в твоем случае он какраз и должен работать
        А чтобы поднять pptp нужно конфиг править
        в /etc/config/network добавь

        config 'interface' 'inet'
                option 'proto' 'pptp'
                option 'username' 'mylogin'
                option 'password' 'mypass'
                option 'keepalive' '10'
                option 'server' 'x.x.x.x'
         
         

        в /etc/ppp/options.pptp у меня следующее

        noauth
        nobsdcomp
        nodeflate
        idle 0
        defaultroute
        maxfail 0
         
         

        Но лучше все-же собрать с luci.
      • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #356
        Кстати, а какое ядро? У меня на третьем ядре pptp не захотел работать. Сейчас у меня 2.6.39.2
        • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #357
          а где смотреть ядро?....
          по конфигу  network
          добавил в интрейфес wan
          proto - static, ipaddr, netmask, gateway и dns указаные провайдером
          добавил то что ты сказал со своим серверм пассом и паролем, инета нет.
          как перешить через ssh если пересобрать?
           
          PS: если набрать ifconfig интерфейса inet нету или так и должно быть?
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #358
    Сначала нужно скопировать образ на роутер
    scp /home/blablabla/openwrt-ar71xx-wrt160nl-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/openwrt-ar71xx-wrt160nl-squashfs-sysupgrade.bin
    затем зайти на него по ssh
    ssh root@192.168.1.1
    ну и прошить
    sysupgrade -n /tmp/openwrt-ar71xx-wrt160nl-squashfs-sysupgrade.bin
    параметр -n сбрасывает настройки на дефолтные.
    Главное дождаться конца прошивки :), я не помню роутер перезагрузится сам или его нужно будет перегрузить. Короче если появится приглашение терминала root@OpenWrt:~# перезагрузиш его.
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #361
    Я прикрепил к статье прошивку на wrt160nl с luci и accel-pptp.
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #365
    не подымается что-то инет =\
    в нетворк добавил интерфейс инет, прописал все, в option.pptp 1 в 1 как у Вас...
    Sep  8 15:50:52 OpenWrt daemon.err pppd[1441]: File not found
    Sep  8 15:50:52 OpenWrt daemon.err pppd[1441]: Couldn't load plugin pptp.so
     
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #366
    В статье прикрепил сборку с веб интерфейсом .
    После прошивки нужно зайти на роутер по ssh и создать файл /usr/sbin/pptp

    touch /usr/sbin/pptp
    А потом в вебе создать интерфейс и выбрать протокол pptp.
     
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #367
    Ну что? Получилось? Мне же интерено :)
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #381
    Увы не работает Инет не подымается... я уже не знаю что не так делаю...
    Sep  8 16:08:05 OpenWrt daemon.err pppd[4503]: File not found
    Sep  8 16:08:05 OpenWrt daemon.err pppd[4503]: Couldn't load plugin pptp.so
    Но почему то меня больше удивляет то что, если с опенврт вернуть родную прошивку причем прошивал через ssh с параметром -n, настройки сами возврашаются (настройка инета и вайфая)
  • 29 октября 2015 г. 15:19. Posted by Цитировать #387
    О великие глупцы! помогите курнуть план! сейчас живу в бомбоубежище/ использую на ЭВМ L2PT интернет. как этот инет раздавть через D-Link DWA-510 Wi-Fi адаптер? чтобы остальные жильцы имели доступ к этому замечательному сайту!
    С ув. КотПомидор.
    • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #388
      Курят мануалы =) А на чем ваще могучее ЭВМ работает? ОСь какая?
    • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #390
      Главное эту железяку в режим Access Point перевести, а уж нат запилить это уже пустяк.
  • 29 октября 2015 г. 15:19. Posted by RuSlan Цитировать #392
    Не получается одно сделаем другое Т.к. я так и не докурил как поднять пптп на моем рутере, буду из неттопа iru-111 +d-linl dub-100 делать большой рутер =)
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #393
    А этой прошивкой пробовал А этой прошивкой пробовал прошивать?
  • 29 октября 2015 г. 15:19. Posted by Цитировать #395
    рутеры прикольно,сделайте прошивки и на другие!
  • 29 октября 2015 г. 15:19. Posted by Цитировать #429
    Polipo Доброго времени суток, господа!
    Имеем роутер с установленной OpenWRT, провайдера, предоставляющего доступ в интернет по PPPoE.
    DualAccess настроен и работает нормально.
    Ситуация следующая.
    У товарища крайне отвратительно работает интернет (живет в области, интернет использует от МТС (3G модем).
    В ЧНН половина ресурсов не открывается или открывается только после настойчивого обновления страницы. Он использовал публичные прокси, говорит, что проблема частично решается.
    На предыдущем роутере с установленной dd-wrt polipo работал нормально, но в силу определенных причин мне пришлось сменить роутер, и поставить прошивку OpenWRT.
    Так вот. Есть задача - организовать прокси-сервер для него, дабы облегчить ему жизнь.
    Из репозитория был установлен пакет polipо1.0.4.1-3, luci-app-polipo trunk+svn8306-1, здесь проблем не возникло.
    Конфиг был поправлен по образу и подобию с dd-wrt:
    /ect/config/polipo:
    код
    config 'polipo' 'daemon'
    option 'daemonise' '1'
    option 'pidFile' '/var/run/polipo.pid'

    config 'polipo' 'general'
    option 'enabled' '1'
    option 'chunkHighMark' '1048576'
    option 'proxyAddress' мой_ip'
    option 'proxyPort' '9090'
    option 'logFile' '/home/polipo/logs'
    option 'dnsUseGethostbyname' 'true'
    option 'dnsQueryIPv6' 'false'
    list 'allowedClients' '0.0.0.0/0' - оставил так потому, что МТС использует динамический IP.

    config 'polipo' 'cache'
    option 'diskCacheRoot' '/home/polipo/cache'

    config 'polipo' 'pmm'
    Что я упустил?
    Спасибо.
    P.S.
    В теме новичок, поэтому прошу сильно не пинать.
  • 29 октября 2015 г. 15:19. Posted by Жрец Храма Цитировать #430
    инет заработал?
    • 29 октября 2015 г. 15:19. Posted by Цитировать #431
      Если это ко мне - то да.
      А вот с проксиком что то никак.
  • 29 октября 2015 г. 15:19. Posted by Жрец Храма Цитировать #432
    аа.вот оно че...а то свалил все в кучу не понятно что хочешь ))
  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #433
    Странно, что через прокси работает нормально, а может чтото с провайдерским ДНС? Может стоит попробовать гугловский 8.8.8.8?
    • 29 октября 2015 г. 15:19. Posted by Цитировать #435
      DNS пробовали.
      Решает проблему, но не надолго.
      Отсюда хочу поставить таки проксю.
  • 29 октября 2015 г. 15:19. Posted by Цитировать #565
    Информативно, познавательно и авторитетно!

Пожалуйста войдите, что-бы оставить коментарий.
Нет акаунта? Регистрация