TFTP, CTCP and Big Panet

Linksys WRT54G

After arriving home on Friday night Luca sprints round the corner of the corridor, sees me and shouts "Big Panet!" He's 2 years old and is apparently already addicted to my PS3 and the game "Little Big Planet". I don't blame him, it is a lot of fun, even if he can't actually control the characters yet.

So I boot up the PS3 and start the game, however on this occassion it required a game update to be downloaded from the PS3 network. So I reluctantly start the download to update the game, knowing there is a good chance it will fail, which it does, and takes down my router and therefore Internet access to the other devices using it (much to Amelia’s annoyance).

After a bit of research it seems that downloading game updates from the Playstation Network uses some ports that cause my router to think it’s being attacked with a Denial of Service (DOS) attack and therefore blocks access and also crashes the router. It’s a Linksys WRT54G router and is a pretty popular device. So popular in fact that there are open source projects which replace the default firmware with Linux based upgraded firmware which unlocks new features and most importantly is more stable. Details of the open source project are available on the DD-WRT website. My router is a WRT54G v5 which is apparently one of the worst to upgrade but there is a handy guide on the WRTrouters site for upgrading it.

Edit: Ben recommends this firmware from polarcloud as he has been running it for some time.

I quickly scan the guide and it seems simple enough, it basically has the following steps:

1.       Use the router web interface to upload a file that scrubs the current firmware from the router. Once you do this, it’s gone for good so you need to make SURE you can upgrade or restore from here on in. It also loads in a program with a web interface for uploading new firmware. Powercycle the router.

2.       Use the new interface to load in some basic Linux firware which will allow access via TFTP. Powercycle the router.

3.       Use a TFTP client to FTP the new firmware up into the new Linux based router. Powercycle the router.

4.       Enjoy a cold beverage and a new router web interface with more stability and features.

It looks simple enough, I’m fairly used to upgrading firmware and I’ve searched the forums and most people says this tutorial works for them,  so I feel confident that it will all be ok.

So with Luca running round my ankles still chanting the mantra “Big Panet, Big Panet”, I do the first step and blow my current router settings into space. I then do the second step through the new web interface, so far so good. Then I use a TFTP gui program to upload the linux firmware in the third step but as sods law dictates, it doesn’t work. The upload times out as if the router hasn’t got a TFTP server running. I try this about 10 times but it’s not working, and now I can’t get on the net to do any research. I’m getting a ping from 192.168.1.1 so I know the router is at least alive and the network settings are ok.

After about 30 mins of searching on my Android phone, I find a post that says the TFTP client won't work with Vista or windows 7! Bah!!! I’ve got 3 machines in the flat and they all run Vista. Apparently Windows Vista and Window 7 use CTCP (Compound TCP) which speeds up standard TCP communication but won’t catch the small window that the TFTP client needs to connect. It’s too fast and needs delaying. I spent a few hours trying to manufacture interrupts, but in the end I decided to nip round to Hans’ house and use his little netbook which runs Windows XP to copy over the Linux firmware and finish the upgrade.

So if any of you out there are considering upgrading firmware to a Linksys WRT54G, or any other router, or indeed any device that requires an update via TFTP, think twice before starting the procedure because Vista and Windows 7 don’t play well with TFTP.

I now have a much more reliable router, my PS3 connects faultlessly and download games updates and I’ve got new features to enable more wireless options like signal boosting and chaining and I have a 2 year old who is content for about another 5 mins.

Tagged in: Hardware , Rant

Have your say

* Required Field
Blog results loading