Netgear Unbrick Utility

Joseph C. Lehner e8e2879c56 Update README.md 5 天之前
fuzzin 55452bb753 More fuzzing related changes 4 年之前
.editorconfig 9565154e4f Add .editorconfig and .gitattributes 4 年之前
.gitattributes 3ef570e606 Add icon 3 年之前
.gitignore fedb9c021d Update .gitignore 1 年之前
CMakeLists.txt 3341e54222 Update CMakeLists.txt 2 周之前
Dockerfile 0b755d44f8 Update Makefile and Dockerfile 2 月之前
LICENSE aaaa05d658 Add LICENSE 6 年之前
Makefile 0b755d44f8 Update Makefile and Dockerfile 2 月之前
README-R7000.md 8a26cdf4b1 Updated documentation. 4 年之前
README.md e8e2879c56 Update README.md 5 天之前
ethsock.c fba44211d7 macOS: fix pretty interface name extraction 4 月之前
fuzz.c 55452bb753 More fuzzing related changes 4 年之前
main.c 913e0b9179 Update help message 2 周之前
mkfuzz.c 55452bb753 More fuzzing related changes 4 年之前
nmrp.c 61e0d0176c Remove "Ignoring extra upload request" path 1 周之前
nmrpd.h 3c2ff00e8b Add missing constant 1 周之前
nmrpflash.cbp 30f45072b9 Bump version 2 月之前
nmrpflash.ico abf8d950a3 Update Windows icon file 1 年之前
nmrpflash.manifest f5c9c17a6b Enable UTF-8 support on Windows 2 周之前
nmrpflash.rc 9fecf6fd22 Update nmrpflash.rc 2 周之前
nmrpflash.svg 5cc29f6935 Fix icon resolution 2 年之前
tftp.c e95f4ecb79 Show TFTP upload progress 2 月之前
util.c b187e3ad66 Add millis() 1 年之前
wireshark-nmrp.lua 79daac1e22 Always show opt length in Wireshark dissector 4 年之前

README-R7000.md

Some helpful hints for putting firmware on the Netgear R7000

  • As of the writing of this, July 2020, the R7000's web interface does not let you downgrade its firmware, or run 3rd party firmware on it.
  • Older versions of the R7000's firmware do allow you to flash 3rd party firmware.
  • You can use nrmpflash to downgrade router's firmware, for example R7000-V1.0.3.56_1.1.25.

Here is an example set of steps

  1. Plug in your router, go through the regular stock web interface setup. Note if the router's IP address is now 192.168.1.1 or 10.0.0.1
  2. Connect computer your computer to LAN1 with an ethernet cable
  3. At the command prompt on your computer, run: sudo nmrpflash -v -i YOUR_ADAPTER_NAME -f R7000-V1.0.3.56_1.1.25.chk -t 10000 -T 10000 -A 10.0.0.2 -a 10.0.0.1
  4. Note 1: The instructions from README.md that tell you how to find YOUR_ADAPTER_NAME.
  5. Note 2: if your router's IP address was 192.168.1.1 then swap out 10.0.0.x with 192.168.1.x for the two IP addresses above
  6. Right after running the command, power on your router. Your router checks for the nmrpflash server on boot. If all goes well you should see this:

    sudo nmrpflash -v -i enp0s25 -f R7000-V1.0.3.56_1.1.25.chk -t 10000 -T 10000 -A 10.0.0.2 -a 10.0.0.1
    Adding 10.0.0.2 to interface enp0s25.
    Advertising NMRP server on enp0s25 ... /
    Received configuration request from ab:cd:ef:12:34:56.
    Sending configuration: 10.0.0.1/24.
    Received upload request without filename.
    Using remote filename 'R7000-V1.0.3.56_1.1.25.chk'.
    Uploading R7000-V1.0.3.56_1.1.25.chk ... OK
    Waiting for remote to respond.
    Received keep-alive request (19).  
    Remote finished. Closing connection.
    Reboot your device now.
    
    
  7. Reboot the device. You now have old firwmare, congratulations.