Linux прошивка для роутеров

OpenWRT, или Что еще можно сделать со своим роутером

Здравствуйте, на написание данной статьи меня натолкнула аналогичная, но в качестве сервера выступала Raspberry Pi. По моему мнению использовать эту маленькую, но при этом достаточно мощную платку в этих целях немного не целесообразно, у многих есть wi-fi роутер с USB портом, а следовательно зачем включать в розетку целый блок питания от компьютера давая при этом пускай и не большой, но все таки расход электроэнергии когда в розетку включено уже все что надо.
В данной статье рассмотрим установку торрентокачалки на практический любой роутер с USB и поддержкой OpenWRT прошивки. В наличии у меня имеется Linksys E3000, но конкретной разницы в установке и настройке OpenWRT нет. Что нам для этого будет нужно:

  • Непосредственно роутер с разьемом USB, в идеале конечно с двумя.
  • Флешка/ USB HDD произвольного объема под Ваши нужды чем больше тем лучше.
  • Буквально пол часа свободного времени чтобы все поставить и настроить.
  • Прямые руки.
Установка / настройка OpenWRT

Прежде всего сразу оговорюсь что Вы все делаете на свой страх и риск, так как существует вероятность «окирпичивания» Вашего роутера. Проверяем есть ли Ваш роутер в списке поддерживаемых устройств, для этого заходим на сайт OpenWrt

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

После этого переходим в вкладку «Downloads»

Тут стоит выбрать какую ветку использовать стабильную (Attitude Adjustment) или соответственно «trunk» в папке snapshots, сразу замечу если Ваш роутер более менее новой модели, то скорее всего в стабильной ветке вы его не найдете.

Переходим непосредственно к скачиванию прошивки.

После того как прошивка скачалась переходим к прошивки Вашего роутера. Для этого необходимо зайти в его вэб-интерфейс который обычно располагается по адресу 192.168.1.1 или 192.168.0.1 в зависимости от производителя роутера. Подробнее по процессу прошивки и настройки Wi-Fi и всего остального для конкретного роутера можете обратится в Google, а то эта статься может растянуться до неприличных размеров, мы же остановимся именно на установке и настройке Transmission.

Читайте также:  Настройках роутера asus rt n10p
Установка и настройка Transmission

После прошивки роутера запускаем PuTTY если Ваша ОС Windows, если Linux то просто запускаете терминал. В поле адрес вбиваем 192.168.1.1 для PuTTY либо команду telnet 192.168.1.1 для Linux. После успешного подключения переходим к установке / настройке пакетов.

Перед скачиванием пакетов следует маленькое отступление. Так как в роутере физической памяти достаточно мало, колеблется от 4 до 16 мегабайт в зависимости от продвинутости и цены Вашего роутера, нам следует заранее побеспокоится о его увеличении. Ведь мы в любом случае собираемся подключать к нему флешку или жесткий диск так почему бы нам не сделать чтобы роутер грузился непосредственно с раздела на нашем носителе? Давайте сделаем это! Перед всеми манипуляциями с роутером нужно «разбить» Ваш HDD/флешку на несколько разделов.

  1. Раздел под своп (100-200 МБ будет достаточно) * при использовании HDD, при использовании флешки не рекомендуется, так как имеется хоть и большой но все таки ограниченный запас циклов перезаписи
  2. Раздел с которой будет грузится роутер (на Ваше усмотрение от 50 МБ и выше) с файловой системой Ext3 или Ext4 * Вот тут то нам и может пригодится вторая флешка, куда лучше разместить загрузочную область и область для хранения закачек на разных устройствах чтобы безболезненно извлекать ее для скидывания информации без выключения роутера.
  3. Раздел под Ваши загрузки / хранилище все оставшееся место желательно тоже в Ext3/4 если хотите периодический использовать носитель на компьютере то NTFS но приготовьтесь к периодическим ошибкам, так как Linux с этим типом ФС «дружит» довольно посредственно, так же дополнительно придется установить еще один пакет ntfs-3g .

Приступим. Вводим последовательно команды в терминале

opkg update opkg install block-mount kmod-usb-core kmod-usb2 kmod-usb-ohci kmod-usb-storage kmod-fs-ext4 
Этими командами мы обновили базу репозиториев на роутере и установили необходимые нам пакеты: модули ядра для поддержки USB и модули файловой системы
И ищем наши разделы на флешке / HDD * Вы же не забыли подключить Вашу флешку / HDD к роутеру правда?
mount /dev/sdaX /mnt mkdir /tmp/cproot mkdir /home mount --bind / /tmp/cproot tar -C /tmp/cproot -cvf - . | tar -C /mnt -x sync umount /mnt umount /tmp/cproot 
Здесь взамен sdaX надо выбрать тот раздел с которого мы собираемся производить загрузку в дальнейшем. Все остальные команды предназначены для копирования загрузочного раздела роутера на флешку / HDD.
block detect > /etc/config/fstab 
Данная команда записывает все найденные разделы для автоматического подключения в файл /etc/config/fstab . Дальше нам надо немого подредактировать этот файл к виду:
config 'global' option anon_swap '0' option anon_mount '0' option auto_swap '1' option auto_mount '1' option delay_root '0' option check_fs '0' config 'mount' option target '/' option uuid '7d3abfaf-493a-46bb-9730-1d793ecb9783' option enabled '1' config 'mount' option target '/home' option uuid '7d3abfaf-463a-46db-9730-1d793ecb4593' option enabled '1' config 'swap' option uuid '76d36596-5710-4b77-a3a7-02a66d469750' option enabled '1' 

Открываем данный файл для редактирования:

Читайте также:  Роутер asus rt n12 блок питания

Как пользоваться данным редактором можно посмотреть тут или опять же обратится в Google.
Перезагружаем роутер. Опять заходим в консоль и проверяем все ли правильно подмонтировалось:

root@OpenWrt:~# df Filesystem 1K-blocks Used Available Use% Mounted on rootfs 2758072 118004 2501828 5% / /dev/root 2048 2048 0 100% /rom tmpfs 63340 76 63264 0% /tmp tmpfs 512 0 512 0% /dev /dev/sda1 2758072 118004 2501828 5% 

Тут следует обратить внимание на то чтобы rootfs совпадал по параметрам с /dev/sda1 , если это так то у нас все получилось. Переходим к следующему пункту.

Установка torrent клиента Transmission.
opkg update opkg install transmission-daemon transmission-cli transmission-web transmission-remote /etc/init.d/transmission enable 

Открываем файл настроек клиента и редактируем под свои нужды:

config transmission option enable 1 # непосредственно включает клиент option config_dir '/etc/transmission' # расположение фалов настроек клиента option alt_speed_down 50 # ограничение скорости option alt_speed_enabled false option alt_speed_time_begin 540 option alt_speed_time_day 127 option alt_speed_time_enabled false option alt_speed_time_end 1020 option alt_speed_up 50 option bind_address_ipv4 '0.0.0.0' option bind_address_ipv6 '::' option blocklist_enabled false option dht_enabled true option download_dir '/home/' # директория для загрузок option encryption 0 # шифрование option incomplete_dir '/home' # директория для не завершенных загрузок option incomplete_dir_enabled false # включение/выключение директории для незавершенных загрузок option lazy_bitfield_enabled true option lpd_enabled false option message_level 2 option open_file_limit 32 option peer_limit_global 240 option peer_limit_per_torrent 60 option peer_port 51413 option peer_port_random_high 65535 option peer_port_random_low 49152 option peer_port_random_on_start false option peer_socket_tos 0 option pex_enabled true option port_forwarding_enabled false option preallocation 1 option proxy "" option proxy_auth_enabled false option proxy_auth_password '' option proxy_auth_username '' option proxy_enabled false option proxy_port 80 option proxy_type 0 option ratio_limit 2.0000 option ratio_limit_enabled false option rename_partial_files true option rpc_authentication_required false option rpc_bind_address '0.0.0.0' option rpc_enabled true option rpc_password '' option rpc_port 9091 option rpc_username '' option rpc_whitelist '127.0.0.1,192.168.1.*' option rpc_whitelist_enabled false option script_torrent_done_enabled false option script_torrent_done_filename '' option speed_limit_down 100 option speed_limit_down_enabled false option speed_limit_up 40 option speed_limit_up_enabled true option start_added_torrents false option trash_original_torrent_files false option umask 18 option upload_slots_per_torrent 14 option watch_dir_enabled false option watch_dir '' 
/etc/init.d/transmission start 

Запускаем браузер и вводим 192.168.1.1:9091 если все работает то на этом все.

Читайте также:  Одна подсеть несколько роутеров

Если данная статья кого то заинтересует готов так же рассказать о настройке «файлопомойки», поднятия VPN сервера, настройка IPTV на OpenWRT.

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

UPD: В этой статье не описана настройка подключения интернета от Вашего провайдера, так как слишком много нюансов настроек. Без подключения роутера к интернету естественно ничего не выйдет.

Источник

Оцените статью
Adblock
detector