Linux openwrt tp link

Пошаговая прошивка OpenWRT на роутер TP-LINK TL-WR741ND

Роутеры лишаются своих родных прошивок по разным причинам. Желание добавить функционал, припаять USB порт или просто добавить стабильности в работу роутера.

В моём случае роутер на последней стабильной родной прошивке при 3 WiFi и 2 Ethernet потребителях подвисал 4 раза в неделю. Это не очень страшно, но и перезагружать его надоело. Хотелось стабильности. После поисков и чтения отзывов выбор пал на OpenWRT. В статье уже представлена пошаговая инструкция без ошибок, которые мне пришлось пройти.

Шаг 1, прошиваем на последнюю официальную прошивку
Шаг 2, скачиваем и устанавливаем OPENWRT

Далее необходимо выбрать версию прошивки OpenWRT.

Следует использовать именно тот файл, который согласуется с версией железа вашей модели. Не пренебрегайте этим правилом! Возможны два варианта файловой системы для загрузки: JFFS2 и SquashFS.

Прежде чем продолжить описание сборки, остановлюсь немного на том, как устроена корневая файловая система OpenWRT. Она представляет собой файловую систему mini_fo, которая прозрачно объединяет две другие файловые системы: неизменяемую SquashFS, смонтированную в /rom, и изменяемую JFFS2, смонтированную в /overlay. Все файлы, которые создаются или изменяются после установки прошивки, находятся в /overlay. При удалении файлов, изначально бывших в прошивке, mini_fo просто помечает их как удаленные, сами же файлы остаются в /rom и продолжают занимать место. Как SquashFS, так и JFFS2 используют сжатие, но SquashFS дает лучшую степень сжатия, поэтому помещение всех необходимых пакетов сразу в /rom дает прошивку меньшего размера. Исключение ненужных пакетов из прошивки также позволяет сэкономить столь драгоценное место на флешке.
alt

Слово factory в названии файла значит, что такой файл вы должны заливать на ваше устройство поверх заводской (родной) прошивки. файл со словом sysupgrade применим только для обновления OpenWRT, т.е. заливается после factory прошивки.

У нас стоит родная прошивка, значит нам нужно устанавливать прошивку с тегом factory.

Ниже представлена одна прошивка с разной аппаратной версией устройства, выбираем ту к которой принадлежит ваш роутер, для того что бы определить версию смотри Шаг 1:

  • TL-WR741ND V1 Factory
  • TL-WR741ND V2 Factory
  • TL-WR741ND V4 Factory

Качаем factory прошивку и шьём обычным способом. Системные инструменты -> Резервная копия & Восстановление (System Tools -> Firmware Upgrade).

Шаг 3, входим в WEB интерфейс прошивки

После успешной прошивки мы получаем рабочий роутер с включенным web-интерфейсом. Поэтому заходим в настройки прошивки через браузер. Дальнейшие действия таковы:

Вводим в адресную строку адрес роутера 192.168.1.1

Нажимаем клавишу Enter и появляется web интерфейс роутера. Мы увидим то что нам предложили ввести Username и Password. В Username вводим root, поле Password оставляем пустым. Нажимаем Login.

На этом прошивка закончилась, вы попали в web интерфейс прошивки Openwrt.

Шаг 4, настраиваем интернет соединение

Нажимаем на Network -> Interfaces -> Wan -> Edit

Выбираем нужный нам протокол, в моем случаи это PPPoE. Вводим логин от интернета в строку PAP/CHAP username, а пароль в PAP/CHAP password. Нажимаем Save & Apply.

Читайте также:  0x80242fff windows 10 update

Возвращаемся обратно в Interfaces, нажимая на этот раздел, выбираем строку WAN и нажимаем connect. Интернет настроен.

Шаг 5, настраиваем Wi-Fi соединение

Настраивается оно почти так же как и интернет соединение так что расскажу кратко.
Заходим раздел Network -> Wifi -> edit(если есть) или Add(если нет созданной). В разделе General Setup меняем ESSID, это название вашей сети, потом заходим в Wireless Security. В строке Encryption выбираем WPA-PSK/WPA2-PSK Mixed Mode. В строке Key пишем пароль от wi-fi сети. Нажимаем Save & Apply.

Возвращаемся в раздел Wifi и нажимаем connect. Wi-fi настроен.

Шаг 6, русифицируем прошивку

Для того чтобы русифицировать прошивку нам надо зайти в раздел System -> Software -> и нажать на кнопку Update List.

После этого нажимаем на Available Packages, выбираем раздел L. Находим файл с именем «luci-i18n-russian» нажимаем кнопку Install. На запрос согласны ли вы, нажимаете ок.

Языковой пакет скачали, теперь его нужно применить. Открываем раздел System -> Language and Style-> Language -> Русский. После этого нажимаем кнопку Save & Apply.

Обновляем страницу(нажимаем на клавиатуре F5) и видим русский интерфейс.

Шаг 7, устанавливаем пароль на маршрутизатор

Заходим в раздел Система -> Управление. Устанавливаем Пароль маршрутизатора. Нажимаем сохранить и применить.

Источник

В данной статье я хотел бы поделиться опытом сборки собственной прошивки openwrt, с выбором нужных пакетов, а также настройкой отказоустойчивого доступа в интернет с мгновенной ротацией каналов и одновременной их работой, складыванием скорости провайдеров и как следствием, настройкой всем любимых vlan-ов.

Выбор пал на роутер Tp-Link TL-WR741ND v.4.25 (цена 1150 рублей), который я выбрал по следующим характеристикам:

1) Низкая цена
2) Достаточное количество памяти для заявленных требований
3) Возможность запиливания USB (для истинных ценителей поковырять железку)
4) Поддержка OpenWrt Barrier breaker
5) Поддержка vlan-ов
6) Поразительная живучесть (роутер невозможно убить неверной прошивкой, функция восстановления прошивки по tftpd работает как часы, и не раз выручала во время неудачных экспериментов). О методах восстановления напишу в конце статьи.

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

Было решено выпилить: ppp, поддержку ipv6, opkg (ставить же не будем больше ничего).
Добавить: openvpn-polarssl (меньше занимает места), luci-mwan3 (очень понравилась визуальная настройки и индикация работы каналов)

Итак, начнем:

1) Подготовка устройства

Для начала, обновим наше устройство до последней версии стандартной прошивки tp-link. Смысла описывать подробно данное действо я не вижу, все достаточно понятно и просто.

2) Сбор прошивки

Нам понадобится многоядерный процессор для комфортного создания своей прошивки (я собирал на i7). Но и Core2Duo сойдет, разве что подольше собираться будет. OS подойдет Ubuntu 15 x86_64.

Установка необходимых пакетов:

Все дальнейшие команды сборки делаются от обычного пользователя, не от рута!

Идем в «магазин» за исходниками. Я выбрал OpenWrt Bariier Breaker за удобство в настройке и отличную стабильность на предыдущем роутере (TP-LINK Archer C7).

В домашней папке у нас появится папка wrt, где мы и будем производить сборку.

Скачаем исходники дополнительных пакетов (типа Luci):

Выполним настройку платформы

Читайте также:  Автозапуск rdp windows 10 при включении компьютера

Появится псевдографическое меню, где нас интересуют пункты Target System, Subtarget и Target Profile:

Вся навигация свободится к выбору нужного пункта (стрелками) и нажатием enter, выбор компонента — также enter, выход из меню — стрелки вправо-влево — Exit. Не забудьте сохранить конфиг.

Применяем стандартные параметры для профиля:

Модифицируем набор пакетов:

Удалил:
opkg из (base system)
убрал опцию сборки с поддержкой ipv6 (Global build settings)
ppp (Network).

Добавил:
Luci
luci-app-mwan3 (Luci-Applications)
openvpn-polarssl (Network-vpn).

Не забудьте сохранить конфигурацию!

Параметр -j5 указывает на количество ядер +1 поток для быстрой сборки, а V=s — на вывод подробностей (если будут ошибки).

Процесс займет долгое время, 10-15 минут на i7 процессоре, после чего в директории /home/user/wrt/bin/ar71xx появятся наши прошивки для различных версий роутера. Если не появились — смотрим в логи сборки — наверняка, вы превысили размер прошивки и увидите строку: «firmware is too big». Придется делать make clean, make distclean и начинать все заново. (с шага ./scripts/feeds update -a )

openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-factory.bin — «заводская» прошивка.

Перекидываем её на компьютер с подключенным по ethernet-у роутером (например, через ftp или winscp).

Заходим по адресу: 192.168.0.1 и прошиваем новоиспеченной прошивкой, ждем перезагрузки, затем заходим по адресу: 192.168.1.1

root без пароля (его назначим при первом входе — вверху будет висеть желтый баннер с предупреждением и ссылкой на смену пароля).

Ну наконец-то, самое сложное позади, теперь у нас современная прошивка и НАШ набор программ.

3) Настройка vlan:

Происходит в меню роутера: network — switch

Тут не обошлось без непоняток — нумерация портов в роутере и в конфигурации vlan не совпадает. На скриншоте я постарался объяснить как они изменены. Порт WAN в роутере не участвует в vlan-функционале.

Tagged — тэгированный трафик, сюда направляются пакеты от каждого vlan (101, 102, 103), которые затем распределяются по интерфейсам wan (основной провайдер), wan2 (резервный провайдер), eth0.103 (vlan для локальной сети).

Untagged — нетэгированный режим порта (точка входа ethernet-кабеля от нужного провайдера). Тут важно не запутаться в проводах: что куда идет. Я подписал сзади роутера нужные названия, чтобы в будущем не было путаницы (провайдер№1 101, провайдер№2 102, локалка 103).

Проще говоря, мы впускаем через 3 порта 3 разных сети, которые затем внутри устройства распределяются по полочкам.

После изменений нажмите Save, но не Apply! Мы ведь не хотим остаться без сети во время настройки?

Теперь, нужно создать нужные интерфейсы в Network — Interfaces:

Удалим wan6 интерфейс (мы не используем ipv6 в данном случае).

Изменим wan интерфейс для первого провайдера, укажем нужные данные для подключения (например, провайдер дает инет по dhcp), и укажем какой vlan использовать для этого интерфейса. Вот тут-то и идет сопоставление vlan: провод: интерфейс.

Для второго провайдера wan2 укажем eth0.102.

Для Lan укажем объединить интерфейсы в bridge eth0 и eth0.103:

В настройках интерфейсов wan и wan2 укажите метрику устройств (обязательно для работы mwan3):

Теперь смело можно жать на Save&Apply и проверить введенные настройки.

4) mwan3 или крутая выручалочка админа

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

Для админа пройдет головная боль по временному отключению какого-либо из каналов, и не нужно городить костыльные скрипты по переключению. Я забыл о проблемах в офисе с интернетом и не переживаю когда падает один из них (мне приходят sms по данным событиям).

Читайте также:  Сборник живых обоев для windows

Я точно знаю, что OpenVPN через 30 секунд переключится на резервный канал (слава параметру multihome), связь с главным офисом в г.Москва восстановится и некоторые пользователи и начальники не заметят данный инцидент.

Зайдем в network — load balancing — configuration:

И включим wan2 в работу:

Далее, настроим правила работы каналов:

1) Balanced — Каналы складываются, скорость увеличивается, есть отказоустойчивость (переключение). Рекомендую.
2) wan_only — только провайдер№1
3) wan2_only — только провайдер№2

Остальные rules можно удалить или оставить другое правило.

Подробно я останавливаться на mwan3 не буду — скажу только, что есть возможность пускать трафик до определенного ресурса через один из каналов, если есть привязка на данном ресурсе по IP.

5) Офисная дружба или openvpn

Отлично, интернет настроили, теперь нужно соединить 2 офиса вместе.

Будет заходить по статическому ключу. Генерацию ключа можно произвести на клиентской стороне:

Ключ нужно поместить в /etc/openvpn/keys/ (сервер, клиент).

OpenVPN на роутере у нас уже установлен и мы начнем править конфиг. Для этого зайдем на TP-Link по ssh.

В шапке конфига изменяем:

Cохраняем, выходим. Тут мы включили кастомный конфиг в /etc/openvpn/openvpn.conf — лично для меня это как-то привычнее.

Далее, сам конфиг:

На роутере у нас серверная сторона openvpn. Приводим конфиг к виду:

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

Сохраняем конфиг, применяем:

Смотрим ifconfig, логи и радуемся надежному каналу.

Заключение:

Конечно же, вы не один раз убьете свой роутер неудачной прошивкой, позарившись на удаление нужных компонентов base system.
Но ничего страшного!

Самый простой способ реанимировать роутер — это fail safe в openwrt:

1) Назначьте сетевому адаптеру на компьютере IP адрес 192.168.1.2
2) Маска 255.255.255.0
3) Кабель ethernet — в порт LAN1
4) Выключите роутер
5) Включите и дождитесь пока загорится значок шестеренки
6) Зажмите на 1-2 секунды кнопку роутера QSS — шестеренка заморгает очень быстро
7) Запустите телнет-клиент и подсоединитесь по адресу 192.168.1.1
8) Залейте в tmp роутера дефолтную прошифку для вашей модели, например, через мини-веб-сервер tinyweb
9) Выполните:

Роутер скушает прошивку и перезагрузится.

Шеф, всё пропало!

Да, именно так я подумал, когда убил роутер еще тяжелее. Шестеренка не горела, а роутер циклически ребутался без остановки.

Воспользуемся замечательной функцией в прошивке tp-link-а — загрузка прошивки через tftp:

1) Назначьте сетевому адаптеру на компьютере IP адрес 192.168.0.66
2) Маска 255.255.255.0
3) Кабель ethernet — в порт LAN1
4) Запустите tftp сервер с дефолтной прошивкой в папке под названием «wr741ndv4_tp_recovery.bin» (нужно переименовать файл прошивки)
4) Выключите роутер
5) Возьмите острый и тонкий предмет (ручка)
6) Возьмите роутер в руки, поверните его к лицу портами, ручку держите в свободной руке
7) Включите роутер и тут же зажмите QSS пальцем одной руки+reset ручкой в другой руке. Потренируйтесь и это получится.
8) Удерживайте зажатыми эти 2 кнопки 4-8 секунд, пока в tftp клиенте не пойдет загрузка прошивки в роутер. А она пойдет, не беспокойтесь.

Как только прошивка загрузилась (2-3 сек), отпустите кнопки. Выдохните, роутер спасен.

Источник

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