Netgear Unbrick Utility

Joseph C. Lehner f689fdea1e Revert "I made a couple of readme additions" 4 lat temu
fuzzin 55452bb753 More fuzzing related changes 4 lat temu
.editorconfig 9565154e4f Add .editorconfig and .gitattributes 4 lat temu
.gitattributes c8b492f586 Update .gitattributes 4 lat temu
.gitignore 025f89493a Update .gitignore 8 lat temu
LICENSE aaaa05d658 Add LICENSE 6 lat temu
Makefile 0f940474db Remove LIBS 4 lat temu
README-R7000.md 8a26cdf4b1 Updated documentation. 4 lat temu
README.md f689fdea1e Revert "I made a couple of readme additions" 4 lat temu
ethsock.c 7881c3ce0a Fix BSD carrier detection code 4 lat temu
fuzz.c 55452bb753 More fuzzing related changes 4 lat temu
main.c 9c7e7f1f80 Fix default upload timeout 4 lat temu
mkfuzz.c 55452bb753 More fuzzing related changes 4 lat temu
nmrp.c 50171ba46b fix minor typo 4 lat temu
nmrpd.h d6e2c0c4ac Implement carrier detection on BSD/macOS 4 lat temu
nmrpflash.dev 069b9e60a1 Bump version 4 lat temu
nmrpflash.manifest f689fdea1e Revert "I made a couple of readme additions" 4 lat temu
nmrpflash.rc f689fdea1e Revert "I made a couple of readme additions" 4 lat temu
tftp.c e7a0e6a814 Fix compiler warning on Windows 4 lat temu
util.c ec29ee610d Fuzzing related changes 4 lat temu
wireshark-nmrp.lua 79daac1e22 Always show opt length in Wireshark dissector 4 lat temu

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.