Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
| ru:toh:netgear:wnr2200 [2016/02/10 09:25] – n-di | ru:toh:netgear:wnr2200 [2019/11/02 08:47] – sefralgon | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Netgear WNR2200 ====== | ||
| + | ===== Версии железа ===== | ||
| + | ---- datatable ---- | ||
| + | cols : Brand, Model, Versions, Supported Current Rel, OEM device homepage URL_url, OWrt Forum Topic URL_url, Device Techdata_pageid | ||
| + | headers : Фирма, Модель, | ||
| + | align : c, | ||
| + | filter | ||
| + | ---- | ||
| + | |||
| + | |||
| + | ===== Спецификации оборудования ===== | ||
| + | ---- datatable ---- | ||
| + | cols : Model, Versions, CPU, CPU MHz, Flash MB_mbflashs, | ||
| + | header | ||
| + | align : c, | ||
| + | filter | ||
| + | ---- | ||
| + | |||
| + | |||
| + | ===== Установка ===== | ||
| + | ---- datatable ---- | ||
| + | cols : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url | ||
| + | headers : Модель, | ||
| + | align : c,c,c | ||
| + | filter | ||
| + | ---- | ||
| + | |||
| + | |||
| + | ===== Железо ===== | ||
| + | |||
| + | В Netgear WNR2200 установлен процессор Atheros AR7241 и 64 мегабайта RAM. Размер флеша отличается в разных версиях: | ||
| + | |||
| + | Продаваемая в России версия в некоторых источниках называется WNR2200-100RUS, | ||
| + | |||
| + | При сравнении наклеек на задней стороны роутера, | ||
| + | SECURITY PIN, SERIAL, MAC | ||
| + | В то же время на роутере, | ||
| + | WiFi Network Name (SSID), Network Key (Password), SERIAL, MAC. | ||
| + | |||
| + | Данное наблюдение основывается только на двух роутерах и неизвестно, | ||
| + | |||
| + | Чтобы разобрать роутер необходимо снять четыре резиновые ножки (они не на клею, а просто вставлены) и выкрутить четыре винтика, | ||
| + | |||
| + | На плате есть UART в верхнем правом углу платы, если сетевые порты снизу, он помечен JP1 и над крайним правым пином белая точка. Распиновка слева направо: | ||
| + | |||
| + | Микросхема флеша находится рядом с кнопками WPS и WLS под EJTAG. Перед прошивкой роутера желательно убедиться, | ||
| + | |||
| + | ===== Получение доступа в терминал ===== | ||
| + | |||
| + | В прошивке с завода есть сервис telnet, но для для его включения нужна специальная программа (подробнее здесь: https:// | ||
| + | |||
| + | Гораздо проще воспользоваться UART. После этого, можно взять прошивку sysupgrade и залить её с помощью утилиты mtd, при этом будет пропущена верификация. Перед прошивкой убедитесь, | ||
| + | |||
| + | ===== Прошивка ===== | ||
| + | |||
| + | В прошивке для WNR2200 (factory для openwrt) имеется заголовок размером 128 байт, содержащий текст вроде этого и дополненый до 128 байт символами 0x00, и дополнительный байт в конце с контрольной суммой. Для создания такого образа используется утилита mkdniimg. Пример заголовка взятый у официальной прошивки: | ||
| + | |||
| + | device: | ||
| + | version: | ||
| + | region: | ||
| + | |||
| + | Данный заголовок проверяется веб-интерфейсом роутера (важна первая строчка) и если он неправильный, | ||
| + | |||
| + | На данный момент, | ||
| + | wnr2200_mtdlayout=mtdparts=spi0.0: | ||
| + | На | ||
| + | wnr2200_mtdlayout=mtdparts=spi0.0: | ||
| + | |||
| + | В архитектуре ath79 поддержка 16 мегабайтной версии должна быть изначально. | ||
| + | |||
| + | Прошивка sysupgrade не содержит заголовка из 128 байт и однобайтной контрольной суммы в конце, начинается с " | ||
| + | |||
| + | ===== Восстановление заводской прошивки из OpenWRT ===== | ||
| + | |||
| + | Для восстановления заводской прошивки на роутере с 16 мегабайт флеша требуется скачать соответствующую прошивку с сайта netgear.**ru**, | ||
| + | После этого требуется отрезать первые 128 байт с заголовком, | ||
| + | |||
| + | tail -c +129 wnr2200-100-V1.0.2.24.img | head -c -1 > stripped.img | ||
| + | |||
| + | Полученный файл stripped.img требуется перенести на роутер тем или иным способом, | ||
| + | |||
| + | mtd -r write / | ||
| + | |||
| + | После завершения этой команды роутер будет перезагружен (ключ -r). Перед прошивкой желательно убедиться, | ||
| + | |||
| + | Так же, можно попробовать прошить эту же обрезанную прошивку через sysupgrade или веб-интерфейс OpenWRT. | ||
| + | |||
| + | ===== Восстановление запоротой прошивки ===== | ||
| + | |||
| + | Если роутер перестал загружаться, | ||
| + | |||
| + | < | ||
| + | U-Boot 1.1.4-dirty (May 18 2011 - 08:43:35) | ||
| + | |||
| + | WNR2200 (ar7241) U-boot dni13 V0.9.3 | ||
| + | DRAM: | ||
| + | sri | ||
| + | ar7240_ddr_initial_config(139): | ||
| + | #### TAP VALUE 1 = 0x2, 2 = 0x2 [0x0: 0x0] | ||
| + | 64 MB | ||
| + | Top of RAM usable for U-Boot at: 84000000 | ||
| + | Reserving 279k for U-Boot at: 83fb8000 | ||
| + | Reserving 192k for malloc() at: 83f88000 | ||
| + | Reserving 44 Bytes for Board Info at: 83f87fd4 | ||
| + | Reserving 36 Bytes for Global Data at: 83f87fb0 | ||
| + | Reserving 128k for boot params() at: 83f67fb0 | ||
| + | Stack Pointer at: 83f67f98 | ||
| + | Now running in RAM - U-Boot at: 83fb8000 | ||
| + | id read 0xc22018 | ||
| + | Finding MXIC Flash. ID c22018 | ||
| + | flash size 16MB, sector count = 256 | ||
| + | Flash: 16 MB | ||
| + | calData0: | ||
| + | calData1: | ||
| + | In: serial | ||
| + | Out: | ||
| + | Err: | ||
| + | Net: | ||
| + | Fetching MAC Address from 0x9fff0000 | ||
| + | Fetching MAC Address from 0x9fff0006 | ||
| + | Virian MDC CFG Value ==> 4 | ||
| + | : cfg1 0xf cfg2 0x7014 | ||
| + | eth0: 00: | ||
| + | eth0 up | ||
| + | Virian MDC CFG Value ==> 4 | ||
| + | : cfg1 0xf cfg2 0x7214 | ||
| + | eth1: 00: | ||
| + | ATHRS26: resetting s26 | ||
| + | ATHRS26: s26 reset done | ||
| + | eth1 up | ||
| + | eth0, eth1 | ||
| + | Trying eth1 | ||
| + | dup 1 speed 1000 | ||
| + | |||
| + | | ||
| + | Retry count exceeded; boot the image as usual | ||
| + | |||
| + | nmrp server is stopped or failed ! | ||
| + | Hit any key to stop autoboot: | ||
| + | | ||
| + | ### SQUASHFS loading ' | ||
| + | ### SQUASHFS load complete: 902346 bytes loaded to 0x80800000 | ||
| + | ## Booting image at 80800000 ... | ||
| + | Image Name: Linux Kernel Image | ||
| + | | ||
| + | Image Type: MIPS Linux Kernel Image (lzma compressed) | ||
| + | Data Size: 902282 Bytes = 881.1 kB | ||
| + | Load Address: 80002000 | ||
| + | Entry Point: | ||
| + | | ||
| + | | ||
| + | No initrd | ||
| + | ## Transferring control to Linux (at address 80294000) ... | ||
| + | ## Giving linux memsize in bytes, 67108864 | ||
| + | |||
| + | Starting kernel ... | ||
| + | </ | ||
| + | |||
| + | При этом вам даётся несколько секунд чтобы нажать любую клавишу на надписи "Hit any key to stop autoboot" | ||
| + | < | ||
| + | ar7240> help | ||
| + | autoscr - run script from memory | ||
| + | ? - alias for ' | ||
| + | base - print or set address offset | ||
| + | bdinfo | ||
| + | boot - boot default, i.e., run ' | ||
| + | bootd - boot default, i.e., run ' | ||
| + | bootelf - Boot from an ELF image in memory | ||
| + | bootm - boot application image from memory | ||
| + | bootp - boot image via network using BootP/TFTP protocol | ||
| + | bootvx | ||
| + | cmp - memory compare | ||
| + | coninfo - print console devices and information | ||
| + | cp - memory copy | ||
| + | crc32 - checksum calculation | ||
| + | fls - Set to change DDR settings on reboot | ||
| + | dhcp - invoke DHCP client to obtain IP/boot params | ||
| + | echo - echo args to console | ||
| + | erase - erase FLASH memory | ||
| + | ethreg | ||
| + | exit - exit script | ||
| + | flinfo | ||
| + | fls - Set to change Flash size on reboot | ||
| + | fsinfo | ||
| + | fsload | ||
| + | go - start application at address ' | ||
| + | help - print online help | ||
| + | iminfo | ||
| + | imls - list all images found in flash | ||
| + | itest - return true/false on integer compare | ||
| + | loadb - load binary file over serial line (kermit mode) | ||
| + | loads - load S-Record file over serial line | ||
| + | loady - load binary file over serial line (ymodem mode) | ||
| + | loop - infinite loop on address range | ||
| + | ls - list files in a directory (default /) | ||
| + | macset - Set ethernet MAC address | ||
| + | macshow - Show ethernet MAC addresses | ||
| + | md - memory display | ||
| + | mii - MII utility commands | ||
| + | mm - memory modify (auto-incrementing) | ||
| + | mtest - simple RAM test | ||
| + | mw - memory write (fill) | ||
| + | nfs - boot image via network using NFS protocol | ||
| + | nm - memory modify (constant address) | ||
| + | pci - list and access PCI Configuration Space | ||
| + | ping - send ICMP ECHO_REQUEST to network host | ||
| + | pll - Set to change CPU/AHB/DDR speeds | ||
| + | printenv- print environment variables | ||
| + | progmac - Set ethernet MAC addresses | ||
| + | protect - enable or disable FLASH write protection | ||
| + | rarpboot- boot image via network using RARP/TFTP protocol | ||
| + | reset - Perform RESET of the CPU | ||
| + | rnset - set region number | ||
| + | rnshow | ||
| + | run - run commands in an environment variable | ||
| + | saveenv - save environment variables to persistent storage | ||
| + | setenv | ||
| + | sleep - delay execution for some time | ||
| + | snset - set serial number | ||
| + | test - minimal test like /bin/sh | ||
| + | tftpboot- boot image via network using TFTP protocol | ||
| + | version - print monitor version | ||
| + | wmacset - Set wlan MAC address | ||
| + | wpspinset - set wpspin number | ||
| + | </ | ||
| + | |||
| + | С помощью этих команд можно загрузить образ прошивки по сети или UART и прошить его в флеш или сразу загрузить (вариант прошивки openwrt...initramfs-kernel.bin) | ||
| + | |||
| + | Если же нет возможности применить UART, то в самом начале загрузки видна надпись: | ||
| + | nmrp server is stopped or failed ! | ||
| + | |||
| + | Из чего следует, | ||
| + | |||
| + | На роутере автора настоящей статьи прошивка по способу из английской версии (включить, | ||
| + | |||
| + | ===== Альтернативный загрузчик ===== | ||
| + | |||
| + | Для WNR2200 и других подобных роутеров существует версия U-Boot, собираемая из исходников: | ||
| + | Она может пригодиться при замене микросхемы флеш памяти на другой объём или старый загрузчик был перезаписан. | ||
| + | Обновление загрузчика является опасной процедурой и если её запороть, | ||
| + | |||
| + | |||
| + | ===== Альтернативный способ прошивки (старое содержимое страницы) ===== | ||
| + | |||
| + | 1. Прошиваем wnr2200-webflash.bin с сайта dd-wrt через интерфейс оригинальной прошивки. | ||
| + | |||
| + | 2. Настраиваем подключение Internet, либо создаем локальный http/ftp сервер. | ||
| + | |||
| + | 3. Подключаемся telnet на роутер либо через http в диагностике выполняем команды: | ||
| + | |||
| + | wget -c -O / | ||
| + | mtd -r write / | ||