(вторая серия) Восстановление маршрутизатора TP-Link TL-WR841ND v8.1
Часть вторая.
Так уж получилось, что небезивестный маршрутизатор, данный мне на восстановление, опять попал ко мне. Знакомый (который админ) умудрился в свойствах сети интерфейса LAN выставить тип соединения PPPoE вместо Static IP, а затем ещё я его попытался сбросить кнопной Reset во время загрузки. Соответственно на рутер не попасть — нет IP, в FailSafe-режим он не попадает, вернее попадает, но не доступен по IP (кстати — хз почему).
Показать
Я опять вскрыл железку, припаял кабель, и попал в нормальную консоль OpenWRT.
После команд
mtd -r erase rootfs_data
(стирание настроек)
и
reboot
(ребут )
маршрутизатор загрузился, запинговался и начал делать всё, что положено свежепрошитому на OpenWRT роутеру без root-пароля.
Затем в WEB-морде роутера настроил VLAN 1 и 2 (по старому мануалу). Но при установке во вкладке Physical settings окна свойств LAN (раздел Network->Interfaces) значения eth1.2 после нажатия кнопки «Применить» роутер переставал отвечать на ICMP и вообще прекращал всю IP-деятельность. Помогла команда перезагрузки сети в консоли:
/etc/init.d/network restart
Путём несложных манипуляций (перетыкания конца пач-корда в разные порты рутера) я выяснил, что у данной модели порт LAN1 соответствует порту 2, LAN2 — порту 3, LAN3 — порту 4, LAN4 — порту 1. Порт 0 — это непосредственно ETH-контроллер на SoC (eth1).
К этому моменту у меня в голове сложилась такая картина распределения сетевых обработок:
После моей настройки стало вот так:
При выполнении команды
swconfig dev eth1 show
выводится вот такой результат:
Global attributes: enable_vlan: 1 Port 0: pvid: 0 link: port:0 link:up speed:1000baseT full-duplex txflow rxflow Port 1: pvid: 2 link: port:1 link:down Port 2: pvid: 0 link: port:2 link:down Port 3: pvid: 1 link: port:3 link:up speed:100baseT full-duplex auto Port 4: pvid: 2 link: port:4 link:down VLAN 0: vid: 0 ports: 0t 2 VLAN 1: vid: 1 ports: 0t 3 VLAN 2: vid: 2 ports: 0t 1 4
Небольшое лирическое отступление.
Хочу сказать, почему нельзя шить файл родной прошивки без слова "boot" в имени.
Это связано с ее большим размером. Если длина файла прошивки больше, чем 0x7c0000, то, скорее всего, это означает наличие кода загрузчика в его начале.
Можно для уверенности файл стоковой прошивки открыть в Hex-редакторе и если увидим:
0x00000000 | ... нечитаемые кракозябры ... | |
0x00019000 | ... нечитаемые кракозябры ... | |
0x00020000 | 01 00 00 00 54 50 2D 4C 49 4E 4B 20 54 65 63 68 | TP-LINK Tech |
0x00020010 | 6E 6F 6C 6F 67 69 65 73 00 00 00 00 76 65 72 2E | nologies ver. |
0x00020020 | 20 31 2E 30 00 00 00 00 00 00 00 00 00 00 00 00 | 1.0 |
А если наблюдаемая картина похожа вот на эту:
0x00000000 | 01 00 00 00 54 50 2D 4C 49 4E 4B 20 54 65 63 68 | TP-LINK Tech |
0x00000010 | 6E 6F 6C 6F 67 69 65 73 00 00 00 00 76 65 72 2E | nologies ver. |
0x00000020 | 20 31 2E 30 00 00 00 00 00 00 00 00 00 00 00 00 | 1.0 |
Как видно, прошивка во флеш-памяти ТP-Link начинается с адреса 0x00020000, а до этого располагается загрузчик.
Источник
Конец лирики
Для теста настроил роутер как PPTP-клиент (провайдер в моём районе пока не ввёл DHCP), результаты теста скорости:
Симферополь | Москва | Барселона |
Киев | Лейпциг | Манчестер |
Справедливости ради хочу отметить, что устойчивость и качество соединения до провайдера по моим органолептическим ощущениям было в целом хуже, чем у предыдущей используемоей мною модели — D-Link DIR-615 аппаратной ревизии B2 со стоковой прошивкой версии 2.27RU. Возможно — это связано с повреждением аппаратуры роутера молнией и/или моими экспериментами