I have two Netgear R6300V2 routers at home, both of which have been in use for over 10 years. Originally, one was placed at my mom’s place, but later, due to concerns about my child frequently going there to watch TV, I canceled the broadband service, leaving me with an extra router sitting idle. For some reason, I had been thinking about replacing the router a few days ago, but then I stumbled upon someone online mentioning that this “microwave router” from Netgear could be flashed with a newer version of Openwrt. So, on this New Year’s Eve, I decided to give it a try.
Network Layout
When I was renovating my current apartment, I hadn’t considered the application scenarios for WIFI6, so I simply asked the contractor to run a network cable through the ceiling and installed a TP-link ceiling AP powered by POE. This single AP has basically met all the wireless needs of my household, and due to its optimal placement, there are almost no dead zones in the house. Over the years, I haven’t considered setting up a mesh network and have continued to let the Netgear “microwave router” serve its purpose.
The current network architecture is as follows:
|
|
My main need this time revolves around the TV. After a certain software on the TV was updated to a new version, it could no longer run in the background as it used to on the closed TV system. Instead, it gets killed by the TV system’s background processes from time to time, leading to a poor video-watching experience. Since the TV is connected via Ethernet, I don’t need the router to have WIFI functionality.
Systems Compatible with Netgear R6300V2
Netgear Stock Firmware
I used the stock firmware for about two to three years because I initially had no idea that the router could be flashed with other systems. Later, I got into Koolshare’s Merlin firmware, which is a modified version of Asus’s firmware.
The stock firmware has several major drawbacks:
- Slow Internet Speed. This wasn’t a big issue over 10 years ago when I first bought the router, as my broadband speed was only 100Mbps, and the stock firmware could support speeds over 300 Mbps. However, after upgrading to 1000M fiber optics a few years ago, this issue became prominent. In 2020, I even wrote an article Why 1000M Fiber Broadband Sometimes Only Reaches 300M analyzing this issue. The main problem is that the stock firmware cannot enable NAT hardware acceleration, whereas enabling this feature on systems like Merlin allows the router to reach speeds of 930Mbps.
- Difficulty in Disabling Devices. With kids at home, I often need to disable internet access for devices like phones and TVs. The stock firmware is not user-friendly in this regard and even promotes a paid service called “Parental Controls” with a monthly subscription fee of several tens of dollars.
- No Software Installation. This should be a core criterion for determining whether a router is smart or not.
Merlin Firmware
I have been using the Merlin firmware for about seven to eight years, and overall, it feels very stable. The only issue is that as this router gradually reaches the end of its lifecycle, many developers have stopped updating both the firmware and other software. Sometimes, when opening software, inexplicable errors occur. However, if you don’t use the software, the firmware is still very reliable.
During this system flashing process, I unexpectedly found another useful software, updated as recently as November 2024, which was a pleasant surprise. It seems I can continue using it for a long time.
Openwrt
I’ve heard a lot about Openwrt but never used it. The main reason is that after flashing Openwrt on the Netgear “microwave router,” the WIFI functionality becomes unusable, so I never considered it before. Over time, I forgot about it. It wasn’t until I saw someone mention it online that I suddenly remembered. Although it can’t use WIFI, this doesn’t conflict with my needs. Moreover, it can be flashed with the stable version 23.05.5 released in September 2024, which is quite recent. Thus, Openwrt became the main motivation for flashing the spare router.
The Process of Flashing Openwrt on Netgear R6300v2
Talking about this is quite heartbreaking, as it took me about five to six hours of折腾. Here, I’ll briefly mention the pitfalls I encountered along the way.
A Misstep in Flashing
Both of my routers originally had Merlin 380 firmware. While I was flashing the spare router back to the Netgear stock firmware, I accidentally flashed the main router’s firmware as well.
The main reason was that my main router’s IP address was also 192.168.1.1. When I was flashing the spare router using my laptop, I didn’t notice that the WIFI function was also enabled. After flashing the spare router, its IP address automatically reverted to 192.168.1.1. When I opened this address, I indeed saw the Netgear stock firmware management page. However, after entering the admin password, the webpage automatically redirected to the Merlin page.
I thought the flashing wasn’t successful and needed to be done again, so I uploaded R6300V2_back-to-ofw.trx
on the Merlin page. Unexpectedly, this caused a mishap, and the main router was reverted to the stock firmware.
Fortunately, even though the main router was reverted to the stock firmware, it could still be used. However, this laid the groundwork for several other pitfalls later on.
Openwrt’s Steep Learning Curve
The mishap was just a mishap; at most, I would have to flash the main router back to Merlin later. For now, I continued with Openwrt, but as a beginner, I struggled with the operations, especially when installing software on Openwrt.
Software Installation Failures Leading to Management Page Crash
After entering Openwrt’s software repository, I kept encountering page errors. Updating the repository failed, installing software failed, uninstalling software failed, and eventually, the entire page crashed.
However, thanks to the page crash, I immediately remembered that AI could be a great tool for assistance. So, I sent the error codes to AI for analysis and discovered that Openwrt software could be installed directly via the command line. Moreover, using the command line for installation is more intuitive, as it allows you to see why the software installation failed.
After some操作, I found out that the issue was due to slow internet speed. The router was downloading software from the Openwrt repository at a speed of less than 10KB/s. When I tried to download software larger than 10MB, it would fail due to download timeouts.
Knowing the cause made it easier to address. I directly downloaded the software from the Openwrt repository and manually uploaded it for installation. This basically solved the previous issues. During the process, using the command line for installation also allowed me to clearly see which dependencies were not downloaded properly.
Background Component Download Failures
Although the Openwrt repository connection issue was resolved, another problem arose: background component downloads. During the installation of a certain software, I found that it needed to download components from GitHub. As we all know, direct downloads from GitHub repositories can be unreliable, and even when they work, the speed is often slow.
This put me in a frustrating situation. Since the main router had been reverted to the stock firmware, all the software on it was gone. Unless I turned on a hotspot on my phone and used some software to bridge the connection, Openwrt wouldn’t be able to download the software components properly.
But to make matters worse, the spare router’s WIFI was already unusable, making it troublesome to bridge the phone hotspot wirelessly.
In the end, I had no choice but to flash the spare router, which had Openwrt installed, back to Merlin. Then, I replaced the main router and let it flash Openwrt. After all, as mentioned earlier, the main router definitely needed to be flashed back to Merlin.
After折腾了大半个晚上, the result was that out of the two Merlin 380 routers, only one was reverted to the stock firmware.
The Spare Router Bricked
While I was flashing Openwrt back to Merlin on the spare router, an unexpected issue arose. The entire router seemed to have bricked.
The specific symptoms were that the usual router IP couldn’t be pinged, and the WIFI was invisible.
Since there was an IP conflict during the flashing process that caused the firmware to automatically change the IP, I wondered if the router’s IP had changed to something else, like 192.168.50.1, which I had used before. So, I used an IP scanning tool to scan from 192.168.0.1 to 192.168.255.1, but naturally, there were no results.
Later, after searching online, I found that in such a state, I could try using nmrpflash to forcefully flash back to the stock firmware.
Then, while using nmrpflash, I discovered that this program is a relic from the Windows XP era and is still a 32-bit software, which doesn’t run directly on Windows 11. Fortunately, with AI’s guidance, I realized that my computer was missing a packet capture software. After downloading Nacap, I was able to proceed successfully.
Issues with the Main Router
After flashing the main router from Merlin 380 directly back to the stock firmware, a significant issue arose: I could no longer flash any other firmware on the stock firmware, including Netgear’s own firmware upgrades.
After some online research, I found that tftp could be used for flashing, but in my tests, tftp couldn’t connect.
Later, I found a fellow sufferer online. According to his blog, he was also misled by a top-ranked tutorial in search results.
Then, I saw his solution: using telnet to repair the stock firmware, which finally resolved the issue.
Mission Accomplished
In the end, the spare router went through a roundabout process from Merlin 380 back to Merlin 380; the main router went from Merlin 380 to Openwrt.
After flashing Openwrt on the main router, I now had the experience to configure third-party software on the upper-level router first, making software installation on Openwrt much faster, completing the entire process in just a few minutes.
Flashing Tutorial
Here, I’ll leave a reference for future use. There are many tutorials online, but the top-ranked search result tutorial is quite intimidating, as it covers almost everything that can be flashed on the R6300V2, but it’s poorly written. Many flashing steps are omitted, and as seen in the aforementioned网友’s experience, he bricked his router because he copied a piece of code from this article that was missing a line.
After running reboot, I waited for a long time but the router didn’t start up. Pinging 192.168.1.1 always returned 100, but I couldn’t access the CEFminiWeb page, and SSH login also failed. I tried the 30-30-30 method and other tricks, but nothing worked. I had a bad feeling that it might have bricked. I quickly searched online and found the issue on the恩山论坛. That bastard copied one less line of code, and I don’t know where he copied it from, but he managed to miss a line.
https://4elong.com/post/423.html
After successfully flashing the stock firmware, I started uploading the OP firmware, thinking it would go smoothly, but as expected, something unexpected happened. No matter which OP firmware I uploaded, it didn’t work, and it kept reverting to the stock firmware, as if it wasn’t flashed at all. So, I tried to enable Telnet on the stock firmware to see if I could do more, remembering that the initial tutorial mentioned it. After a lot of敲打, I found it didn’t help, and I started to doubt my life. Sticking to the principle of not falling into the same pit twice, I followed the official firmware’s method to enable Telnet and started searching again. Finally, I found the ultimate solution. That bastard really doesn’t know how to copy homework, as he only copied the general idea. To truly enable Telnet on the official firmware, you need a telnetenable software.
https://4elong.com/post/423.html
Without a doubt, I fell into the same pit, just not in this particular part, but during the flashing steps. However, the result was the same.
Flashing Merlin 380 from Stock Firmware
The method to flash Merlin 380 from the stock firmware is detailed in this article on简书, excerpted as follows.
- Preparation
Download the necessary tools, stock firmware, DD transitional firmware, Merlin 1.2 firmware, and the official firmware, totaling 5 files. These files can be found online, such as the last version of the 380 firmware download link:
- R6300V2_back-to-ofw.trx Revert to stock firmware
- factory-to-dd-wrt.chk DD transitional firmware
- R6300V2_merlin_1.2.trx Merlin 1.2 firmware
- R6300V2_380.70_0-X7.9.1-koolshare.trx Merlin 380.70_0-X7.9.1 firmware
- SSH tools like putty or xshell, or you can use Windows 10’s PowerShell.
- Start Flashing
It’s best to use Edge browser’s IE mode for flashing, as some old firmware from back in the day was designed for IE, and new browsers might not work well. For example, some options in ddwrt might not be clickable.
If you’ve flashed other firmware before, use R6300V2_back-to-ofw.trx to revert to the stock firmware. (You’ll be prompted to manually restart the device after completion.)
After the device restarts, log in to the router’s settings interface at www.routerlogin.net or 192.168.1.1, using the username admin and password password. Go to Advanced → Administration → Backup Settings → Restore Factory Settings.
Enter the router’s upgrade interface and flash factory-to-dd-wrt.chk, the DD transitional firmware. Ignore any warnings and proceed. The upgrade process is quick, but be patient and wait a few minutes. The router will automatically restart and enter the dd-wrt firmware (if it doesn’t, manually enter 192.168.1.1). Here, you’ll need to set a username and password. Enter root for the username and admin for the password, then click Change password.
After setting the username and password, the dd-wrt login page will appear. Enter the username and password you just set. In the top menu, find Services, click on it, and scroll down to the Secure Shell section. Set SSHd to enable, leaving other settings as default. Then scroll down, click Save, and then Apply Settings.
On Windows 10 or above, press Win+X and select Terminal (Admin) to open PowerShell (or use other SSH tools like xshell or putty). Enter
ssh root@192.168.1.1
and press Enter, then enter the password admin (for other SSH tools, follow the interface to log in). After seeing root@DD-WRT:~#, type the following commands:
|
|