Netgear Unbrick Utility

Joseph C. Lehner bbb7f7f721 Update copyright years 1 week ago
fuzzin 55452bb753 More fuzzing related changes 3 years ago
.editorconfig 9565154e4f Add .editorconfig and .gitattributes 3 years ago
.gitattributes 3ef570e606 Add icon 2 years ago
.gitignore fedb9c021d Update .gitignore 1 week ago
Dockerfile fe7a86d3c1 Add Dockerfile for Linux and Windows builds 1 week ago
LICENSE aaaa05d658 Add LICENSE 5 years ago
Makefile fe7a86d3c1 Add Dockerfile for Linux and Windows builds 1 week ago 8a26cdf4b1 Updated documentation. 3 years ago d7c29a58b4 Update 3 weeks ago
ethsock.c 354ad123cc Use GetAdaptersAddresses instead of GetAdaptersInfo 5 months ago
fuzz.c 55452bb753 More fuzzing related changes 3 years ago
main.c bbb7f7f721 Update copyright years 1 week ago
mkfuzz.c 55452bb753 More fuzzing related changes 3 years ago
nmrp.c 0eb8d70971 Don't send keep alive requests 1 month ago
nmrpd.h 7d3124fb4b Drain NMRP rx buffer before TFTP upload 1 month ago
nmrpflash.cbp 5ff07fac1d Bump version 1 week ago
nmrpflash.ico abf8d950a3 Update Windows icon file 1 week ago
nmrpflash.manifest 40d0215a91 Update manifest and rc file 2 years ago
nmrpflash.rc d22807f3a3 Update icon 2 years ago
nmrpflash.svg 5cc29f6935 Fix icon resolution 1 year ago
tftp.c 96d9f189e2 Reduce TFTP packet timeout 1 month ago
util.c ec29ee610d Fuzzing related changes 3 years ago
wireshark-nmrp.lua 79daac1e22 Always show opt length in Wireshark dissector 3 years ago

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 or
  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 -a
  4. Note 1: The instructions from that tell you how to find YOUR_ADAPTER_NAME.
  5. Note 2: if your router's IP address was 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 -a
    Adding to interface enp0s25.
    Advertising NMRP server on enp0s25 ... /
    Received configuration request from ab:cd:ef:12:34:56.
    Sending configuration:
    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.