Прошивка openwrt на tp link wr841n. Восстановление маршрутизатора TP-Link TL-WR841ND v8.1. Создаем новый интерфейс NEWWAN

13.03.2024

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

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

Шаг 1, прошиваем на последнюю официальную прошивку
Первое, что стоит сделать, это обновиться и поставить последнюю родную прошивку.
вы можете найти последнюю прошивку для TL-WR741ND, для соответствующей версии оборудования.
  • Переверните роутер и уточните версию железок в нём ориентируясь по наклейке на корпусе.
  • Скачайте архив с последней прошивкой.
  • Прошейте роутер прошивкой из архива обычным способом. Системные инструменты -> Резервная копия & Восстановление (System Tools -> Firmware Upgrade).
Шаг 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 :

Качаем 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 .

Возвращаемся обратно в 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, устанавливаем пароль на маршрутизатор
Заходим в раздел Система -> Управление. Устанавливаем Пароль маршрутизатора . Нажимаем сохранить и применить .

Шаг 8, заключительный этап
-> Выполнить перезагрузку .

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

Показать

Принёс мне знакомый админ роутер , вот такой:

Во время грозы у него выбило порты WAN и LAN1. Знакомым железка была прошита на DD-WRT с целью переназначения WAN-порта на какой-нибудь LAN. Я решил поставить на маршрутизаторе прошивку Open-WRT и благополучно превратил устройство в кирпич:

  • при включении горит только индикатор питания,
  • остальные индикаторы одновременно загораются и тухнут через 1 секунду,
  • при подключении роутера к компьютеру интерфейс линк не поднимает и роутер по сети не доступен.

Ясно, что роутер теперь с полностью стертой или поврежденной прошивкой. При вскрытии устройства на плате обнаружен нераспаянный последовательный порт JP1:

В интернете нашёл электрическую схему кабеля:


Прозвонил разъём и узнал цвета проводов Vcc, GND, Tx и Rx (в моём случае они были такие: жёлтый, красный, синий и белый соответственно). Полная распиновка разъёма:

На плате роутера к последовательному порту подпаялся так, как указано на рисунке (последовательно слева направо - не подключен, красный, белый, синий):

Пач-корд от компьютера вставил в живой LAN-порт (LAN3). На сетевом интерфейсе компьютера установил IP-адрес 192.168.0.2/30 и настроил демон tftpd, с помощью которого файл прошивки будет залит в устройство (пользователям Windows рекомендую воспользоваться программой ) . С официального сайта TP-Link скачал прошивку . Причём (по указанию мануалов) скачивал файл без слова "boot" в имени. Положил скачанный файл прошивки в папку, настроенную в конфигурации tftpd, переименовав его в firmware.bin. Включил роутер и вставил USB-кабель в компьютер.

При включении кабеля в USB-порт компьютера он определился как новое устройство /dev/ttyUSB0 (у пользователей Windows появится новое устройство Serial Data Cable, создающее виртуальный COM-порт и требующее установки драйверов) . После запуска команды

Sudo minicom --device /dev/ttyUSB0

(пользователи Windows могут воспользоваться программой HyperTerminal, PuTTY или ) и установки скорости обмена в 115200 бод 8N1 я увидел на экране диагностические сообщения и периодически появляющуюся надпись "Autobooting in 1 seconds ...". Сразу после очередного появления этого сообщения быстро набрал на клавиатуре tpl . Система перешла в режим ожидания команд, индикаторы роутера перестали мигать и сетевое подключение, не активное до этого, стало активным.

Затем я ввёл команды для заливки прошивки в железку:

Setenv serverip 192.168.0.2

(установка IP-адреса, с которого будет залит файл прошивки в память)

Setenv ipaddr 192.168.0.1

(установка IP-адреса оживляемого устройства)

Tftpboot 0x81000000 firmware.bin

(скачивание файла прошивки с компьютера в память устройства (во временную область, начиная с адреса 0x81000000). Если при выполнении этой команды идет строчка Т Т Т Т Т Т, то это означает Timeout (нет ответа от 192.168.0.2). Должно быть заполнение экрана символами ##########.

Erase 0x9f020000 +0x3c0000

(подготовка (очистка) блока памяти с адреса 0x9f020000 под прошивку длиной 0x3c0000 байт (3932160 в десятичной системе)

Cp.b 0x81000000 0x9f020000 0x3c0000

(копирование блока памяти с адреса 0x81000000 в адрес 0x9f020000 длиной 0x3c0000 байт)

Bootm 0x9f020000

(передача управления программе по адресу 0x9f020000)

Роутер перезагрузился и стал отвечать на ICMP-запросы с адресом 192.168.0.1. Половина дела сделано, железку я поднял с родной прошивкой, но с не рабочим WAN-портом.

Вот так всегда. Хотел начать писать в блог и забросил его, написав вступительный пост. Пора исправляться.

TP-Link продолжает потихоньку мигрировать на новые чипсеты от Mediatek. На этот раз компания выпустила новые версии популярных роутеров WR841N и WR840N.

Человек с ником svobodavac сделал начальную поддержку роутера wr840n v4. на данный момент не принят в LEDE и временно закрыт.

К сожалению, open source драйвер для Wi-Fi чипа (mt76) на данный момент ведёт себя не очень адекватно. Постоянные дисконнекты, игнорирование beacons прямо в момент передачи трафика, потери пакетов, низкая мощность сигнала (это удалось исправить прописав правильное расположение EEPROM в dts). Мне не удалось понять масштаб проблемы (касается ли это только тплинков или это общая проблема всех mt76xx-устройств).

Поэтому было решено собрать LEDE с проприетарным драйвером от MTK.

Все образы версии 17.01.

Для WR840N v4 (ВНИМАНИЕ! Тестирование на WR840N V4 не производилось! Ставить на свой страх и риск! Хотя никаких проблем быть не должно, устройства похожие, но я вас предупредил ):

FAQ:

Как устанавливать?

Установка производится только через TFTP. Тут всё стандартно, как и для остальных тплинков. Имя файла прошивки должно быть tp_recovery.bin .

Более подробная инструкция о том, как заливать прошивки через TFTP на TP-Link’и можно найти, например, (Windows-only).

Как обновлять с LEDE/OpenWrt?

Через LuCI Backup/Flash Firmware , либо sysupgrade через SSH. Обновиться можно с помощью образа sysupgrade. Образ factory пока не принимается.

Если до этого была установлена прошивка LEDE от wr840n v4 на wr841n v13, то лучше установить через TFTP (см. предыдущий пункт).

Будет ли установка через web-интерфейс?

Когда-нибудь будет. По этому поводу были дискуссии в обсуждении pull request’а, из которых ясно, что у новых прошивок новый формат заголовка. На данный момент прошивки собираются с пустым заголовком и из-за этого их можно заливать только через TFTP.

Насколько стабильно работает?

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

Что точно работает и протестировано?

Сам Wi-Fi:), управление им через UCI, MultiSSID.

Что не работает?

Управление через LuCI. Связано это с тем, что LuCI получает некоторые параметры через iwinfo, который работает, однако не дружит с драйвером MTK и не отображает полностью всю текущую информацию. Собственно, фактически через LuCI можно настроить SSID, интерфейс и WEP-шифрование. За остальными настройками придется сходить в консольку:).

Также не работает сам индикатор Wi-Fi. Если очень хочется, можете в LuCI LED Configuration настроить его на интерфейс rai0, чтобы моргал, когда по вайфаю данные текут:).

Что возможно работает?

WDS и режим клиента. Не проверял, однако поддержка в драйвере имеется. Вообще, драйвер должен иметь полную поддержку вайфай чипа, на то он и проприетарный-фирменный:). Проблемы могут возникнуть на этапе трансляции UCI-конфига в конфиг mt7628_ap, который расположен отдельно и из которого, собственно, и идёт чтение конфигурации.

Wireless is disabled or not associated - вот такую фигню пишет!

Опять же, из-за недостатка информации в iwinfo. На самом деле Wi-Fi должен работать и вы должны его видеть с других устройств, просто в LuCI это пока никак не отображается.

Нет интерфейса wlan0!

Вместо wlan0, wlan1, wlan2… драйвер создаёт интерфейсы rai0, rai1, rai2…

Что по поводу репозитория пакетов?

Репозиторий core был заменён на репозиторий на моем сервере. В репозиторий core входят все собранные модули, имеющиеся в LEDE. Модули ядра с lede-project.org вы не сможете установить из-за несоответствия хэш-суммы ядра (это было сделано специально ещё в OpenWrt). Остальные репозитории (base, routing, telephony…) используются стандартные, от lede-project.org . Разве что их придётся раскомментировать в конфигах.

Как долго будет существовать core-репозиторий?

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

Репу выложу на GitHub чуть позже, там необходимо немного прибраться и привести всё в порядок.

Почему бы не сделать pull request разрабам LEDE?

LEDE не принимает решения, содержащие несвободные компоненты. MTK драйвер как раз относится к таким. Для официальной поддержки LEDE надо править опенсорсный драйвер. Более того, не была решена проблема с заголовком прошивки, так что о pull request’е можно пока забыть.

На данный момент параллельно разбираюсь с проблемами опенсорсного драйвера и заголовком. Если проблемы будут решены – сделаю pull request.

Привет! В этой статье мы подробно рассмотрим восстановление роутера Tp-Link после неудачной прошивки. Часто бывает, что во время прошивки роутера происходит какой-то сбой, и роутер просто перестает работать: не работает Wi-Fi, индикаторы питания горят не как обычно, не получается зайти в настройки роутера и т. д. В таких случаях не помогает даже перезагрузка, и сброс настроек к заводским. Если вы неудачно прошили свой роутер Tp-Link, и он стал похож на кирпич, то можно попробовать его восстановить.

Этим способом можно восстановить следующие модели Tp-Link:

TL-MR3220v2, TL-WR842ND, Archer C7 AC1750 v2, TL-WR740Nv4, TL-WR941NDv5, TL-WDR4300ND, TL-WR1042ND, TL-WR940NDv2, TL-WR841NDv8, TL-WDR3600ND, TL-WR741NDv4, TL-MR3420v2, TL-WR940N V2

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

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

Пациент:

Я подумал, что было бы неправильно готовить инструкцию не проверив все самому. Поэтому, я взял свой роутер Tp-Link TL-MR3220v2 (я сейчас им не пользуюсь) , который в принципе полностью рабочий, только почему-то в упор отказывается видеть любой 3G модем. Ну и для чистоты эксперимента, я решил превратить его в кирпич. Сделать это не очень то и просто (когда нужно:) ). Сначала, я попытался залить прошивку для другой аппаратной версии, она не пошла, выдал ошибку. Тогда, решил прошить по Wi-Fi - прошился. Ну и мне ничего не оставалось, как отключить питание в процессе обновления прошивки:) Никогда так не делайте! Ведь восстановить может и не получится.

Получилось, что у меня есть нерабочий Tp-Link TL-MR3220v2, у которого светится только два индикатора (питание и шестеренка) .

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

Можно попробовать перед началом восстановления роутера:

  • Посмотрите статью с возможными причинами, по которым . Возможно, у вас какая-то другая проблема, а роутер рабочий.
  • Перед тем, как восстанавливать свой Tp-Link, попробуйте .

Процесс восстановления роутера Tp-Link

1. Первым делом, нам нужно скачать специальную программу Tftpd . Скачать можно по этой ссылке - (размер - 467 кб) . Сохраните архив с программой на компьютере. Создайте папку с любым именем. Я создал ее на рабочем столе, с именем "325". Извлеките в эту папку саму программу, файл tftpd32.exe .

2. Дальше, нам нужно скачать специальную прошивку. Скачать эту прошивку можно с официально сайта Tp-Link. Найдите прошивку для своей модели, и аппаратной версии - это важно! И еще один важный момент, в названии прошивки не должно быть слова boot . Если не знаете где и как искать прошивку, то посмотрите статью.

В названии прошивки на сайте, вы не увидите слова boot. Подходит прошивка, или нет, можно увидеть только скачав ее на компьютер, и открыв архив. Смотрите название самого файла.bin, который находится в архиве. Для моего TL-MR3220v2, я скачал первую в списке (на сайте) прошивку, и она подошла.

Извлеките файл прошивки из архива и переименуйте его . Имя должно быть таким: "mr3220v2_tp_recovery.bin" - это для модели TL-MR3220v2. Например, для TL-WR841ND v8 имя будет таким: "wr841ndv8_tp_recovery.bin". Все зависит от того, какая у вам модель.

Затем, файл прошивки поместите в папку с программой tftpd32.exe. У вас должно получится примерно так:

3. Нужно сменить IP-адрес подключения по локальной сети. Нажимаем правой кнопкой мыши на значок подключение к интернету и выбираем Центр управления сетями и общим доступом . В новом окне, слева нажимаем на Изменение параметров адаптера .

Нажмите правой кнопкой мыши на адаптер "Подключение по локальной сети" и выберите Свойства . Дальше, выделите пункт "Протокол интернета версии TCP/IPv4" и нажмите кнопку Свойства . Установите переключатель возле "Использовать следующий IP-адрес" .

Теперь внимание! Для моделей роутеров TL-WR1042 и TL-WR842 V1, в поле IP-адрес пропишите 192.168.1.66 . Для всех остальных моделей пропишите - 192.168.0.66 . (Если оба адреса не подойдут, то попробуйте еще 192.168.0.86.) Маска подсети должна прописаться автоматически - 255.255.255.0. Оставляем ее. Нажимаем кнопку Ok .

Подготовка закончена, начинаем.

Отключите антивирус, брандмауэр, и другие программы, которые могут блокировать соединение.

У меня dr.web запрашивал разрешение для программы.

4. Подключите свой роутер к компьютеру по сетевому кабелю. На роутере, кабель можно подключить в один из 4 LAN разъемов.

5. Откройте папку, в которую мы положили прошивку и программу. Запустите программу tftpd32.exe от имени администратора. Нажмите на нее правой кнопкой мыши, и выберите Запуск от имени администратора .

6. В программе Tftpd, напротив Server interface выберите нужный адаптер. Там будет IP, который мы задавали выше. Дальше, нажимаем на кнопку Show Dir , и смотрим, есть ли в списке наша прошивка. В моем случае это "mr3220v2_tp_recovery.bin".

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

7. Берем наш роутер (который уже должен быть подключен к компьютеру) , включаем питание, и быстро нажимаем и держим клавишу WPS/RESET .

Держим, пока в программе не начнется процесс восстановлении. У меня сразу все пошло. Если не получилось, то попробуйте так: выключите питание роутера, нажмите и держите клавишу WPS/RESET и включите питание.

Ждем, ничего не нажимаем до той поры, пока роутер не перезагрузится. Вы этой поймете по индикаторам. У меня роутер заработал, и я без проблем .

Если захотите, можете прошить роутер обычным способ по этой инструкции - . Только смотрите уже внимательно:) ну и придется настроить роутер. Можете .

В свойствах Подключение по локальной сети, не забудьте обратно установить Получать IP-адрес автоматически . Мы его меняли в 3 пункте этой статьи. Иначе, могут быть проблемы с подключением к интернету по кабелю.

Заключение

Как видите, все работает. Получилось восстановить маршрутизатор, который многие бы просто уже выбросили, или имели бы кучу проблем с сервисным центром по гарантийному обслуживанию. Мало кто относить роутеры на ремонт. Обычно считают, что проще купить новый (в некоторых случаях, это действительно так) .

Не забудьте написать в комментариях о результатах, это важно! Особенно, если вам получилось восстановить модель роутера Tp-Link, которой нет в списке, в начале этой статьи. Любая информация по теме будет очень полезной!