image

Некоторые из нас не пользуются интернетом без VPN по тем или иным причинам: кому-то нужен выделенный IP, и проще и дешевле купить VPS с двумя IP, чем покупать адрес у провайдера, кто-то хочет получать доступ ко всем веб-сайтам, а не только разрешенным на территории РФ, третьим нужен IPv6, а провайдер его не предоставляет…
Чаще всего VPN-соединение устанавливают на самом устройстве, которое используется в определенный момент, что вполне оправданно, если у вас только один компьютер и один телефон, и вы их редко используете одновременно. Если же в вашей домашней сети множество устройств, или, например, есть такие, на которых VPN настроить нельзя, было бы удобнее поднимать туннель прямо на домашнем роутере, чтобы не задумываться о настройке каждого устройства по отдельности.

Если вы хоть раз устанавливали OpenVPN на свой маршрутизатор, вы, вероятно, были неприятно удивлены скоростью его работы. SoC'и даже дешевых роутеров без особых проблем пропускают через себя окологигабитный трафик, за счет выноса функций маршрутизации и NAT на отдельный чип, предназначенный исключительно для выполнения этой задачи, а основные процессоры таких роутеров довольно слабы, т.к. нагрузки на них практически никакой нет. Такой компромисс позволяет достигнуть высокой скорости работы роутера и заметно снизить цену готового устройства — маршрутизаторы с мощными процессорами стоят в несколько раз дороже, и позиционируются уже не только как коробка для раздачи интернета, но и в качестве NAS, торрентокачалки и домашней мультимедиа-системы.

Мой роутер, TP-Link TL-WDR4300, нельзя назвать новым — модель появилась в середине 2012 года, и обладает 560 МГц-процессором архитектуры MIPS32 74Kc, мощности которого хватает лишь на 20-23 Мб/с шифрованного трафика через OpenVPN, что по меркам скорости современного домашнего интернета совсем немного.
Как бы нам повысить скорость шифрованного туннеля? Мой роутер довольно функциональный, поддерживает 3x3 MIMO, да и вообще, хорошо работает, не хотелось бы его менять.
Так как сейчас принято делать 10-мегабайтные интернет-страницы, писать десктопные приложения на node.js и паковать их в 100-мегабайтный файл, наращивать вычислительные мощности вместо оптимизации, мы совершим нечто ужасное — переложим VPN-подключение на производительный одноплатный «компьютер» Orange Pi One, который установим в корпус роутера, не занимая существующие сетевые и USB-порты, всего за $9.99*!
* + доставка, + налоги, + на пиво, + MicroSD.

OpenVPN

Нельзя назвать процессор роутера совсем уж слабым — он способен шифровать и хешировать данные алгоритмом AES-128-CBC-SHA1 со скоростью 50 Мб/с, что заметно быстрее того, как работает OpenVPN, а современный поточный шифр CHACHA20 с хешем POLY1305 и вовсе развивает 130 мегабит в секунду! Почему же скорость VPN-туннеля такая невысокая? Все дело в переключении контекста между пространством пользователя и пространством ядра: OpenVPN шифрует трафик и общается с внешним миром в контексте пользователя, а в контексте ядра происходит сама маршрутизация. Операционной системе приходится постоянно переключаться то туда, то сюда, на каждый принятый или переданный пакет, а эта операция небыстрая. Данная проблема присуща всем VPN-приложениям, работающим через TUN/TAP-драйвер, и нельзя сказать, что проблема низкой скорости вызвана плохой оптимизацией OpenVPN (хотя, конечно, там есть места, которые нужно бы переделать). Ни один userspace VPN-клиент не выдает даже гигабита с отключенным шифрованием на моем ноутбуке, что уж говорить про системы со слабым процессором.

Orange Pi One

Одноплатник Orange Pi One от компании Xunlong — самое выгодное предложение по соотношению производительность/цена на данный момент. За $9.99* вы получаете добротный четырехядерный процессор ARM Cortex-A7, (стабильно) работающий на частоте 1008 МГц, и явно производительней соседей Raspberry Pi Zero и Next Thing C.H.I.P. по ценовой категории. На этом плюсы заканчиваются. Компания Xunlong уделяет софту своих плат ровно ноль внимания, и на момент запуска One в продажу не предоставляла даже файл конфигурации платы, не говоря уже о готовых образах. Allwinner — производитель SoC — тоже не особо трепетно относится к поддержке своего продукта. Их интересует только минимальная работоспособность в ОС Android 4.4.4, а значит, мы вынуждены использовать ядро версии 3.4 с Android-патчами. К счастью, есть энтузиасты, которые собирают дистрибутивы, правят ядро, пишут код для поддержки плат в mainline-ядре, т.е. фактически делают работу за производителя, заставляя это говно приемлемо работать. Для своих целей я выбрал дистрибутив Armbian, он часто и удобно обновляется (новые ядра устанавливаются прямо через пакетный менеджер, а не копированием файлов на специальный раздел, как это обычно бывает у Allwinner), да и поддерживает большинство периферии, в отличие от остальных.

Роутер

Для того, чтобы не загружать слабый процессор роутера шифрованием и ускорить наше VPN-соединение, мы можем переложить эту задачу на плечи более производительного процессора Orange Pi, подключив его к роутеру каким-либо образом. На ум приходит подключение либо по Ethernet, либо по USB — оба этих стандарта поддерживаются обоими устройствами, но не хотелось занимать уже существующие порты. К счастью, выход есть.

Микросхема USB-хаба GL850G, которая используется в роутере, поддерживает работу 4 USB-портов, два из которых не распаяны. Неясно, почему производитель не стал их распаивать, предполагаю, чтобы не дать возможность пользователям подключить сразу 4 устройства с высоким потреблением тока (например, жестких дисков), т.к. штатный блок питания роутера не рассчитан на такую нагрузку. В любом случае, это нам на руку.
image
Для того, чтобы получить еще один USB-порт, достаточно допаять два провода к 8(D-) и 9(D+) или 11(D-) и 12(D+) пинам.

image

Однако недостаточно просто так подключить два USB-устройства и надеяться, что все заработает само собой, как это бы произошло с Ethernet. Во-первых, нам нужно заставить одного из них работать в режиме USB Client, а не USB Host, во-вторых, нам нужно определиться с тем, как устройства будут определять друг друга. Существует множество драйверов так называемых USB Gadgets (по названию подсистемы Linux-ядра), которые позволяют эмулировать различные типы USB-устройств: сетевой адаптер, аудиокарту, клавиатуру и мышь, флешку, фотоаппарат, консоль через последовательный порт. Так как наше устройство будет работать с сетью, нам лучше всего подойдет эмуляция Ethernet-адаптера.

Существует три стандарта Ethernet-over-USB:
  • Remote NDIS (RNDIS). Устаревший стандарт от Microsoft, использовался преимущественно во времена Windows XP.
  • Ethernet Control Model (ECM). Простой стандарт, который инкапсулирует Ethernet-фреймы в USB-пакеты. Отлично подходит для проводных модемов с USB-подключением, где удобно передавать кадры без обработки, но из-за своей простоты и ограничений USB-шины работает не слишком быстро.
  • Ethernet Emulation Model (EEM). Более умный протокол, который учитывает ограничения USB и оптимально агрегирует несколько фреймов в один, повышая таким образом пропускную способность.
  • Network Control Model (NCM). Самый новый протокол. Обладает преимуществами EEM и еще больше оптимизирует работу с шиной.

Чтобы заставить работать любой из этих протоколов на нашей плате, как всегда, придется встретиться с некоторыми трудностями. Из-за того, что Allwinner интересуют только Android-части ядра, нормально работает только Android Gadget — тот код, который реализует связь с adb, экспорт устройства по протоколу MTP и эмуляцию флешки на Android-устройствах. Сам Android Gadget поддерживает и протокол RNDIS, но в ядре Allwinner он сломан. Если вы попробуете скомпилировать ядро с любым другим USB Gadget, устройство просто не появится в системе, что бы вы ни делали.
Для решения проблемы, по-хорошему, необходимо найти место инициализации USB-контроллера в модифицированном разработчиками коде Android-гаджета android.c, но существует и обходной маневр, чтобы заставить работать, как минимум, эмуляцию Ethernet через USB:
--- sun8i/drivers/usb/sunxi_usb/udc/sunxi_udc.c 2016-04-16 15:01:40.427088792 +0300
+++ sun8i/drivers/usb/sunxi_usb/udc/sunxi_udc.c 2016-04-16 15:01:45.339088792 +0300
@@ -57,7 +57,7 @@
 static sunxi_udc_io_t g_sunxi_udc_io;
 static u32 usb_connect = 0;
 static u32 is_controller_alive = 0;
-static u8 is_udc_enable = 0;   /* is udc enable by gadget? */
+static u8 is_udc_enable = 1;   /* is udc enable by gadget? */
 
 #ifdef CONFIG_USB_SUNXI_USB0_OTG
 static struct platform_device *g_udc_pdev = NULL;
Этот патч насильно включает режим USB-клиента, что позволяет использовать обычные USB Gadgets из Linux.
Теперь следует пересобрать ядро с этим патчем и необходимым гаджетом. Я выбрал EEM, т.к. по результатам тестов он оказался производительней NCM.
Команда Armbian предоставляет очень простую и удобную сборочную систему для всех поддерживаемых плат в дистрибутиве. Достаточно скачать ее, положить наш патч в userpatches/kernel/sun8i-default/otg.patch, немного отредактировать compile.sh и выбрать необходимый gadget:

image

Ядро соберется в deb-пакет, который не составит труда установить на плату через dpkg.
Остается только подключить плату по USB и настроить наш новый сетевой адаптер на получение адреса через DHCP. Для этого необходимо добавить примерно следующее в /etc/network/interfaces:
auto usb0
        iface usb0 inet dhcp
        hwaddress ether c2:46:98:49:3e:9d
        pre-up /bin/sh -c 'echo 2 > /sys/bus/platform/devices/sunxi_usb_udc/otg_role'
MAC-адрес лучше задать вручную, т.к. он будет случайным при каждой перезагрузке устройства, что неудобно и хлопотно.
Подключаем MicroUSB-кабель к OTG-разъему, подключаем питание с роутера (его можно подавать на 2 и 3 пины гребенки, а не только на разъем питания).

Осталось настроить роутер. Достаточно установить пакет с EEM-драйвером и добавить наше новое сетевое USB-устройство в бридж локальной firewall-зоны:
opkg install kmod-usb-net-cdc-eem
image
Чтобы маршрутизировать весь трафик в VPN-туннель, нужно либо добавить SNAT-правило на IP-адрес платы на стороне роутера, либо раздавать в качестве адреса шлюза адрес платы через dnsmasq. Последнее делается добавлением следующей строки в /etc/dnsmasq.conf:
dhcp-option = tag:lan, option:router, 192.168.1.100
где 192.168.1.100 — IP-адрес вашей платы. Не забудьте прописать адрес машрутизатора в настройках сети на самой плате!

Для изоляции контактов платы от контактов роутера использовалась меламиновая губка. Получилось как-то так:
image

Заключение

Работает сеть через USB на удивление быстро: 100-120 Мб/с, я ожидал меньшего. OpenVPN пропускает через себя около 70 Мб/с шифрованного трафика, что тоже не сильно много, но для моих нужд хватает. Крышка маршрутизатора закрывается неплотно, оставляя небольшой зазор. Эстеты могут выпаять Ethernet и USB Host-разъемы у платы, что позволит крышке закрыться полностью, и еще место останется.
А лучше не заниматься такой порнографией и купить Turris Omnia.

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


  1. dmitryrf
    18.04.2016 19:18
    +1

    Очень странное, но очень интересное решение. Спасибо, что поделились.


  1. ragequit
    18.04.2016 19:28

    На правах оффтопа.

    image


  1. MAXHO
    18.04.2016 19:30
    +2

    Хард гик порно… Даже с участием синей изоленты.
    Спасибо, прочитал.


    1. ValdikSS
      18.04.2016 19:40
      +6

      В статье софт, а я испытал какой-то preteen hardcore, когда паял эти ссаные 2 провода. Можете заметить, что справа у ножек коротыш. Я случайно капнул туда припоя и потратил 8 часов, чтобы его оттуда убрать. Казалось бы, такая простая операция, которая занимает пару минут, отняла у меня 8 часов. Ощущаю себя самым ничтожным человеком на свете, мразью, чмом, лохом.


      1. Ezhyg
        18.04.2016 20:39

        Почему? Не, ну правда, вдруг придётся столкнуться.

        Кстати, конвертер валют показывает цену «всего за 666 руб. ($9.99)*» — это знак? :D


        1. ValdikSS
          18.04.2016 20:41
          +1

          Почему? Я и сам не знаю. Не получалось, и все тут, не уходил припой. Потом успокоился, зачистил дофигища провода, и все как-то потихоньку ушло.


          1. lorc
            18.04.2016 20:47

            Может флюс не очень был?


          1. olartamonov
            18.04.2016 21:13
            +1

            Если одна из ног сидит на «земле», то их попросту прогреть трудно, чтобы припой легко вытек на обычное плоское жало. При шаге выводов 0,5 мм это критично.

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


          1. Wilix
            19.04.2016 11:00

            В таких случаях мне часто помогает деревянная зубочистка. Необходимо прогреть контакты до расплавления олова, а потом межних (не убирая жало паяльника) просунуть зубочистку и попытаться аккуратно «выгрести» олово. Даже незнаю как словами описать этот процесс, но это помогает. Ну и конечно, надо максимально убрать олово с жала паяльника перед работой.


            1. ValdikSS
              19.04.2016 11:11

              Я пробовал это делать машинной иглой, ножкой от конденсатора, ножом, ножкой от конденсатора, намотанной на жало паяльника, да чем только не пробовал.


              1. Wilix
                19.04.2016 11:32

                Тут как раз смысл в дереве :) На него олово не липнет.
                Кстати, статья очень понравилась, хорошее описание последовательности действий и причин этих действий.


                1. Rumlin
                  19.04.2016 19:49

                  Для этого используется оплетка.
                  Типа такой https://www.youtube.com/watch?v=DP4Oiqx9_v4


      1. lorc
        18.04.2016 20:46

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


      1. olartamonov
        18.04.2016 21:17

        NB: лучше под такие задачи брать кусок USB-кабеля или хотя бы одну пару из «витухи».

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


        1. ValdikSS
          18.04.2016 21:18

          Если не ошибаюсь, это и есть провод из USB-кабеля.


          1. olartamonov
            18.04.2016 21:20
            +2

            Надо не «провод из», надо просто кусок кабеля. У провода о правильном импедансе остались лишь воспоминания.


      1. htol
        19.04.2016 12:02

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


  1. AndreyDmitriev
    18.04.2016 19:44
    +4

    20-23 Мб/с… по меркам скорости современного домашнего интернета совсем немного.

    Как бы это так помягче сказать…

    В общем вот что такое «совсем немного»:
    image
    Ну или так, если будет угодно:
    image
    Это недалеко от Гамбурга


    1. ragequit
      18.04.2016 19:51
      +2

      1.97, жируете. У меня до недавнего времени было 0.65


      1. nitro80
        19.04.2016 15:42

        2016 год. 256 кбит, иногда 382. 2000 рублей в месяц. Пинг ~700мс. :-D


    1. Mnemonik
      18.04.2016 20:11

      Та же шляпа — 20 down, 1.5 up — Мюнхен.
      Не то чтобы как-то ущемляла скорость скачивания, но вот чахлый up это просто натуральный кошмар.


      1. dimasikstd
        18.04.2016 20:36

        А почему так мало, это нормальное явление для тевтонских земель, сколько стоит в месяц?


        1. AndreyDmitriev
          18.04.2016 20:57

          Не знаю как в Мухине, а в Гамбурге — всего-то «ничего» — тридцать шесть евро с копейками плюс налог. Ну где-то сороковник грубо говоря. В рублях это стало быть около 3000. Но там ещё телефон неограниченный, если на мобильные номера не звонить. На самом деле просто линия больше не позволяет. Оптику тянут второй год, да всё не дотянут.


        1. vaslobas
          18.04.2016 21:15
          +5

          В целом в Европе интернет полное говно по заоблачным ценнам, особенно если сранивать с Москвой, где я плачу 300 рублей за 20/10 мбит/с, а за 750 рублей получу 100 мбит/с. В Европе же сранные 20 мбит/с уже целое достижение и стоить будут совершено других денег. Это мои наблюдения, кто-нибудь может меня поправит.


          1. AlikGorshkov
            18.04.2016 22:16

            Поддерживаю, в Германии интернет очень дорогой, сравнительно с крупными городами Украины. Сейчас плачу за топ-пакет Unitymedia 45 EUR/месяц. 200 MBit/sec download, 20 Mbit/sec upload. Брал максимально возможный с точки зрения upload, чтобы видео связью пользоваться с двух ноутов. Скорость честная. Когда сюда приехал (2,5 года назад), взял самый лучший из доступных Vodafone DSL (50/10 MBit) за 25 EUR/месяц. А в Украине сейчас за 5-6 EUR/месяц в крупном городе (Харьков) можно взять гигабитный канал. Разумеется, честный гигабит будет только если качать что-либо торрентами с украинских источников, что для популярных раздач вполне подходит.


            1. ledascho
              19.04.2016 10:04

              в Германии интернет очень дорогой, сравнительно с крупными городами Украины.

              Не оправдывая цены и качество немецкого интернета (сам страдаю), предлагаю интеллектуальной честности ради цены выражать в процентах от зарплаты, скажем, сотрудника первой линии саппорта провайдера — в Германии и Украине соответственно… И в смысле «сколько интернетов оный сотрудник может себе позволить», и в смысле «сколько провайдер должен получить, чтобы заплатить этому сотруднику». Не забываем про налоги и прочая, которые провайдеры в обеих странах платят несколько разные…


              1. AdmAlexus
                19.04.2016 10:36

                В попугаях мы меряли. Но вот мерять зарплату в «интернетах»...:)


                1. ledascho
                  19.04.2016 10:47

                  Если вы можете предложить лучший способ нормировки…


              1. AlikGorshkov
                19.04.2016 18:06

                Ну, к чему это всё баловство? :-) В конце концов, сюда не за дешёвым интернетом едут. Доходы правильнее расширять, а не экономить 5 копеек и жаловаться на дороговизну стульев для трудящихся всех стран.


        1. Stiver
          18.04.2016 23:00

          Если вопрос про upload, то это специально и исторически сложилось — чтобы народ у себя по домам серверы не ставил. А если все-таки ставил, то брал бизнес-тариф. К счастью, это явление постепенно отмирает.


        1. Massacre
          19.04.2016 09:55
          +1

          Это всё из-за ADSL. Они бы ещё диалап юзали…


        1. r4nd0m
          19.04.2016 10:15

          Нормальное для пригородов, интернет идёт в пакете с телефоном и по телефонным же проводам. Из за малой этажности и широкой площади оптику тянуть невыгодно. Стоит примерно 40 евро в месяц: 3 телефонных номера + интернет (15/2 мегабит) + аренда роутера.


          1. mkll
            20.04.2016 13:01

            Живу в малоэтажном отдельно стоящем посреди поля поселке эконом-класса в 20 км от Тюмени. Т.е. это не такое сплошное «пятно» пригородных поселений, переходящих одно в другое, а совсем-совсем отдельностоящий поселок. Оптика заходит прямо в дом, 100Mbps стоит 900р, что несколько дороже, чем в городе. Так что насчет «невыгодно» я в некотором сомнении.


            1. r4nd0m
              20.04.2016 14:54

              У вас там, в Тюмени, наверно ещё и налога на телевизор нет.


              1. mkll
                20.04.2016 15:33

                Не в курсе даже.


        1. invekc
          19.04.2016 10:54

          Нет, не нормальное.

          image
          Плачу за интернет + аренду vdsl модема17 Eur/месяц.


      1. ledascho
        19.04.2016 09:57

        50/10 в Мюнхене же. Телеком VDSL


      1. Vladusch
        19.04.2016 22:29

        Странно, за последние 8 лет у меня ни у одного провайдера, ни в одном доме (я переезжал внутри Мюнхена несколько раз и менял провайдеров не всегда при переезде, но тоже часто), реальной скорости ниже 15 down и 2 up не было, как подключился к оптоволоконной сети M-Net'а так реальная скорость до провайдера ниже 99 down и 10 up не видел, speedtest зависит от времяни суток и скачет от 50 до 95 down и минимально 9 up.


  1. Rumlin
    18.04.2016 20:24

    А лучше не заниматься такой порнографией и купить Turris Omnia.

    Спасибо, посмотрел цену.
    штатный блок питания роутера не рассчитан на такую нагрузку.

    А какой теперь ток берется от штатного блока питания роутера?


    1. ValdikSS
      18.04.2016 20:28
      +1

      А какой теперь ток берется от штатного блока питания роутера?
      Сама плата не больше 2А потребляет, роутер по 5В-линии выдает больше (измерил мультиметром). А вот 4 USB-винчестера могут потреблять около 4А в сумме, вот это уже БП не выдержит.


    1. ValdikSS
      18.04.2016 22:56

      Спасибо, посмотрел цену.
      Хм, взвинтили ее. Я брал модель с Wi-Fi за $189 + $30 доставка, сейчас же продают за $229 + доставка.


  1. GeXoGeN
    18.04.2016 21:22
    -1

    > А лучше не заниматься такой порнографией и купить Turris Omnia.
    "… и купить Mikrotik" Вы хотели написать?


    1. ValdikSS
      18.04.2016 21:25
      +4

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


      1. GeXoGeN
        18.04.2016 21:29

        Что в Вашем понимании «посредственное железо» и «работает криво»? Впаять четырёхядерный компьютер в роутер — решение всех проблем. Можно с тем же успехом в сервак на двух ксеонах wifi адаптер запихать и заставить это железо VPN для домашнего использования поднимать.


        1. ValdikSS
          18.04.2016 22:06
          +6

          Посредственное железо = такое же железо, какое и в моем роутере, ±, с 64 МБ RAM, на которой, видимо, предлагается дома держать BGP FullView и MPLS-сессии. Вот зачем в SoHo роутере с 64 МБ RAM BGP? Сейчас посмотрел их новую AC-линейку, уже лучше, я бы даже купил hAP ac lite за $49.95, но, блин, что им мешало поставить туда гигабитный свитч?
          OpenVPN на Mikrotik такой, что лучше бы его там вообще не было, и годы идут, а ничего не меняется, совершенно. Поддержки UDP нет, поддержка IPv6 с большими глюками, сообщения об ошибках отсутствуют как класс, а производительность туннеля такая же, какая и на моем роутере. Только на моем роутере я еще могу без костылей настроить Multi WAN так, как мне нужно, штатными средствами OpenWRT, запускать на нем PulseAudio, чтобы подключить к роутеру колонки, а звук гонять по сети, и подключаться к нему в 5 ГГц диапазоне, чего одна из самых популярных моделей, RB2011UiAS-2HnD-IN, не умела в то время, когда я роутер покупал.

          Настраивал на Mikrotik OpenVPN-сервер. Включаю — бах — интернет на маршрутизаторе пропадает. Почему? Понятия не имею! Сообщения об ошибках нет, новых правил файрволла нет, сети нет.

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

          Так что лучше я куплю Omnia за $200, с полностью открытым софтом и ОС, с хорошим беспроводным железом, с мощным процессором и большим количеством RAM и ROM, с ОС, которая мне нравится, от людей, которые мне нравились и до Omnia, чем hAP ac за $129.


          1. dartraiden
            18.04.2016 22:36

            Оперативки маловато. За 200 баксов-то.


          1. throttle
            19.04.2016 01:47

            Не смог пройти мимо, и не поделиться прямо противоположным опытом.
            У меня сейчас в эксплуатации 40+ микротиков, все на OpenVPN'е. Большинство — старые 750-е. Соединение держат неделями — пока канал не упадет. Скорости, правда, небольшие — где 4 Мбит, где 10 — это промышленные площадки, им больше не нужно.

            UDP нет, LZO нет — все так, но у UDP соединений есть свои неприятные тонкости.

            Из особенностей — при использовании OpenVPN в режиме топологии net30 (не знаю, как на счет subnet — не пробовал) гейтвей не пингуется, и микротик «опускает» эти маршруты. Решается пушем маршрутов с указанием ip сервера в качестве гейтвея.


            1. arheops
              19.04.2016 19:03

              Microtik научил свои openvpn udp соединению? Или вы из когорты «нам это не нужно»? Уже 7 лет в микротик feature request стоит запрос разрешить соединение по udp. А воз и ныне там.


              1. throttle
                20.04.2016 12:34

                Второе. :)
                Стараюсь решать задачи имеющимися средствами.
                У меня на одной машине поднято два инстанса OpenVPN — второй специально под микротики. Работает — и ладно. Проблем с ним меньше, чем с UDP'шным. На последнем, правда, подключений на порядок больше.
                В моей практике был только один случай, когда OpenVPN UDP был принципиально, качественно лучше, чем TCP — когда в нем голос бегал при задержках около 200 мс. На задержках до 50 мс. голос и в TCP бегает нормально.


      1. J_o_k_e_R
        18.04.2016 22:11
        +1

        Это единственные известные мне роутеры в категории до 5000 рублей, которые умеют качественно гонять торренты на окологигабитных скоростях.
        Плюс мощнейшие вайфай антенны.
        Плюс почти абсолютная стабильность.
        Короче говоря для домашнего роутера у них единственный минус — сложность настройки новичкам. А, да. Ну и ущербный openvpn.


      1. dartraiden
        18.04.2016 22:30

        И проприетарная прошивка, если не ошибаюсь.


    1. Vespertilio
      18.04.2016 21:40

      OpenVPN в микротике очень… особенный, не умеет ни UDP, ни авторизации без логин/пароля и хз чего еще, я несколько дней провозился пока спарил микротик и клиент под os x. Ну и те же 70 мбит, это уже смотря какая какая коробка вытянет.


      1. ValdikSS
        18.04.2016 22:08
        +2

        ни авторизации без логин/пароля
        Умеет, на самом деле, достаточно вводить произвольные.


  1. BigD
    18.04.2016 21:31
    +1

    О, мой роутер (кстати, он меня достал глюками и производительностью даже без VPN). Свой продаете? Или мой проапгрейдите? :)


  1. Vasily_Pechersky
    18.04.2016 22:59

    Просто к сведению — есть вещь под названием Banana PI BPI-R1. Это раутер борд с AllWinner процом и.т.д плюшками.
    Вроде прочитал о нём здесь на хабре, но не могу найти статью.

    Можно заказать через АлиЭкспрэсс.
    В теории — может сразу всё перечисленное. За кривизну или прямоту софта — ничего не скажу — у меня его нет. Пока Turris Omnia начнут продавать…


    1. ValdikSS
      18.04.2016 22:59

      И с отвратительным WiFi-модулем.


    1. lolipop
      18.04.2016 23:58

      есть еще такая штука, ценник лютый, но выглядит плата очень красиво, прямо geek porn.


  1. scranthony
    19.04.2016 00:02

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


    1. ValdikSS
      19.04.2016 00:07
      +1

      По схеме ног USB-хаба. Но вообще, информация об этом написана в Wiki OpenWRT на странице маршрутизатора.


    1. MartinX
      20.04.2016 01:40

      Даташит можно поискать на микруху хаба


  1. KorDen32
    19.04.2016 03:43

    Turris Omnia

    В описании все красиво, а как будет на самом деле, это еще вопрос… На практике, к сожалению, приходится в уме предполагать варианты «вендор не полностью открыл сурсы на чип, потому то-то работает неполноценно, то-то работает только при использовании X» и прочая…

    С другой стороны, если брать такой комбайн, может получиться приблизительно следующее: в желаемом месте установки роутера, чтобы сигнал WiFi был к примеру и в доме и на улице в нужных пределах, плохо ловит 3/4G модем желаемого оператора резервирования, а если посмотреть на модель с мощной вафлей, которая добьет всюду где надо из удобной точки, не будет OpenWRT, либо есть нюансы… Да в лучшую точку приема пучок езернетов неоптимально тянуть, а свич на большее количество портов не хочется ставить — иначе зачем комбайн покупался, если не использовать его на полную катушку…


  1. sav13
    19.04.2016 06:09

    А если в Orange Pi воткнуть WiFi антенку, то не получится нормальный роутер с OpenVPN?


    1. KorDen32
      19.04.2016 07:14
      +1

      У OPi один стомегабитный LAN-порт…


      1. sav13
        19.04.2016 13:55

        Все равно OpenVPN трафик через него завернут?
        Разве что там кроме него еще масса другого трафика


  1. AEP
    19.04.2016 09:05

    А лучше не заниматься такой порнографией и купить Turris Omnia.


    Есть подтвержденные факты успешного прохождения данного устройства через таможню РФ?


    1. ValdikSS
      19.04.2016 11:13

      Он еще не выпущен, но проблем возникнуть не должно. Я покупал довольно много роутеров из-за рубежа.


  1. grigly
    19.04.2016 09:27
    +1

    можно соединиться по Ethernet вместо USB, раскидать по виланам. Будет 50 Мбит максимум, но зато без пайки…


  1. ncix
    19.04.2016 10:00

    А можно ссылочку где купить O-Pi за $9.99? На Али минимальная цена около 20 баксов.


    1. kail
      19.04.2016 10:38

      на али отвратительный поиск
      $9.99 + $3.56 доставка, как и обещалось


      1. Rumlin
        19.04.2016 19:53

        512 МБ DDR3


    1. walkman7
      19.04.2016 19:30

      Старайтесь искать через мобильное приложение, много чего через сайт просто не показывает.