Table of Contents

TP-Link TL-WR841ND

Беспроводной маршрутизатор серии N 300Мбит/с

Основные технические характеристики:

​Примечание:​ TL-WR841N идентичен данной модели, но оснащен несъемными антеннами.

Примечание: v5.4, v5.2 и т.п. аппаратно идентичны v5. v7, v8, v9 аналогично. Различие минорных версий отражает лишь версию в предустановленных прошивки и загрузчика.

Клоны

Известные клоны:

Поддерживаемые версии

Версия/Модель Версия OpenWrt Скачать последнюю версию Примечание
v1 10.03 и новее 15.05.1 Добавлена поддержка
v3 10.03 и новее 15.05.1 Отчет
v5 10.03 и новее 15.05.1 Отчет
v7 12.09 и новее 15.05.1 Полностью функционален
v8 (китайская версия) Trunk r29631(измененная) ? Только 2МБ встроенной памяти, требуется аппаратная модификация
v8 (международная) 12.09 и новее 15.05.1 DB120 - IPv6 баг
v9 14.07 и новее 15.05.1
v10 15.05.1 15.05.1
v11 образ от v10 или trunk ? При сравнении плат v10 и v11 различия только во флеш памяти. Можно использовать образы v10 c sysupgrade -F, игнорируя проверку версии. Так же по сравнению с v10, антенны имеют другую форму (как на Archer C7), и WAN LED теперь двухцветный, зеленый и оранжевый. Образ 15.05.1 r49389 работает из коробки.

Спецификация оборудования

Версия v3 v5 v7 v8 v9 v10 v11
Платформа: AP81(ar71xx)
Архитектура: MIPS
Производитель: Atheros
Загрузчик: U-Boot
Системный чип: AR9130 AR7240 rev 2 AR7241-AH1A AR9341 QCA9533-AL3A QCA9533-BL3A ​ QCA9533-AL3A
Частота CPU: 400 МГц 400 МГц 400 МГц 535 МГц 550 МГц 650 МГц
BogoMIPS: 265.42 266.24 265.42 266.64 366.18 432.53
Flash-чип: ST 25P32V6P Неизвестно cFeon F32-100HIP/SPANSION FL032PIF Spansion FL032PIF Spansion FL032PIF Winbond 25Q32FVS1G ​Spansion FL032PIF
Объем Flash: 4 Мб
Чип ОЗУ: Hynix HY5DU561622FTP-5 Неизвестно Zentel A3S56D40FTP-G5 ESMT M13S2561616A-5T Winbond W9425G6JH-5 Zentel A3S56D40GTP-50 ​ Zentel A3S56D40GTP-50L
Объем ОЗУ: 32 Мб
Радиочип: Atheros AR9100 Rev:7 Atheros AR9280 Rev:2 Atheros AR9287-BL1A 2.4GHz 802.11bgn AR9341 QCA9533-AL3A QCA9533-BL3A ​ QCA9533-AL3A
Свитч: Marvell 88E6060 Встроенный AR7240 Встроенный AR7241 Встроенный AR9341 Встроенный QCA9533-AL3A Встроенный QCA9533-BL3A Встроенный QCA9533-AL3A
Порт USB: Неизвестно Есть Есть В процессе Отсутствует в SoC ?
Последовательный порт: Есть Есть Есть Ещё Есть Надо убрать R26 ?
JTAG: Есть Неизвестно Неизвестно Есть ?

Установка

Установка через веб-интерфейс

  1. Скачайте подходящую прошивку для вашей версии железа
  2. Войдите в веб-интерфейс маршрутизатора, перейдите в раздел System Tools - Firmware Upgrade и укажите образ дистрибутива как файл обновления.
  3. По завершении прошивки маршрутизатор перезагрузится и будет доступен по адресу http://192.168.1.1

Установка по TFTP

Для v8,v9,v10 все значительно проще

Внимание! Данный метод не рекомендуется к использованию если вы не понимаете о чем речь и никогда подобными вещами не занимались и учиться не хотите :)
Требуется консольный кабель с ttl уровнями usb-ttl, например DKU-5, или RS-232-TTL преобразователь
и tftp сервер на вашем компьютере,

Почти полностью взято отсюда https://forum.openwrt.org/viewtopic.php?id=24203, спасибо dl3daz.

  1. Скачайте требуемую прошивку на ваш TFTP сервер.
  2. Подключите WAN портом к своей локальной сети или напрямую к компьютеру с tftp сервером.(для 8.2 попробуйте LAN1 порт)
  3. Подключите консольный кабель как описано в секции "serial console" (английская вики) и делаем "tpl" трюк (включаем роутер и сразу пишем в консоли tpl, это нужно сделать буквально за полсекунды, иначе не получится), чтобы получить нормальный доступ в консоль.
  4. Теперь прописываем IP адресы для роутера и TFTP сервера (здесь названы соответственно ROUTERIP and SERVERIP, конечно же должны совпадать с реальными IP адресами (мы же не фигней маемся). Пишем в консоли:
    setenv ipaddr ROUTERIP
    setenv serverip SERVERIP
    printenv

Для примера, присвойте сетевой карте своего компьютера(TFTP сервера) статичный IP 192.168.1.100, если у вас есть другие сетевые карты, то рекомендую их выключить. В консоли пишем:

setenv ipaddr 192.168.1.111
setenv serverip 192.168.1.100
192.168.1.111 ip роутера, 192.168.1.100 ip вашего TFTP сервера.

  1. Дважды проверьте что ввели нужные адреса (printenv выводит на экран адреса) Проверяем, что ваш сервер находится на 69 порту(стандартный порт). Теперь загружаем прошивку через TFTP "tftpboot 0x80000000 имя_файла_прошивки.bin ":
    ar7240> tftpboot 0x80000000 openwrt-ar71xx-tl-wr841nd-v8-squashfs-factory.bin
    Using eth0 device
    TFTP from server 192.168.1.100; our IP address is 192.168.1.111
    Filename 'openwrt-ar71xx-tl-wr841nd-v5-squashfs-factory.bin'.
    Load address: 0x80000000
    Loading: checksum bad
    #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             ######################################################
    done
    Bytes transferred = 3932160 (3c0000 hex)
  2. Значение "3c0000" в последней строке (ваше число может отличаться). Теперь выполните следующие команды, меняйте 3c0000 на свое значение, которое вы получили из tftpboot

Для TL-WR841ND v3:

1. Чистим память:

 ar7100> erase 0xbf020000 +0x3c0000
                                                                             
First 0x2 last 0x3d sector size 0x10000                                      
  61                                                                         
Erased 60 sectors 
2. Копируем содержимое RAM в память:
 ar7100> cp.b 0x80000000 0xbf020000 0x3c0000                                  
Copy to Flash... write addr: bf020000                       
done 
3. Перезагружаем
 ar7100> reset                                               
                                                            
Resetting...
4. Всё.

Для TL-WR841ND v5, v7, v8, v9:

1. Чистим память:

wasp> erase 0x9f020000 +0x3c0000
2. Копируем содержимое RAM в память:
wasp> cp.b 0x80000000 0x9f020000 0x3c0000
3. устанавливаем загрузчик
wasp> bootm 0x9f020000
## Booting image at 9f020000 ...
Uncompressing Kernel Image ... OK

Starting kernel ...

4. Всё.

U-Boot 1.1.4 (Apr  9 2009 - 12:29:57)

v8,v9,v10 без консольного кабеля

Как и большинство нынешних роутеров может быть восстановлен без консольного кабеля.

  1. Пропишите на сетевой карте компьютера статичный ip ​192.168.0.66​ (у роутера он ​192.168.0.86)
  2. Закиньте factory OpenWrt образ в корень своего tftp сервера и назовите: для v8 mr3420v2_tp_recovery.bin ; для v9 ​wr841nv9_tp_recovery.bin ; для v10 wr841nv10_tp_recovery.bin
  3. На выключенном роутере зажимаете reset, не отжимая его, включаете роутер, держите ресет пока не загорится светодиод lock(крайний правый) .
  4. Ждем пока роутер перезагрузится.

подробнее

Возврат на программное обеспечение производителя

1. Скачайте оригинальный образ прошивки с сайта TP-Link(у версий 1 и 1.5 абсолютно идентичные последние прошивки), для версии 3.

2. Извлеките файл из архива и посмотрите содержит ли он в своем названии слово boot,

Данный способ подходит для моделей V1, V3, V5, V7, V8 и V9; так как бутлоадер у них одного размера. Для примера возьмем файл со словом "boot" в названии wr841nv9_en_3_14_4_up_boot(131129).bin Вырезаем первые 0x20200 (это 131,584 = 257*512) байт прошивки:

dd if=wr841nv9_en_3_14_4_up_boot(131129).bin of=tplink.bin skip=257 bs=512
Получаете файл tplink.bin, данную команду можно провести на компьютере с linux/unix или на самом роутере(предварительно закачав его туда с помощью web сервера или по протоколу scp)

Так же вы можете просто скачать уже модифицированные файлы без boot блока

3. Полученный файл переименуйте во что-то типа tplink.bin и можете прошить через web интерфейс, если же возможности нет, то можно через консоль, используйте протокол SCP (для windows winscp), если вы на линуксе то и сами все знаете, так же можно воспользоваться веб-сервером в локальной сети):

root@OpenWrt:~# cd /tmp
root@OpenWrt:/tmp# wget http://192.168.1.110/tplink.bin

root@OpenWrt:/tmp# mtd -r write ./tplink.bin firmware

Вы так же можете попробовать уже описанный способ установки по tftp(boot часть опять же придется вырезать)

См. также Back to original firmware

Безопасный режим

При загрузке устройства, когда начинает мигать индикатор SYS (под иконкой шестеренки), нажмите и удерживайте кнопку QSS около 5-10 сек. (индикатор начнет мигать чаще).
См. также OpenWrt Failsafe

Начальная настройка

Базовая конфигурация

Решение проблем

Wifi Выдает только 130МБит/c?

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

Суть в том, что по умолчанию в Openwrt соблюдаются законодательства разных стран и при присутствии других wifi роутеров, ваш роутер сбрасывает канал 40mhz до 20 mhz, дабы не загрязнять эфир и не ухудшать собственную производительность, хотя сообщает что умеет 300МБит/c и 40mhz, а так как у нас режим MIMO 2:2, то при 20mhz получаем 130 МБит/с по стандарту.

Как исправить:

Заходим по ssh(если вы еще не установили пароль, то по telnet) и вводим команды:

uci set wireless.radio0.htmode=HT40 /выставляем ширину канала 40mhz, можно и через веб интерфейс.
uci set wireless.radio0.noscan=1 /запрещаем роутеру сканировать окружение.
uci commit wireless /записываем наши команды в конфигурационный файл.
wifi /перезагружает wifi интерфейс с новыми настройками без перезагрузки роутера.
И получаем честные 300МБит/c

Редактируем файл /etc/config/wireless

  1. Под config wifi-device 'radio0' добавляем
    option noscan '1'
  2. option 'htmode' выставляем значение HT40 (для билдов до BARRIER BREAKER(14.07) значение принимает HT40+ или HT40-)
    option htmode 'HT40'
  3. Перезагружаем wifi
    wifi

Не можете подключиться к v8?

Проверьте, что eth0/eth1 не перепутаны!