1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как установить дополнительное программное обеспечение на вашем домашнем маршрутизаторе (DD-WRT)

Как установить дополнительное программное обеспечение на вашем домашнем маршрутизаторе (DD-WRT)

Geoffrey Carr

Вы когда-нибудь хотели иметь дополнительные функции, такие как электронная почта, бит-торрент или даже MySQL прямо на вашем маршрутизаторе? Возможно, теперь вы можете это сделать. How-To Geek погружается в установление программного обеспечения Opkg на DD-WRT.

Изображение Жан Спектора и Авиада Равива

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

  • Превратите свой домашний маршрутизатор в супермощный маршрутизатор с DD-WRT
  • Как удалить рекламу с помощью Pixelserv на DD-WRT

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

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

Вообще обратиться к этой теме мне пришлось, когда я пытался расширить дисковую память на своем роутере на Chaos Calmer 15.05.1. Принциально не хотел собирать свою прошивку, так как собранная разработчиками меня полностью устраивала, за исключением отсутствием свободного места. Именно в процессе получения внешнего overlay мне и пришлось повысить версию пакета f2fs-tools до рабочего состояния. На его примере и попытаюсь раскрыть эту тему.

1. Получение исходных кодов, выбор пакета и подготовка инструментов

Будем компилировать пакет для ветки Chaos Calmer 15.05.1. Получаем исходные коды:

git clone -b v15.05.1 http://github.com/openwrt/chaos_calmer.git
cd chaos_calmer

Обновляем доступный список пакетов

./scripts/feeds update -a

Получаем необходимые правила для компиляции нужного нам пакета, в моем случае это f2fs-tools. После этой команды появится возможность выбрать наш пакет в конфигураторе

./scripts/feeds install f2fs-tools

Далее запускаем конфигуратор. Выбираем целовой профиль нашего роутера, у меня это TP-LINL-MR3020. Сохраняемся и выходим.

ть

Дальше пробегаемся по зависимостям текущего профиля железа. Изменения в конфиг вносятся автоматически.

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

Далее устанавливаем нужные инструменты для компиляции пакета

make tools/install
make toolchain/install

2. Компиляция самого пакета

После чего в папке /bin/ar71xx/packages/packages/ вы найдете готовый к установке пакет и в большинстве случаев необходимые ему библиотеки.

3. Компиляция пакета более новой версии

Не редко бывает, когда попадаются какие-то нерабочие пакеты. Так и нужный мне пакет f2fs-tools версии 1.4.0 оказался нерабочим. Поэтому было принято решение собрать пакет из исходников более новой версии 1.4.1 где проблемы были устранены и зависимости от других пакетов системы и ядра linux были минимальны.

Читать еще:  Что делать если системный блок сильно шумит?

Сначала нужно скачать исходники новой версии пакета в формате архива .tar.gz и положить их в папку /dl. Я скачал исходники f2fs-tools-1.4.1.tar.gz. Далее переходим в папку feeds/packages/utils/f2fs-tools и открываем для редактирования файл Makefile. И меняем в нем версию нашего пакета:

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

И запускаем сборку пакета по новой

Если все пройдет успешно то в папке /bin/ar71xx/packages/packages/ будет находиться уже новая версия нашего пакета. Естественно такой способ не прокатит, если зависимости новой версии пакета критичны. Сначала придется собрать пакеты зависимостей, а они в свою очередь наплодят новые. Так что замкнутый круг. Но данный хак позволил мне собрать пакет в в версии 1.4.1, а вот с переходом пакета на 1.5.0 уже нет.

4. Компиляция стокового пакета с использованием патча

Бывает, что для решения какой-то ошибки в пакете разработчик выпускает патч. Это как правило файл с расширением *.patch. Чтобы применить данный патч к вашему пакету — вам нужно сначала скопировать сам файл патча в папку feeds/папка вашего пакета/patches и сделать обычную компиляцию пакета.

Например, мне нужно было собрать пакет block-mount с патчем поддержки файловой системы f2fs. Так как исторически пакет был зависим с псевдопакетом fstools, патчить пришлось последний. Создаем папку для патчей если ее там еще нет:

Получаем сам патч от разработчиков и кладем его в папку patches

wget -O ./package/system/fstools/patches/0001-add_f2fs_as_supported_extroot.patch https://dev.openwrt.org/attachment/ticket/21858/0001-add_f2fs_as_supported_extroot.patch

Зачищаем ранее собранные части пакета

И компилируем его

После чего в папке /bin ищем свежесобранные пропатченные block-mount и fstools.

Комментарии

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

Установка OpenWrt

OpenWrt изначально был разработан для Linksys WRT54G, но теперь он поддерживает гораздо больше моделей маршрутизаторов. Вы можете найти список поддерживаемого оборудования на веб-сайте OpenWrt.

Вы собираетесь заменить встроенную прошивку вашего роутера на систему OpenWrt Linux, похожую на перепрошивку пользовательского ПЗУ

на ваш смартфон. В вики подробно описаны четыре различных способа установки OpenWrt на ваш роутер.

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

Развитие

Среда разработки OpenWrt и система сборки, известные вместе как OpenWrt Buildroot , основаны на сильно модифицированной системе Buildroot . OpenWrt Buildroot — это набор Make-файлов и патчей, которые автоматизируют процесс создания полной системы OpenWrt на базе Linux для встроенного устройства путем создания и использования соответствующей цепочки инструментов кросс-компиляции .

Встраиваемые устройства обычно используют другой процессор, чем тот, который используется в хост-компьютерах, используемых для создания их системных образов OpenWrt, что требует инструментария кросс-компиляции. Такая инструментальная цепочка компиляции работает в хост-системе, но генерирует код для целевого встроенного устройства и архитектуры набора команд (ISA) его процессора . Например, если хост-система использует x86, а целевая система использует MIPS32 , обычная цепочка инструментов компиляции хоста работает на x86 и генерирует код для архитектуры x86, а цепочка инструментов кросс-компиляции работает на x86 и генерирует код для архитектуры MIPS32. OpenWrt Buildroot автоматизирует весь этот процесс для работы с архитектурами набора инструкций большинства встраиваемых устройств и хост-систем.

OpenWrt Buildroot предоставляет следующие возможности:

  • Упрощает перенос программного обеспечения на разные архитектуры
  • Использует kconfig ( menuconfig ядра Linux ) для настройки всех параметров
  • Предоставляет интегрированный набор инструментов кросс-компилятора ( gcc , ld , uClibc и т. Д.)
  • Предоставляет абстракцию для autotools ( automake , autoconf ), cmake и SCons
  • Обрабатывает стандартный рабочий процесс создания образов OpenWrt: загрузка, установка исправлений, настройка, компиляция и упаковка
  • Предоставляет ряд общих исправлений для заведомо плохо работающих пакетов

Помимо создания образов системы, среда разработки OpenWrt также предоставляет механизм для упрощенной кроссплатформенной сборки программных пакетов OpenWrt. Исходный код для каждого программного пакета необходим для предоставления набора инструкций по сборке, подобного Makefile, и дополнительного набора патчей для исправления ошибок или оптимизации следа.

Читать еще:  Был в сети недавно telegram

Изначально поддержка ограничивалась серией Linksys WRT54G, но сейчас расширилась и включает в себя чипсеты других производителей, в том числе и x86. Наиболее популярными является серия Linksys WRT54G и Asus WL500G. OpenWrt в основном использует интерфейс командной строки, но одной из опций является веб-интерфейс. Техническая поддержка осуществляется с помощью форума и IRC канала. [Источник 1]

Главной отличительной особенностью OpenWrt является полная поддержка файловой системы JFFS2, которая позволяет использовать для управления пакетами менеджер пакетов ipkg (в новых версиях opkg). Всё это делает OpenWrt легко настраиваемой и адаптируемой системой для каждого конкретного случая. В версиях для роутеров, имеющих большой объем флеш-памяти (от 4 Мб), обычно используется ФС SquashFS, которая использует оверлей (совмещение изменяемых и неизменяемых файлов в одном каталоге). В таком случае ФС менее эффективно использует пространство, так как хранит в отдельном разделе описания изменений, но позволяет легко произвести откат к настройкам по умолчанию.

Стандартная прошивка предоставляет базовый набор функций (в постоянно разрабатываемой версии — «trunk» отсутствует даже веб интерфейс). Для расширения функционала используются дополнительные пакеты. Отмечается неудобство веб-интерфейса (особенно для неопытных пользователей).

Установка и настройка Openwrt

Шаг 1. Подготовка и прошивка

И так, первый шаг: заходим в админку роутера, смотрим модель и версию:

Далее идём на сайт OpenWrt https://openwrt.org/toh/views/start , выбираем Table of Hardware: Standard, all devices тут же можно посмотреть техническую информацию об этом роутере и о любых других, поддерживаемых:

Переходим на страницу нашего устройства, смотрим версию устройства и качаем ту прошивку, в которой присутствует слово factory. Прошивка Sysupgrade нужна для обновления уже установленной системы:

Скачали, в веб интерфейсе нашего устройства нажмите выберите файл. Выбираем то, что скачали, затем нажмите Обновить:

Роутер прошивается.. После прошивки — веб-интерфейс будет доступен по http://192.168.1.1

Шаг 2. Первоначальная настройка

Рекомендую сразу установить пароль и выбрать интерфейс «lan» для подключения по SSH:

Шаг 4. Настройка PPPOE

Теперь настроим подключение к интернету. Если ваш провайдер раздаёт интернет по DHCP, то этот шаг мы пропустим. По умолчанию WAN настроен на DHCP client. Если же pppoe, то идем далее:

Переходим в Network -> Interfaces -> Add new interface. Задаём имя интерфейса, протокол (PPPoE). Cover the following interface выбираем тот, который с wan. Вообще, в моём случае в роутере есть свич — eth0.1 и отдельно адаптер ethernet — eth1. В некоторых случаях нет адаптера, есть только свич eth0 и он разделен вланами — eth0.1 будет wan, а eth0.2 свич.

Нажав Submit мы попадаем далее, здесь нужно указать логин/пароль от PPPoE:

Не применяя настроек, переходим в Firewall Settings и выбираем зону WAN. Сохраняем, применяем.

Если все сделано правильно, то, перейдя в Network -> Interfaces видим, что наш pppoe подключился. Проверяем интернет, должен работать.

Шаг 5. Настройка WiFi

По умолчанию в Openwrt выключен WiFi, что бы включить, переходим в Network -> Wireless -> Edit:

Тут можно выбрать канал, на котором будет работать наша Wi-Fi сеть, либо оставить auto, тогда канал будет сам выбираться, в зависимости от загруженности.

  • Режим работы (mode) — выбираем Access Point (точка доступа), о других режимах, мы поговорим в следующих статьях.
  • ESSID — имя сети Wi-Fi.

Далее перейдите на вкладку Wireless Security:

  • Encryption — WPA2-PSK.
  • Key — желаемый пароль Wi-Fi.

Не рекомендуется ставить пароль просто из 8 цифр, такой пароль очень уязвим!После всех настроек нажимаем Enable.

На этом пока всё. В дальнейших статьях мы рассмотрим конфигурационные файлы, логи, доступ через SSH, переназначение одного из LAN портов на WAN и так далее.

Доступ к файловой системе

Запустите WinSCP (или аналог) и подключитесь к виртуальной машине.

Вы увидите стандартный двухпанельный файловый менеджер. Теперь вы можете редактировать конфигурационные файлы в удобном графическом режиме. Так же возможно копировать файлы в «роутер» и обратно. Попробуйте перейти в правой части в корень (/), а затем в /etc/config/ и запустить network.

При желании внесите изменения и сохраните результат.

Читать еще:  Установка manjaro Linux рядом с Windows 10

Предпосылки

Для завершения этого руководства обратите внимание на следующее:

  1. Как указано выше, это руководство было создано и протестировано на Buffalo WZR-HP-AG300H с версией прошивки Buffalo «Pro» 17135. Оно должно работать на любых маршрутизаторах на базе Atheros (ar71xx) с любой версией DD-WRT той же ревизии или выше но твой пробег может очень.
  2. Вам нужно будет включить SSH на маршрутизаторе, а также установить и использовать WinSCP для подключения к нему. Это было объяснено в руководстве «Как удалить рекламу с помощью Pixelserv на DD-WRT». Фактически, предполагается, что вы можете делать все, что объясняется в этом руководстве.
  3. Вы должны иметь возможность подключиться к маршрутизатору с помощью терминала (рекомендуется SSH). Некоторые указания о том, как это сделать, есть в вики DD-WRT.
  4. Место для JFFS и около 4 МБ послеформатированного пространства для базовой установки. Пространство JFFS является не только обязательным условием, но и ограничителем показа. Это связано с тем, что, если на вашем маршрутизаторе нет как минимум вышеупомянутых 4 МБ пространства после форматирования, вы не получите никакой реальной выгоды от этого руководства, и вам будет лучше, если вы воспользуетесь «Еще больше энергии от вашего домашнего маршрутизатора». Руководство по установке пакетов Ipkg непосредственно в прошивку или установка пакетов Ipkg вручную. Следуйте инструкциям в руководстве «Как удалить рекламу с помощью Pixelserv on DD-WRT», чтобы включить JFFS, и посмотрите, сколько свободного места у вас есть на самом деле после его форматирования.

Примечание: Можно сделать это только с 2 МБ свободного места для установки, но тогда мы потеряем результат «/ etc», который станет доступным для чтения и будет вынужден вызывать Opkg, каждый раз указывая файл конфигурации вручную. время … которое как ооочень хромое …

Инструкция по настройке 3G/4G модема в режиме работы RNDIS на примере Huawei E3372

Подготовка к настройкам

Для установки драйверов на Wi-Fi Магните должно быть интернет соединение. Подсоедините провод из порта LAN Wi-Fi Магнита в ваш компьютер и подключитесь по ssh (например, через приложение puTTY) на ip-адрес Wi-Fi Магнита (по умолчанию 192.168.1.1).

Посмотреть ip-адрес Wi-Fi Магнита можно в свойствах сетевого адаптера, либо в командной строке Windows, выполнив команду ipconfig /all.

Установка пакетов/драйверов через ssh

Подключаем 3G/4G модем в Mikrotik в USB-порт. Выполняем команду обновления списка доступных пакетов в OpenWRT.

Выполните установку необходимых пакетов для работы модема

Устанавливаем утилиту usbutils.

Для отображения информации о шинах USB и подключенных устройствах выполняем команду lsusb

Модем определился как Huawei Technologies Co., Ltd. E353/E3131 (Mass storage mode)

Смотрим на каком интерфейсе находится 3g/4g модем

В нашем случае это интерфейс eth2

Добавление модема в Web интерфейсе OpenWRT

Заходим в web интерфейс OpenWRT. Для этого в адресной строке браузера вбиваем ip-адрес Wi-Fi Магнита (тот же самый, на который мы подключись по ssh через приложение puTTY).

Указываем логин root, пароль оставляем пустым. Переходим в раздел Network/Interfaces, выбираем Add new interface.

Указываем имя интерфейса, в графе Protokol выбираем DHCP Client, в графе Interface выбираем eth2 и подтверждаем Create interface.

Переходим в Firewall Settings, указываем WAN зону и нажимаем Save. После OpenWRT применит параметры и снова откроет предыдущие меню.

Сохраняем и применяем.

Если все сделано правильно, то модем выдаст ip адрес 192.168.8.100/24.

Для финальной проверки необходимо отключить от сенсора все сетевые кабели и отключить кабель питания от устройства на 10 секунд.

После этого подключить питание обратно и проверить статус устройства в ЛК, в разделе Wi-Fi Magnit —> Сенсоры. Устройство должно иметь статус «В сети».

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector