- Как Настроить DLNA и Samba Сервер на Роутере Zyxel Keenetic?
- В чем отличие Samba сервера от DLNA?
- Samba и DLNA сервер на роутере Zyxel Keenetic
- Расширяем функциональность ZyXel Keenetic
- ⇡#Вступление
- ⇡#Подготовка
- ⇡#Настройка Transmission
- ⇡#Настройка медиасервера DLNA
- Анализ возможности воспроизведения качественного медиа-контента 4К на актуальных Android-боксах по Wi-Fi через Keenetic Ultra
Как Настроить DLNA и Samba Сервер на Роутере Zyxel Keenetic?
Если в вашем роутере имеется USB порт, то могу с 99% вероятностью сказать, что с его помощью можно создать медиасервер и транслировать по технологии DLNA или Samba видео или графический контент на другие устройства, подключенные к данному роутеру. В этой статье я наглядно покажу, как запустить сервер DLNA или Samba на wifi роутере Zyxel Keenetic.
В чем отличие Samba сервера от DLNA?
- Samba — это сервер для обмена любыми документами. То есть настроив его, мы получим доступ к накопителю, как к обычному сетевому устройству с папками, в которых находятся файлы.
- DLNA заточен под воспроизведение медиа-контента, то есть с его помощью удобнее транслировать аудио или видео на другое устройство с использованием специальных программ-проигрывателей. Подробнее про медиасервер DLNA читайте в другой статье.
Для того, чтобы организовать медиа сервер в своей локальной сети, необходимо соблюсти несколько условий:
- Роутер должен иметь функцию подключения USB накопителей
- Остальные устройства должны поддерживать технологию DLNA
Прежде, чем осуществить нашу затею, необходимо подключить и настроить флешку для работы с роутером. Подробно о том, как это сделать, я уже рассказывал в статье про FTP-сервер.
Samba и DLNA сервер на роутере Zyxel Keenetic
Для создания dlna или samba сервера на роутере Zyxel Keenetic должен быть установлен отдельный компонент — часто изначально он не входит в стоковую прошивку, но его можно скачать дополнительно. Для этого идем в раздел «Настройки», вкладка «Обновление» и жмем на кнопку «Показать компоненты».
Находим тут «DLNA-сервер» и активируем его галочкой. Также проставляем галочки на всех пунктах в разделе «USB Storage» для того, чтобы роутер мог читать флешки с любой файловой системой — FAT32, NTFS, HFS+, — а также для возможности настраивать права доступа к папкам.
И нажимаем на кнопку «Установить» — после перезагрузки в админке появятся необходимые нам разделы.
После подключения накопителя к USB порту роутера идем в меню «Приложения» и открываем вкладку «DLNA». Ставим флажок на «Включить», после чего нажимаем на кнопку выбора папки
Кликаем по строчке с нашим накопителем и далее нажимаем сразу на кнопку «Выбрать», чтобы добавить на сервер весь каталог, либо выбираем отдельную папку.
Источник
Расширяем функциональность ZyXel Keenetic
Напоминаем, что попытки повторить действия автора могут привести к потере гарантии на оборудование и даже к выходу его из строя. Материал приведен исключительно в ознакомительных целях. Если же вы собираетесь воспроизводить действия, описанные ниже, настоятельно советуем внимательно прочитать статью до конца хотя бы один раз. Редакция 3DNews не несет никакой ответственности за любые возможные последствия.
⇡#Вступление
В комментариях к одной из первых статей про альтернативные прошивки читатели спрашивали, нет ли чего-нибудь подобного и для роутеров ZyXel. То ли официальные прошивки ZyXel жуть как хороши, то ли энтузиасты не такие активные, но хоть какой-то более-менее приличной альтернативы фирменным микропрограммам нынче нет. Ну, вы, конечно, можете скачать исходные коды прошивки, изменить её, заново собрать и залить в роутер. Но это как-то уже слишком для обычного пользователя. Тем интереснее выглядит совсем молодой проект наших соотечественников с незамысловатым названием zyxel-keenetic-packages, зародившийся в недрах форума Zyxmon. В данном случае идея гораздо проще и изящнее. Никаких перепрошивок роутера не требуется, а все дополнительные приложения запускаются со съёмного накопителя — флешки или внешнего винчестера. Более того, при отсоединении накопителя устройство продолжает работать как ни в чём не бывало, но, естественно, уже безо всяких «плюшек». Ну а в данной статье мы рассмотрим установку и настройку обновлённого торрент-клиента Transmission, сервера DLNA и доступ к локальной сети из Интернета посредством OpenVPN.
⇡#Подготовка
Для начала нам необходимо отформатировать накопитель в ext 2/3 или NTFS. Лучше, конечно, в ext 2/3, хотя некоторые естествоиспытатели утверждают, что и с NTFS всё прекрасно работает. Программ, которые могут форматировать разделы в нужную нам ФС, довольно много: Partition Magic, продукты Paragon и Acronis, в конце концов, бесплатный GParted Live. Если вам вдруг понадобится срочно считать данные в Windows с такого накопителя, то можно воспользоваться либо файловым менеджером Ext2Read, либо установить драйвер Ext2Fsd. Также в веб-интерфейсе роутера необходимо включить доступ к диску по сети в «USB-приложения» → «Сетевой диск».
Ещё нам понадобится SSH-клиент PuTTY и непосредственно установщик. Распакуем архив в любое удобное место. Теперь зайдём на наш накопитель по сети: Win+R, \\KEENETIC, Enter. В папке disk_a1 потребуется создать директорию system, а в ней ещё одну — bin. Вот туда-то и надо скопировать файл ext_init.sh из архива. Таким образом, полный путь до него будет выглядеть как \\KEENETIC\disk_a1\system\bin\ext_init.sh. Заодно полезно создать в корне папку data, куда будут складываться все файлы. Теперь надо отключить накопитель от роутера и снова подключить. Через пару минут в логах («Система» → «Журнал») должна появиться запись:
dropbear[xxxx] Running in background
Запускаем PuTTY, в поле Host Name вбиваем root@ip_адрес_роутера, а в Windows → Translation выбираем кодировку UTF-8 и нажимаем Open. Вводим пароль — zyxel (он не показывается при наборе) и нажимаем Enter. Завершаем установку и сразу же обновляем систему командами:
⇡#Настройка Transmission
Установка новых приложений осуществляется командой opkg install имя_пакета. На данный момент число портированных приложений не так велико — их список можно посмотреть здесь. В принципе, в вики проекта неплохо описаны основные нюансы их установки. Однако неподготовленному пользователю вряд ли будут понятны определенные моменты относительно их настройки. Так что разберём для ясности некоторые примеры. Для начала рассмотрим установку и настройку более новой версии торрент-клиента Transmission, чем та, которая предустановлена в прошивке роутера, — 2.3 вместо 1.93. Установим клиент и текстовый редактор nano командой:
Традиционный совет — вместо того чтобы вручную набирать команды, просто скопируйте их отсюда и кликните правой кнопкой в окне PuTTTY. По умолчанию все новые закачки будут записываться в папку transmission, то есть так же, как по умолчанию происходит и со встроенным в роутер торрент-клиентом. Предварительно остановим его, перейдя в веб-интерфейсе роутера в раздел «USB-приложения» → «Торренты», сняв галочку «Включить BitTorrent-клиент» и нажав «Применить». Отредактируем настройки Transmission командой:
Здесь достаточно изменить по желанию несколько строчек:
Для включения авторизации с целью доступа к веб-интерфейсу Transmission необходимо изменить значение параметра rpc-authentication-required с false на true. Тогда вместо username и password потребуется указать соответственно логин и пароль. В peer-port и rpc-port надо указать номера портов, которые служат для соединения с другими клиентами и доступа к веб-интерфейсу клиента соответственно. Прочие параметры можно и не менять. Сохраняем файл и выходим — F2, Y, Enter. Для автозапуска Transmission при включении роутера необходимо переименовать один из скриптов:
Его же необходимо немного подкорректировать:
В самом начале есть две переменные TRN_PORT и TRN_RPC_PORT. Если вы меняли в settings.json peer-port и rpc-port, то их значения нужно соответственно подставить в эти переменные. Также надо будет «раскомментировать» (убрать # в начале строки) ещё шесть команд вида iptables –A (или D) INPUT -p tcp —dport $TRN_PORT (TRN_RPC_PORT) -j ACCEPT. Не забываем сохранить файл и запускаем Transmission. Только учтите, что теперь его панель управления будет на английском языке.
⇡#Настройка медиасервера DLNA
Более полезный сервис — это minidlna. С его помощью у роутера появляется поддержка протокола DLNA, так что мультимедийные файлы можно смотреть, например, на телевизоре или приставке. Устанавливается и настраивается он гораздо проще, чем Transmission.
В файле конфигурации потребуется поменять параметры media_dir, в которых надо указать папки, где хранятся мультимедийные файлы. Можно дополнительно установить фильтр типа файлов — только аудио (A), видео (V) или изображения. Помните, что корневая папка съёмного накопителя доступна как /media/DISK_A1.Вот пример настроек.
Осталось только запустить minidlna-сервер.
Настройка OpenVPN
Скачайте дистрибутив OpenVPN на официальном сайте, выбрав в разделе загрузок Windows Installer. При установке отметьте галочками все компоненты. Как и в прошлый раз, мы будем использовать авторизацию по статическому ключу, то есть нам будет доступно только одно VPN-подключение. Ключ предварительно надо сгенерировать — из главного меню в разделе OpenVPN → Utilities запускаем Generate a static OpenVPN key. Готовый ключ находится в файле C:\Program Files\OpenVPN\config\key.txt. Переименуйте его в static.key и скопируйте на накопитель в папку \disk_a1\system\var. Теперь установим OpenVPN на роутер командой:
Создадим конфигурационный файл:
И вставим в него следующие строки:
Сохраняем файл (F2,Y, Enter). Затем чуть подправим скрипт запуска:
В нём надо добавить правила iptables в конце разделов start
Сохраняем этот скрипт, переименовываем для автоматического запуска и сразу же запускаем.
Теперь создадим группу правил для брандмауэра:
В этот файл надо скопировать следующие строки:
После сохранения делаем файл запускаемым и тут же выполняем его:
Естественно, нам нужно прописать DDNS-имя на нашем роутере. Подробнее о регистрации на примере DynDNS написано здесь в разделе «Настройка DDNS ». Через веб-интерфейс роутера переходим в раздел «Интернет» → «Доменное имя», включаем галочку «Использовать динамическую DNS», заполняем соответствующие поля и жмём «Применить». Кстати, после включения DDNS вам будет доступен также веб-интерфейс Transmission (http://ddns_имя_роутера:rpc-port), а если поставите галочку «Разрешить удаленный доступ» и укажете «TCP-порт веб-конфигуратора», то и веб-интерфейс роутера. Аналогичным образом можно открыть доступ к файлам на накопителе по FTP — ставим галочку «Разрешить доступ из Интернета» в разделе «USB-приложения» → «Сервер FTP».
На клиенте (например, на офисном компьютере или на ноутбуке) также надо установить OpenVPN, а заодно скопировать наш ключ static.key, который мы сгенерировали ранее, в папку C:\Program Files\OpenVPN\easy-rsa\keys\ (ну, или куда вам удобно, только в клиентских настройках надо будет поменять путь до него). Теперь в папке C:\Program Files\OpenVPN\config\ нужно создать новый текстовый файл, вставить в него нижеследующие строки и переименовать его, например, в router.ovpn. Обратите внимание, что в пути до файла secret.key нужно использовать именно двойные слеши (\\), а не одинарные (\).
При двойном клике по файлу ovpn будет подниматься туннель до роутера. Можно запустить OpenVPN GUI и из главного меню — в области уведомлений появится иконка, двойной клик по которой также поднимет туннель. При этом цвет иконки сменится с красного на зелёный. Ещё один двойной клик по иконке покажет окно с логом. Для отключения от VPN нажмите кнопку Disconnect. После подключения вам будет доступна ваша домашняя сеть и можно, к примеру, настроить удалённый рабочий стол (см. раздел «Настройка TightVNC» здесь). Также необходимо проследить, чтобы адресация на удалённой машине, в домашней сети и внутри VPN-туннеля была разной. В нашем примере мы использовали подсеть 10.8.0.0 для туннеля, а в домашней сети — 192.168.1.0. При необходимости подкорректируйте адреса во всех скриптах и файлах конфигурации в этом разделе.
Заключение
На данный момент это, пожалуй, все приложения, о которых есть смысл рассказывать. Конечно, в репозитории есть и другие пакеты, но вряд ли домашнему пользователю захочется поднимать свой веб-сервер на роутер, становить на него Drupal или, например, заморачиваться с другими DDNS-сервисами либо монтировать по сети ещё один накопитель. Впрочем, если и захочется, то настройка не так уж сложна. В конце концов, не забанили же вас в Google или «Яндексе». Для молодого проекта столь небольшое число пакетов — явление нормальное. К тому же их список постепенно пополняется, однако, по признанию самого автора zyxel-keenetic-packages, времени у него не так много. Так что энтузиасты, готовые собирать новые пакеты и развивать проект, явно не помешают. Напоследок ещё раз рекомендуем ознакомиться с вики и форумом, ссылки на которые были приведены в начале статьи. Засим позвольте откланяться и традиционно пожелать удачных экспериментов.
Источник
Анализ возможности воспроизведения качественного медиа-контента 4К на актуальных Android-боксах по Wi-Fi через Keenetic Ultra
Воспроизведение качественного медиа-контента 4К (UHD BDRemux и UHD Blu-ray) по Wi-Fi на Android-боксах — это очень нетривиальная задача, которая не может быть выполнена без предварительного планирования. Часто можно встретить типичные заблуждения: «Я сейчас куплю крутой Android-бокс или Смарт-ТВ и буду смотреть 4К по Wi-Fi через мой простой маршрутизатор», «Я сейчас куплю крутой маршрутизатор и будут смотреть 4К по Wi-Fi на своём копеечном Android-боксе или Смарт-ТВ». В большинстве случаев утверждающих такое ждёт печальный результат. Сама возможность «прокачать» медиа-данные с высокой скоростью по Wi-Fi зависит от маршрутизатора и его расположения, адаптера Wi-Fi бокса. Существенную роль ещё играет используемый сетевой файловый сервис. Небольшое влияние оказывает мощность SoC. Небольшое оно потому, что большинство современных боксов обладают достаточно мощностью. Существует ещё одно заблуждение: «Смотреть качественный медиа-контента 4К в принципе невозможно через Wi-Fi, только по Gigabit Ethernet». Оно полностью не соответствует действительности, о чём вы убедитесь, прочитав статью.
Ко мне обратилась компания Keenetic и попросила рассказать в статье, как обстоят дела с воспроизведением медиа-контента 4К по Wi-Fi на Android-боксах, используя их маршрутизатор. С их стороны выступит топовый SOHO-маршрутизатор Keenetic Ultra (KN-1810). Я мог выбрать любую модель для статьи. Но учитывая специфику и знание темы, подходили только Keenetic Giga и Keenetic Ultra. Бойцы под флагом Xiaomi, можете начинать точить шашки, потому что также речь пойдёт и о демоническом маршрутизаторе Xiaomi Mi Router 3G — китайский АК-74 на рынке маршрутизаторов — убивает быстро за недорого, если знаете, как его собрать (о нём я уже рассказывал, как он только появился, и использую его во всех своих обзорах). Уверен, результаты в статье многих удивят. Я сам был удивлён в некоторые моменты. Да, если вы владелец популярного и мощного в своё время TP-Link TL-WDR4300 или TL-WDR3600, лучше закройте эту статью немедленно. Этот маршрутизатор тоже будет участвовать, т.к. много людей до сих пор используют такие устаревшие устройства. Но его присутствие вызовет только чувство стыда и гнева у своих владельцев, который нужно будет куда-то направить (а крайним стану я). Результаты из этой статьи вы легко можете интерполировать и на телевизоры с Android TV.
Маршрутизатор Keenetic Ultra (KN-1810) для статьи предоставлен компанией Keenetic. Купить его можно в любом магазине около вашего дома. Даже, вроде бы, в Пятёрочке на кассах продаётся, стоит около 10000 рублей.
Содержание
Технические характеристики
| Модель | Keenetic Ultra (KN-1810) |
| Корпус | Пластик |
| SoC | MediaTek MT7621AT 880 МГц (MIPS1004Kc) 2 ядра, 4 потока |
| ОЗУ | 256 Мбайт DDR3 |
| ПЗУ | 128 Мбайт |
| Ethernet | 5 x RJ-45 1000 Мбит/с, 1 x SFP |
| Wi-Fi | Два независимых контроллера MT7615N: 2,4 ГГц, 802.11b/g/n, MIMO 4×4 5 ГГц, 802.11a/n/ac Wave 2, MU-MIMO, MIMO 4×4 |
| USB | 1 x USB 3.0, 1 x USB 2.0 |
| Антенны | 4 общие антенны 5 дБи для 2,4 ГГц и 5 ГГц |
| ОС | NDMS 2.12.C.0.0-1 |
| Питание | 12 В / 3 А |
Комплектация и внешний вид
Маршрутизатор Keenetic Ultra поставляется в крупной картонной коробке. Вся нанесённая информация на русском языке, присутствуют контактные данные компании Keenetic.
Внутри: маршрутизатор, блок питания, патч-корд (5e, 1,8 метра), краткая инструкция на русском языке.
Блок питания крупный с европейской вилкой. Напряжение 12 В, максимальная сила тока 3 А. Длина шнура около 1,7 метра. Коннектор стандартный, DC 5,5 x 2,1 мм.
Сам маршрутизатор очень крупный и тяжёлый. Корпус выполнен из матового пластика. Измеренные размеры без учёта антенн 212x151x32,5 мм. Вес около 540 грамм.
Длина антенн около 175 мм. Сами антенны выполнены на печатной плате.
На передней части присутствуют шесть индикаторов (зелёные светодиоды) и кнопка с назначаемой функцией, по умолчанию однократное нажатие отвечает за WPS, а длительное за отключение и включение Wi-Fi. Индикаторы отключаемые.
На правом торце находятся: одна антенна, порт USB 3.0 и порт USB 2.0, кнопки FN1 и FN2 с назначаемыми функциями, вентиляционные отверстия. По умолчанию кнопки отвечают за безопасное извлечение устройств, которые подключены в порты USB.
На левом торце только вентиляционные отверстия и одна антенна.
Сзади: кнопка сброса, две антенны, 5 портов Ethernet (RJ-45) с индикаторами, порт SFP, разъём питания. Порт SFP совмещён с одним из портов Ethernet, т.е. единовременно можно использовать только один из них.
Снизу: прорезиненные ножки, пазы для крепления на стену и вентиляционные отверстия.
В целом маршрутизатор выглядит добротно и внушительно.
Операционная система
В качестве операционной системы выступает NDMS. Версия на момент обзора — 2.12.C.0.0-1 (есть функция автообновления). Функциональность очень широкая. Со всеми базовыми настройками справится большинство потребителей, веб-конфигуратор понятный и простой. Для опытных пользователей настроек большое количество, CLI-консоль, полноценная консоль по SSH и доступ к Entware. В статье NDMS я её описывать не буду, для её описания нужен отдельный обзор, и у нас тематика статьи немного другая.
Отмечу, что вам может понадобиться в Keenetic Ultra при работе с медиа-контентом:
- Поддержка всех актуальных файловых систем на внешних диска.
- Поддержка файловых сервисов Samba/CIFS, DLNA.
- Торрент-клиент Transmission.
В базовой системе нет поддержки файлового сервиса NFS, который нам будет нужен (потом вы поймёте, почему). Но его легко добавить самостоятельно через репозиторий Entware, который поддерживается в NDMS. В конце статьи я расскажу, как это сделать. Компания Keenetic обещала, что добавит этот файловый сервис в штатную систему в одном из следующих обновлений. В том числе я расскажу о том, как настроить один из вариантов прозрачного обхода блокировок на маршрутизаторе, что очень полезно для просмотра торрентов напрямую (разблокировка торрент-трекеров). Ну и ваш любимый Telegram будет работать в сети на всех подключённых устройствах.
Тестовые маршрутизаторы
К Keenetic Ultra будет подключён обычный HDD 2,5″ (1 ТБайт) с файловой системой NTFS по USB 3.0.
Кроме Keenetic Ultra я буду использовать Xiaomi Mi Router 3G с прошивкой Padavan. Он использует аналогичную мощную SoC MediaTek MT7621AT, имеет аналогичный объём ОЗУ, порт USB 3.0, но Wi-Fi реализован на более простых контроллерах MT7603E (отвечает за 2,4 ГГц, 802.11b/g/n, MIMO 2×2) и MT7612E (отвечает за 5 ГГц, 802.11a/n/ac, MIMO 2×2). По аппаратной части и схемотехнике он уступает Keenetic Ultra, но и стоит существенно дешевле. К маршрутизатору подключён обычный HDD 2,5″ (1 ТБайт) с файловой системой EXT4 по USB 3.0.
Ещё один маршрутизатор — TP-Link TL-WDR4300 с последней официальной прошивкой. Он вышел 6 лет назад и относился к топовым решениям того времени. До сих пор подобными маршрутизаторами пользуется большое количество людей. Сделан на базе SoC Atheros AR9344. Имеет 128 Мбайт ОЗУ. Wi-Fi реализован на контроллерах Atheros AR9580 (отвечает за 5 ГГц, 802.11a/n, MIMO 3×3) и встроенном в Atheros AR9344 (отвечает за 2,4 ГГц, 802.11b/g/n, MIMO 2×2). Функциональность NAS у него очень слабая. В качестве напарника (NAS — Samba/CIFS, DLNA, NFS) для него я буду использовать мощный мини-ПК с SSD и Ububtu, который подключён к маршрутизатору по Gigabit Ethernet.
Тестовые Android-боксы
Nvidia Shield TV. Это топовый (во всех смыслах этого слова) Android-бокс. У него мощный адаптер адаптер Wi-Fi с поддержкой 802.11ac, MIMO 2×2.
Ugoos AM3. Это достаточно популярный бокс на Amlogic S912. Свою популярность он обрёл из-за качественной прошивки с хорошей медиа-функциональностью. Напомню, что лишь две компании занимаются глубокой доработкой базовой системы для Amlogic S912 — Minix и Ugoos. Многим Ugoos AM3 известен именно по прошивке, потому что её можно ставить на некоторые так называемые «паразитные» боксы, которые стоят существенно дешевле. В Ugoos AM3 используется дешёвый адаптер Wi-Fi на базе Qualcomm QCA9377 (под брендом Longsys) — 802.11ac, MIMO 1×1. Это типичный адаптер Wi-Fi для многих недорогих Android-боксов.
Xiaomi Mi Box 3 Enhanced (MDZ-18-AA). Это уникальный недорогой бокс на рынке, который недооценён потребителями (есть причины). Редкая жемчужина в куче навоза. Ничего лучше на кухню по Wi-Fi для небольшого ТВ (т.к. бокс не поддерживает автофреймрейт и HDR) на рынке просто нет. Очень мощный и быстрый. У бокса отличная реализация библиотек декодирования и StageFright, и MediaCodec без значительных недостатков. В обоих вариантах реализована отличная система устранения чересстрочности. Идеальная работа с IPTV, формат потоков IPTV вообще не имеет значения. Ни один бокс не работает с торрент-ТВ так, как это делает Xiaomi Mi Box 3 Enhanced. Удобный Bluetooth-пульт. Кастомная система Android TV. В Xiaomi Mi Box 3 Enhanced используется очень мощный адаптер Wi-Fi MediaTek MT6630 — 802.11ac, MIMO 2×2.
Хотел ещё использовать Minix Neo U9-H. Это единственный бокс (платы для разработчиков не в счёт) на S912 с поддержкой MIMO 2×2, адаптером Wi-Fi Ampak AP6356S. Но друга, которому я дарил этот бокс в своё время, не будет дома в ближайшие недели — пришлось от идеи отказаться.
Сценарий тестирования
Я смоделировал типовую ситуацию. Многоэтажный дом, пронизанный сотнями Wi-Fi сетей.
1,2 — капитальная железобетонная стена. 3 — маршрутизатор. 4 — телевизор. 5 — Android-бокс.
Рассматривалась только одна ситуация — по Wi-Fi к маршрутизатору подключён бокс и другие устройства, но нагрузку создаёт только бокс. Нагрузочное тестирование маршрутизаторов выходит за рамки статьи. Для подключения использовалась только сеть с диапазоном 5 ГГц. По 2,4 ГГц ни одно из устройств не обеспечит необходимую скорость даже в «стерильном» помещении. А около ТВ можно обнаружить 8 Wi-Fi сетей, которые делают тестирование в диапазоне 2,4 ГГц бессмысленным. Сам маршрутизатор подключён к сети Интернет со скоростью 200 Мбит/с. Предварительно настраивалось положение бокса, которое обеспечивает предельную скорость Wi-Fi в конкретном месте.
На Keenetic Ultra, Xiaomi Mi Router 3G и отдельном NAS (который использовался в паре с TP-Link TL-WDR4300) были включены файловые сервисы: Samba/CIFS, DLNA, NFS.
Немного теории
Blu-ray. Максимальная скорость передачи данных составляет 54 Мбит/с. При этом максимальный битрейт для видеопотока составляет 40 Мбит/с. Очень часто он используется почти полностью.
UHD Blu-ray. Максимальная скорость передачи данных составляет 128 Мбит/с. При этом максимальный битрейт для видеопотока составляет 100 Мбит/с. Тут нужно понимать, что для фильмов со стандартной частотой кадров (23,976 к/с) используется существенно меньший битрейт, чаще всего не более 65 Мбит/с. Остальную «часть» битрейта для видеопотока «занимает» FHD поток, который который находится в общем контейнере. Битрейт, приближенный к максимальному, будет у потоков 2160p60, но такой релиз, если не ошибаюсь, только пока один.
Blu-ray и UHD (2160p) Blu-ray — так на торрент-трекерах обозначаются нелегальные полные копии дисков со снятой защитой. Структура диска полностью сохранена. Размер такого контента может достигать 40 Гбайт для Blu-ray и 100 Гбайт для UHD Blu-ray. BDRemux и UHD (2160p) BDRemux — так на торрент-трекерах обозначаются упрощённые нелегальные копии дисков. Чаще всего это контейнер MKV с одним основным видеопотоком, несколькими звуковыми дорожками, субтитрами, главами, всё остальное вырезано. Но встречаются ремуксы, которые сделаны не в контейнере MKV, а в M2TS. Иногда встречаются ремуксы, которые сделаны в виде файловой структуры Blu-ray. Размер таких ремксов существенно меньше полных копий Blu-ray. Например, Blu-ray может занимать 100 Гбайт с общим битрейтом 110 Мбит/с, а ремукс 70 Гбайт с общим битрейтом 70 Мбит/с.
Киноманы предпочитают Blu-ray и UHD Blu-ray с сохранённым меню, дополнительными материалами, множеством звуковых дорожек. Но многие другие предпочитают BDRemux и UHD BDRemux. Один файл, уже содержит только самое необходимое, качество такое же, как и у Blu-ray и UHD Blu-ray. Более того, с новым трендом просмотра торрентов напрямую, выбор (UHD) BDRemux очевиден — нужна меньшая пропускная способность канала и простота выбора нужного файла для запуска.
Тестовые материалы
- Набор файлов Jellyfish от 20 до 128 Мбит/с (HEVC и HEVC Main 10). Я немного модифицировал этот набор. В каждый файл была добавлена звуковая дорожка, чтобы легче было выявлять нарушения при воспроизведении (сразу идёт нарушение прямого вывода звука). Был создан дополнительный файл с битрейтом 128 Мбит/с. Воспроизведение этих файлов через разные файловые сервисы сразу покажет, на что можно рассчитывать с конкретным оборудованием и конкретным файловым сервисом. Например, если бокс способен будет прокачать Jellyfish 128 Мбит/с, то ему по плечу будет воспроизвести любой UHD Blu-ray, который только существует. Если не менее 70 Мбит/с, то боксу по плечу подавляющее большинство UHD BDRemux. Если не менее 55 Мбит/с, по плечу будет воспроизвести любой Blu-ray.
- Кастомный UHD BDRemux «Трансформеры», сделанный в виде структуры UHD Blu-ray. В результатах тестов он будет называться «UHD Blu-ray». Размер — 96 Гбайт. Общий битрейт около 110 Мбит/c. Этот фильм служит подтверждением того, что бокс справится с большинством UHD Blu-ray по конкретному файловому протоколу.
- Кастомный BDRemux «Криминальное чтиво», сделанный в виде структуры UHD Blu-ray. В результатах тестов он будет называться «Blu-ray». Размер — 40 Гбайт. Общий битрейт около 35 Мбит/с. Этот фильм служит подтверждением того, что бокс справится с любыми Blu-ray по конкретному файловому протоколу.
- UHD BDRemux «Первому игроку приготовиться» с торрента напрямую. Размер — 66 Гбайт. Общий битрейт около 68 Мбит/с. Этот фильм служит подтверждением того, что бокс справится с подавляющим большинством UHD BDRemux с торрентов напрямую.
- BDRemux «Мстители: Война бесконечности» с торрента напрямую. Размер — 31 Гбайт. Общий битрейт около 30 Мбит/с. Этот фильм является подтверждением того, что бокс справится с подавляющим большинством BDRemux с торрентов напрямую.
Дополнительно использовался сервер iperf, который запущен компьютере в локальной сети. Компьютер подключён к маршрутизатору по Gigabit Ethernet. На боксах запускался клиент iperf на приём (ключ R) в один поток. Этот тест демонстрирует, какую максимальную реальную скорость можно достигнуть с самым тривиальным P2P соединением.
Все тестовые материалы (кроме фильмах на торрент-трекерах) были скопированы на диски, подключённые к маршрутизаторам, и на NAS.
Видеоплееры
На Nvidia Shield TV использовался ключевой для бокса плеер — Kodi 17.6. Не буду в деталях рассказывать, почему именно он. Кратко, у него самый лучший и беспроблемный движок по работе с медиа-контентом. Kodi поддерживает работу с Samba/CIFS, DLNA, NFS со скоростью, которая выше, чем других плееров. На Nvidia Shield TV в Kodi идеально работает так называемый «современный» автофреймрейт и прямой вывод всех актульных звуковых потоков, в том числе Dolby Atmos и DTS:X. Nvidia Shield TV поддерживает системный клиент Samba/CIFS, который монтирует сетевые ресурсы в виде отдельного диска. Он тоже будет использоваться в тесте.
На Ugoos AM3 использовался ключевой для бокса плеер — SPMC 16.7.4. Ugoos AM3 ещё не дорос до Kodi из-за некоторых проблем с выводом в SurfaceView из MediaCodec. SPMC позволяет использовать устаревший amcodec, который обеспечивает идеальное качество и идеальную работу системного автофреймрейта на Ugoos AM3, прямой вывод DD и DTS. SPMC поддерживает работу с Samba/CIFS, NFS. С DLNA в этом плеере проблемы, так что в результатах будет стоять прочерк. Ugoos AM3 поддерживает системные клиенты Samba/CIFS и NFS, которые монтируют сетевые ресурсы в виде отдельных папок прямо во внутренней памяти бокса. Они тоже будет использоваться в тесте. Важно сделать замечание, что в тесте Jellyfish 128 Мбит/с amcodec переключался на MediaCodec, т.к. amcodec не способен переварить видео с битрейтом выше 120 Мбит/с, а MediaCodec может. В UHD Blu-ray такого битрейта в видео не может быть, а нас интересует лишь пропускная способность сети при воспроизведении файла. Т.е. этот никак не влияет на выводы по результатам.
На Xiaomi Mi Box 3 Enhanced нет ключевого плеера, на нём использовался Kodi 17.6.
В Kodi и SPMC было установлено дополнение Elementum для проигрывания торрентов напрямую. Я вам о нём детально уже рассказывал.
Немного поясню по поводу DLNA и Samba. DLNA очень упрощённый протокол и рассчитан только на медиа-контент. Из-за этого по DLNA в Kodi 17.6 и SPMC вы не сможете запустить воспроизведение папки Blu-ray в «один клик», вам придётся самостоятельно перебирать файлы потоков, чтобы найти основной тайтл. А в Kodi 18 (скоро должна выйти эта версия) вы тоже не сможете запустить воспроизведение папки UHD Blu-ray по DLNA в «один клик». Для киноманов больше подходят полноценные файловые протоколы Samba/CIFS и NFS. Скорость работы клиента Samba практически во всех программах на всех Android-боксах — это одно из самых уязвимых мест. Боксы с ним работают медленно, особенно по Wi-Fi. Спасают только системные клиенты Samba, если они есть в системе бокса.
Результаты тестирования
Эталонный тест (для ориентира) с подключением по Ethernet к Keenectic Ultra
| Подключение через Ethernet | 100 Мбит/с Nvidia | 100 Мбит/с Ugoos | 1000 Мбит/с Nvidia | 1000 Мбит/с Ugoos |
| iperf | 95 Мбит/с | 95 Мбит/с | 940 Мбит/с | 940 Мбит/с |
| Jellyfish — SMB | 60 Мбит/с | 50 Мбит/с | 128 Мбит/с | 110 Мбит/с |
| Jellyfish — DLNA | 80 Мбит/с | — | 128 Мбит/с | — |
| Jellyfish — NFS | 70 Мбит/с | 70 Мбит/с | 128 Мбит/с | 128 Мбит/с |
| Jellyfish — SMB (система) | 70 Мбит/с | 60 Мбит/с | 128 Мбит/с | 128 Мбит/с |
| Jellyfish — NFS (система) | — | 70 Мбит/с | — | 128 Мбит/с |
| Blu-ray — SMB | Да | Да | Да | Да |
| Blu-ray — DLNA | Да | — | Да | — |
| Blu-ray — NFS | Да | Да | Да | Да |
| Blu-ray — SMB (система) | Да | Да | Да | Да |
| Blu-ray — NFS (система) | — | Да | — | Да |
| BDRemux с торрента напрямую | Да | Да | Да | Да |
| UHD Blu-ray — SMB | Нет | Нет | Да | Да |
| UHD Blu-ray — DLNA | Нет | — | Да | — |
| UHD Blu-ray — NFS | Нет | Нет | Да | Да |
| UHD Blu-ray — SMB (система) | Нет | Нет | Да | Да |
| UHD Blu-ray — NFS (система) | — | Нет | — | Да |
| UHD BDRemux с торрента напрямую | Да | Нет | Да | Да |
Gigabit Ethernet решает все проблемы при просмотре качественного контента 4К — это известная истина. Нам эти данные нужны лишь для примера, потому наш интерес — это Wi-Fi.
Тест Wi-Fi с Nvidia Shield TV
| Keenetic Ultra | Xiaomi Mi Router 3G | TP-Link WDR4300 | |
| iperf | 216 Мбит/с | 161 Мбит/с | — |
| Jellyfish — SMB | 60 Мбит/с | 55 Мбит/с | — |
| Jellyfish — DLNA | 128 Мбит/с | 128 Мбит/с | — |
| Jellyfish — NFS | 128 Мбит/с | 80 Мбит/с | — |
| Jellyfish — SMB (система) | 128 Мбит/с | 80 Мбит/с | — |
| Jellyfish — NFS (система) | — | — | — |
| Blu-ray — SMB | Да | Да | — |
| Blu-ray — DLNA | Да | Да | — |
| Blu-ray — NFS | Да | Да | — |
| Blu-ray — SMB (система) | Да | Да | — |
| Blu-ray — NFS (система) | — | — | — |
| BDRemux с торрента напрямую | Да | Да | — |
| UHD Blu-ray — SMB | Нет | Нет | — |
| UHD Blu-ray — DLNA | Да | Да | — |
| UHD Blu-ray — NFS | Да | Нет | — |
| UHD Blu-ray — SMB (система) | Да | Нет | — |
| UHD Blu-ray — NFS (система) | — | — | — |
| UHD BDRemux с торрента напрямую | Да | Да | — |
При подключении к TP-Link бокс Nvidia Shield TV сообщил, что сигнал слабый и подключаться к этой сети он не будет. Когда я отключил запрет на подключение к сетям со слабым сигналом, подключение произошло, но сеть нормально не работала.
В остальном Nvidia Shield TV справился отлично и показал свой нрав топового Android-бокса. UHD контент по Wi-Fi для него, если у вас хороший маршрутизатор, вообще не проблема. Используя Xiaomi Mi Router 3G, ваш выбор только DLNA для UHD Blu-ray и DLNA, NFS, SMB (системный клиент) для UHD BDRemux. А в случае Keenetic Ultra выбор из DLNA, NFS, SMB (системный клиент) для обоих типов контента, UHD Blu-ray и UHD BDRemux. UHD BDRemux с торрентов напрямую с обоими маршрутизаторами воспроизводился без проблем.
Тест Wi-Fi с Xiaomi Mi Box 3 Enhanced
| Keenetic Ultra | Xiaomi Mi Router 3G | TP-Link WDR4300 | |
| iperf | 235 Мбит/с | 194 Мбит/с | 110 Мбит/с |
| Jellyfish — SMB | 80 Мбит/с | 70 Мбит/с | 55 Мбит/с |
| Jellyfish — DLNA | 128 Мбит/с | 128 Мбит/с | 70 Мбит/с |
| Jellyfish — NFS | 128 Мбит/с | 100 Мбит/с | 55 Мбит/с |
| Jellyfish — SMB (система) | — | — | — |
| Jellyfish — NFS (система) | — | — | — |
| Blu-ray — SMB | Да | Да | Да |
| Blu-ray — DLNA | Да | Да | Да |
| Blu-ray — NFS | Да | Да | Да |
| Blu-ray — SMB (система) | — | — | — |
| Blu-ray — NFS (система) | — | — | — |
| BDRemux с торрента напрямую | Да | Да | Да |
| UHD Blu-ray — SMB | Нет | Нет | Нет |
| UHD Blu-ray — DLNA | Да | Да | Нет |
| UHD Blu-ray — NFS | Да | Нет | Нет |
| UHD Blu-ray — SMB (система) | — | — | — |
| UHD Blu-ray — NFS (система) | — | — | — |
| UHD BDRemux с торрента напрямую | Да | Да | Нет |
Xiaomi Mi Box 3 Enhanced ещё раз доказал, что у него самый мощный Wi-Fi на рынке Android-боксов. Он готов перемолоть в труху UHD Blu-ray по воздуху, уделывая по скорости Nvidia Shield TV. Но только если у вас современный маршрутизатор с мощным Wi-Fi. Без него вы будете ограничены Blu-ray. Конечно, в реальности он не предназначен для UHD контента из-за отсутствия поддержки автофреймрейт и HDR. Его задача — спрятаться за небольшим ТВ на кухне и радовать идеальной работой. Ничего лучше на рынке для такой задачи нет.
Тест Wi-Fi с Ugoos AM3
| Keenetic Ultra | Xiaomi Mi Router 3G | TP-Link WDR4300 | |
| iperf | 170 Мбит/с | 104 Мбит/с | 74 Мбит/с |
| Jellyfish — SMB | 30 Мбит/с | 30 Мбит/с | 20 Мбит/с |
| Jellyfish — DLNA | — | — | — |
| Jellyfish — NFS | 80 Мбит/с | 60 Мбит/с | 55 Мбит/с |
| Jellyfish — SMB (система) | 60 Мбит/с | 50 Мбит/с | 50 Мбит/с |
| Jellyfish — NFS (система) | 100 Мбит/с | 70 Мбит/с | 60 Мбит/с |
| Blu-ray — SMB | Нет | Нет | Нет |
| Blu-ray — DLNA | — | — | — |
| Blu-ray — NFS | Да | Да | Да |
| Blu-ray — SMB (система) | Да | Да | Да |
| Blu-ray — NFS (система) | Да | Да | Да |
| BDRemux с торрента напрямую | Да | Да | Да |
| UHD Blu-ray — SMB | Нет | Нет | Нет |
| UHD Blu-ray — DLNA | — | — | — |
| UHD Blu-ray — NFS | Нет | Нет | Нет |
| UHD Blu-ray — SMB (система) | Нет | Нет | Нет |
| UHD Blu-ray — NFS (система) | Нет | Нет | Нет |
| UHD BDRemux с торрента напрямую | Да | Нет | Нет |
С Ugoos AM3 всё сложно. Только с Keenetic Ultra он способен играть UHD BDRemux по NFS и с торрентов напрямую. Даже с мощным Xiaomi Mi Router 3G он на грани справляется с UHD BDRemux по NFS (системный клиент). Больше всего меня удивила разница в скорости iperf на Keenetic Ultra и Xiaomi Mi Router 3G. Я даже специально делал все тесты повторно. Результат не изменился.
Выводы
Android-боксы уже сейчас вполне могут воспроизводить потребительский UHD-контент с предельным качеством (UHD Blu-ray) по Wi-Fi — это очевидный факт. Конечно, имея копеечный китайский бокс и маршрутизатор за 1500 рублей вас ждёт боль и унижение, а не UHD Blu-ray по Wi-Fi. Имея крутой бокс и слабый маршрутизатор вас тоже ждёт боль и унижение. К вопросу воспроизведения такого контента нужно подходить с умом. Бокс должен быть с мощным адаптером и поддержкой MIMO 2×2. Маршрутизатор тоже должен быть соответствующим. Чем мощнее Wi-Fi контроллеры в маршрутизаторе, тем лучше. Тесты показали, что топовый маршрутизатор Keenetic Ultra может вдохнуть жизнь по Wi-Fi даже в популярный Ugoos AM3 с его простым Wi-Fi адаптером, позволяя проигрывать UHD BDRemux с NAS (маршрутизатора) или с торрентов напрямую, почти дотягивая до UHD Blu-ray. При этом нужно тщательнее подходить к выбору файлового сервиса. Чем мощнее Wi-Fi в ваше боксе и мощнее маршрутизатор, тем шире выбор файловых сервисов, которые позволят вам прокачать UHD Blu-ray. В порядке убывания скорости: DLNA > NFS > Samba/CIFS.
Дополнительный материал: настройка Entware, NFS и обход блокировок через Tor
Может кому-то окажется полезным то, как я настраивал Keenetic Ultra перед тестом…
Включение поддержки OPKG и репозитория Entware
Простую инструкцию вы найдёте в каталоге готовых решений в Keenetic Community. Для настройки и использования вам понадобится любая флешка. Как отформатировать флешку с использованием файловой системы EXT4 вы можете прочесть в Центре поддержки Keenetic.
Включение NFS
Как я уже упоминал, компания Keenetic обещала встроить поддержку NFS в прошивку и включение через веб-конфигуратор. Пока этого не произошло, можете включить поддержку NFS самостоятельно.
У вас на маршрутизаторе уже должна быть включена поддержка OPKG и репозитория Entware.
Зайдите по SSH (по умолчанию, если вы не меняли, имя — root, пароль — keenetic) на маршрутизатор. Порт 222, если установлен компонент «Сервер SSH». Можете использовать бесплатный клиент PuTTY для Windows. Введите:
opkg update
opkg install mc
opkg install portmap
/opt/etc/init.d/S55portmap start
opkg install nfs-kernel-server
cat /dev/null > /opt/etc/exports
mcedit /opt/etc/exports
Скопируйте в буфер и вставьте строку (Shift + Insert):
Замените SSD на имя вашего диска, подключённого к Keenetic, который будет доступен по NFS. Сохраните изменения (F2) и выйдите из mcedit (F10).
/cat /dev/null > /opt/etc/init.d/S57nfs-kernel-server
mcedit /opt/etc/init.d/S57nfs-kernel-server
Скопируйте в буфер и вставьте содержимое:
#!/bin/sh
# Copyright © 2006 OpenWrt.org
PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
NFS_D=/opt/var/lib/nfs
LOCK_D=/opt/var/lib/nfs/sm
start() <
insmod /lib/modules/3.4.113/sunrpc.ko
insmod /lib/modules/3.4.113/lockd.ko
insmod /lib/modules/3.4.113/exportfs.ko
insmod /lib/modules/3.4.113/nfsd.ko
grep -q /proc/fs/nfsd /proc/mounts || \
mount -t nfsd nfsd /proc/fs/nfsd
mkdir -p $LOCK_D
touch $NFS_D/rmtab
sysctl -w fs.nfs.nlm_tcpport=32777 fs.nfs.nlm_udpport=32777 > /dev/null
rpc.statd -p 32778 -o 32779
exportfs -r
rpc.nfsd
rpc.mountd -p 32780
>
stop() <
killall rpc.mountd 2> /dev/null
rpc.nfsd 0 2> /dev/null
exportfs -au
killall rpc.statd 2> /dev/null
grep -q /proc/fs/nfsd /proc/mounts && \
umount /proc/fs/nfsd
>
reload() <
exportfs -r
>
Сохраните изменения и выйдите из mcedit.
Прозрачный обход блокировок через Tor
Обход блокировок вам жизненно необходим, если вы планируете просматривать торренты напрямую, т.к. многие торрент-трекеры заблокированы в России. Существует два популярных метода обхода блокировок на стороне маршрутизатора — через OpenVPN и сервер antizapret и через Tor. Я расскажу, как настроить второй вариант. Только трафик к заблокированным ресурсам (обмен данными с торрент-трекерами и пр.) пойдёт через Tor, а всё видео от пиров будет загружаться уже через ваш основной канал. Т.е. никакого падения скорости в обычной работе с сетью Интернет у вас не произойдёт. В том числе у вас заработает, например, Telegram, и будут доступны все ресурсы, заблокированные Роскомнадзором. Всё будет настроено только на маршрутизаторе, и все подключённые к нему устройства получат доступ к заблокированным ресурсам. Доменные имена заблокированных ресурсов будут тоже резолвиться через Tor, провайдер подменить ответы не сможет.
Инструкция сделана на базе варианта для прошивки Padavan.
У вас на маршрутизаторе уже должна быть включена поддержка OPKG и репозитория Entware.
Зайдите по SSH (по умолчанию, если вы не меняли, имя — root, пароль — keenetic) на маршрутизатор. Порт 222, если установлен компонент «Сервер SSH». Можете использовать бесплатный клиент PuTTY для Windows. Введите:
opkg update
opkg install mc tor iptables ipset dnsmasq-full ndmq tor-geoip lua wget
mkdir /opt/lib/lua /opt/etc/runblock
wget —no-check-certificate -O /opt/lib/lua/ltn12.lua https://bitbucket.org/blackcofee/rublock-tor/raw/master/opt/lib/lua/ltn12.lua
wget —no-check-certificate -O /opt/bin/rublupdate.lua https://bitbucket.org/blackcofee/rublock-tor/raw/master/opt/bin/rublupdate.lua
wget —no-check-certificate -O /opt/bin/rublock.sh https://bitbucket.org/blackcofee/rublock-tor/raw/master/opt/bin/rublock.sh
chmod +x /opt/bin/rublupdate.lua /opt/bin/rublock.sh
cat /dev/null > /opt/etc/tor/torrc
mcedit /opt/etc/tor/torrc
Скопируйте в буфер и вставьте содержимое (Shift + Insert), замените адрес 192.168.0.1 на адрес вашего маршрутизатора внутри локальной сети:
Сохраните изменения (F2) и выйдите из mcedit (F10).
Источник