WHR-G300N V2

From DD-WRT Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 03:19, 23 September 2010 (edit)
GNTC (Talk | contribs)
(Important Notes)
← Previous diff
Revision as of 03:35, 23 September 2010 (edit) (undo)
GNTC (Talk | contribs)
(Going back to Buffalo Firmware)
Next diff →
Line 29: Line 29:
# Get TFTP app # Get TFTP app
## On ubuntu enable Universe repositories ## On ubuntu enable Universe repositories
-## Update repositories using<pre>sudo apt-get update</pre>+## Update repositories using<br><code>sudo apt-get update</code>
-## Use <pre>sudo apt-get install tftp</pre>+## Use <br><code>sudo apt-get install tftp</code>
# Hold the reset button on your router for at least 10 seconds. I didn't do a 30/30/30 reset, but you might want to. # Hold the reset button on your router for at least 10 seconds. I didn't do a 30/30/30 reset, but you might want to.
# Unplug all ethernet cables and the power cable. # Unplug all ethernet cables and the power cable.
# Connect your computer through ethernet directly to your router but leave the router turned off. # Connect your computer through ethernet directly to your router but leave the router turned off.
-# Disable NetworkManager. In Ubuntu 9.10, run <pre>sudo service networking stop</pre> Or, in Ubuntu 10.04, run <pre>sudo service network-manager stop</pre>+# Disable NetworkManager. In Ubuntu 9.10, run <br><code>sudo service networking stop</code> Or, in Ubuntu 10.04, run <code>sudo service network-manager stop</code>
-# Set IP of ethernet interface to "192.168.11.2". In Ubuntu, run <pre>sudo ifconfig eth0 192.168.11.2</pre> (assuming eth0 is your ethernet interface)+# Set IP of ethernet interface to "192.168.11.2". In Ubuntu, run <br><code>sudo ifconfig eth0 192.168.11.2</code> (assuming eth0 is your ethernet interface)
-#set netmask to "255.255.255.0" I think this is default but just to be safe, run <pre>sudo ifconfig eth0 netmask 255.255.255.0</pre>+#set netmask to "255.255.255.0" I think this is default but just to be safe, run <br><code>sudo ifconfig eth0 netmask 255.255.255.0</code>
-# Make entry in the ARP table corresponding to the router. run <pre>sudo arp -s 192.168.11.1 [MAC ADDRESS OF ROUTER]</pre>+# Make entry in the ARP table corresponding to the router. run <br><code>sudo arp -s 192.168.11.1 [MAC ADDRESS OF ROUTER]</code>
#*The MAC address of router is the SSID printed on the sticker, but every second digit/letter is followed by a ":", so you end up with something like "00:1D:73:8C:8D:D5" (THIS IS AN EXAMPLE DO NOT USE THIS NUMBER... I ACTUALLY JUST MADE IT UP) #*The MAC address of router is the SSID printed on the sticker, but every second digit/letter is followed by a ":", so you end up with something like "00:1D:73:8C:8D:D5" (THIS IS AN EXAMPLE DO NOT USE THIS NUMBER... I ACTUALLY JUST MADE IT UP)
#* what this really does is tell the network that 192.168.11.1 (the IP address that the router will take for itself) corresponds with the MAC address of the router. #* what this really does is tell the network that 192.168.11.1 (the IP address that the router will take for itself) corresponds with the MAC address of the router.
#*I'm not sure the arp table business is entirely necessary but it cannot hurt... also this is the one step i have absolutely no idea how to do in windows... #*I'm not sure the arp table business is entirely necessary but it cannot hurt... also this is the one step i have absolutely no idea how to do in windows...
- +#At this point you basically have a 1 computer network set up and your computer will be expecting the router (defined by its MAC address) to show up on 192.168.11.1 (which is the address the router will ask for/respond on when it is turned on)
-At this point you basically have a 1 computer network set up and your computer will be expecting the router (defined by its MAC address) to show up on 192.168.11.1 (which is the address the router will ask for/respond on when it is turned on)+#*'''Important:''' Before starting TFTP navigate (on the shell) to the folder where you downloaded the firmware (otherwise you can not upload it using TFTP)
- +#*run tftp<br><code>tftp</code>
-'''Important:''' Before starting TFTP navigate (on the shell) to the folder where you downloaded the firmware (otherwise you can not upload it using TFTP)+#**Set verbose mode on (so we know what's going on);
-*run tftp<pre>tftp</pre>+#**Binary mode on (because we are uploading a binary file);
-**Set verbose mode on (so we know what's going on);+#**Trace on (so we get feedback on our commands);
-**Binary mode on (because we are uploading a binary file);+#**Rexmt 1 (to retry the upload on failure every 1 second);
-**Trace on (so we get feedback on our commands);+#**And timeout to 60 (repeatedly retry the upload for 60 seconds before giving up)
-**Rexmt 1 (to retry the upload on failure every 1 second);+#*To do this on the regular tftp client, enter the following commands (in the text below, "tftp>" is just the prompt that tftp gives you, not something you need to type)
-**And timeout to 60 (repeatedly retry the upload for 60 seconds before giving up)+#<code>tftp> verbose<br>Verbose mode on.<br>tftp> binary<br>mode set to octet<br>tftp> trace<br>Packet tracing on.<br>tftp> rexmt 1<br>tftp> timeout 60</code>
-To do this on the regular tftp client, enter the following commands (in the text below, "tftp>" is just the prompt that tftp gives you, not something you need to type)+#in tftp connect to 192.168.11.1 (does not matter that router is still turned off) <br><code>tftp> connect 192.168.11.1</code>
-<pre>+
-tftp> verbose+
-Verbose mode on.+
-tftp> binary+
-mode set to octet+
-tftp> trace+
-Packet tracing on.+
-tftp> rexmt 1+
-tftp> timeout 60+
-</pre>+
- +
-#in tftp connect to 192.168.11.1 (does not matter that router is still turned off) <pre>tftp> connect 192.168.11.1</pre>+
#*At this point you aren't really "connected" in the sense that your computer requires any feedback from the router. tftp is basically just prepped to send the correct file to the correct address, as long as all the other pieces of the equation (the router) end up in the right place at the right time. #*At this point you aren't really "connected" in the sense that your computer requires any feedback from the router. tftp is basically just prepped to send the correct file to the correct address, as long as all the other pieces of the equation (the router) end up in the right place at the right time.
#*now get ready to plug in your router, but don't do it yet. Also, make sure your computer is connected to one of the LAN ports of the router, not the WAN port (the WAN port is outlined in blue) #*now get ready to plug in your router, but don't do it yet. Also, make sure your computer is connected to one of the LAN ports of the router, not the WAN port (the WAN port is outlined in blue)
-#In tftp put [firmware]<pre>tftp> put wzrg300nh-firmware.tftp</pre>+#In tftp put [firmware]<br><code>tftp> put wzrg300nh-firmware.tftp</code>
#*At this point tftp will keep trying to send the firmware to the router and when it fails (because the router isn't yet on or hasn't yet brought up it's tftp interface) it will wait 1 second and retry, up to 60 times (because that's how we set up the tftp client) #*At this point tftp will keep trying to send the firmware to the router and when it fails (because the router isn't yet on or hasn't yet brought up it's tftp interface) it will wait 1 second and retry, up to 60 times (because that's how we set up the tftp client)
#Plug in the power cord to the router #Plug in the power cord to the router

Revision as of 03:35, 23 September 2010

Contents

Installing DD-WRT

Flashing from Buffalo Firmware

Buffalo, unfortunately, encrypts their firmware, and their routers will accept only encrypted firmware in the web interface.

Fortunately, the stunning authors of DD-WRT have created a first time flash file. You can flash the WHR-G300N V2 over the Buffalo web firmware update interface. After which you can then use normal DD-WRT web flashing.

File Downloads

Go to the Brainslayer latest build folder and the "buffalo_whr_g300nv2" subfolder, and download the .bin file, choose the first time or the regular update depending on your needs.

DD-WRT Upgrade Flashes

Get the files from the link provided just above. For upgrades in the DD-WRT interface you must use the regular .bin files, not the first time flash ones (these are intended for use in the Buffalo firmware web update only).

Important Notes

It seems support for this router is still experimental and not yet official. I used mine as an access point and was very happy to see channels 12 & 13 become available (I don't understand why Buffalo don't make them work in Europe). However, when I tried to set the channel to 40Mhz wide, the speeds for all transfers crashed (even after setting back to 20Mhz). It's a work in progress and I'm excited about it.

I should note that I plan on doing some speed throughput tests with the 1.82 Buffalo firmware. So far it looks like so long as you don't try and engage 40Mhz mode, DD-WRT might be faster!! I will carry on with the testing and see.

Going back to Buffalo Firmware

I tried many times to TFTP without success. I got disheartened as my old Belkin 7230-4 was a piece of cake. You must follow these instructions for a successful TFTP flash. I have used these myself to flash my own WHR-G300N V2 back to Buffalo firmware.

To do this you can use Ubuntu 9.04 Desktop Live CD. I used Ubuntu 10.04 which I have installed on my laptop.

  1. Get the Buffalo firmware from their site. You may need to choose the right region, so I won't link here.
  2. Get TFTP app
    1. On ubuntu enable Universe repositories
    2. Update repositories using
      sudo apt-get update
    3. Use
      sudo apt-get install tftp
  3. Hold the reset button on your router for at least 10 seconds. I didn't do a 30/30/30 reset, but you might want to.
  4. Unplug all ethernet cables and the power cable.
  5. Connect your computer through ethernet directly to your router but leave the router turned off.
  6. Disable NetworkManager. In Ubuntu 9.10, run
    sudo service networking stop Or, in Ubuntu 10.04, run sudo service network-manager stop
  7. Set IP of ethernet interface to "192.168.11.2". In Ubuntu, run
    sudo ifconfig eth0 192.168.11.2 (assuming eth0 is your ethernet interface)
  8. set netmask to "255.255.255.0" I think this is default but just to be safe, run
    sudo ifconfig eth0 netmask 255.255.255.0
  9. Make entry in the ARP table corresponding to the router. run
    sudo arp -s 192.168.11.1 [MAC ADDRESS OF ROUTER]
    • The MAC address of router is the SSID printed on the sticker, but every second digit/letter is followed by a ":", so you end up with something like "00:1D:73:8C:8D:D5" (THIS IS AN EXAMPLE DO NOT USE THIS NUMBER... I ACTUALLY JUST MADE IT UP)
    • what this really does is tell the network that 192.168.11.1 (the IP address that the router will take for itself) corresponds with the MAC address of the router.
    • I'm not sure the arp table business is entirely necessary but it cannot hurt... also this is the one step i have absolutely no idea how to do in windows...
  10. At this point you basically have a 1 computer network set up and your computer will be expecting the router (defined by its MAC address) to show up on 192.168.11.1 (which is the address the router will ask for/respond on when it is turned on)
    • Important: Before starting TFTP navigate (on the shell) to the folder where you downloaded the firmware (otherwise you can not upload it using TFTP)
    • run tftp
      tftp
      • Set verbose mode on (so we know what's going on);
      • Binary mode on (because we are uploading a binary file);
      • Trace on (so we get feedback on our commands);
      • Rexmt 1 (to retry the upload on failure every 1 second);
      • And timeout to 60 (repeatedly retry the upload for 60 seconds before giving up)
    • To do this on the regular tftp client, enter the following commands (in the text below, "tftp>" is just the prompt that tftp gives you, not something you need to type)
  11. tftp> verbose
    Verbose mode on.
    tftp> binary
    mode set to octet
    tftp> trace
    Packet tracing on.
    tftp> rexmt 1
    tftp> timeout 60
  12. in tftp connect to 192.168.11.1 (does not matter that router is still turned off)
    tftp> connect 192.168.11.1
    • At this point you aren't really "connected" in the sense that your computer requires any feedback from the router. tftp is basically just prepped to send the correct file to the correct address, as long as all the other pieces of the equation (the router) end up in the right place at the right time.
    • now get ready to plug in your router, but don't do it yet. Also, make sure your computer is connected to one of the LAN ports of the router, not the WAN port (the WAN port is outlined in blue)
  13. In tftp put [firmware]
    tftp> put wzrg300nh-firmware.tftp
    • At this point tftp will keep trying to send the firmware to the router and when it fails (because the router isn't yet on or hasn't yet brought up it's tftp interface) it will wait 1 second and retry, up to 60 times (because that's how we set up the tftp client)
  14. Plug in the power cord to the router
    • The router will start up and now and you will see some lights blinking (possibly)
    • About 10-20 seconds in, you should notice that tftp is sending the file. instead of the retry message over and over you will see some progress scrolling down the screen and at the end it will tell you how many blocks or bytes were transferred in how many seconds
  15. After the transfer is complete, wait about 5-10 minutes (more like 6 minutes I think) during this wait the red light on front of the router will blink and then go off, eventually the wireless led comes on. (wireless led looks like a radar thing... don't know how to describe it really)
  16. When the wireless led is on, you are ready to go.

Thanks To

ERamseth and Chalkos. I copied chunks of their pages to put this together more efficiently. They also gave me the info I needed in order to be able to get my WHR-G300N V2 back to Buffalo firmware.