Open Source Routers and Openwrt
John Marrett
Introduction - Why?
Why Run Open Source Firmware?
- Because it's there
- Flexability and enhanced functionality
- Stability
- Freedom
- We don't need no stinking warranty
Introduction - History
2003
- Linksys releases the WRT54G
- seattlewireless.net / #wrt54g people start hacking on the binary firmware
- Community pressure leads linksys to release the source code
- A number of different open firmware projects appear
Introduction - History
2005
- Linksys releases the WRT54G v5, and migrates the platform to vxworks
- It's impossible to run linux on this hardware, or so it appears...
- Linksys releases the WRT54GL, which is basically the old WRT54G v4
- Openwrt micro versions in development, support 2MB routers
Introduction - History
2006
- dd-wrt micro, openwrt micro are released, sub 2MB size
- Software only method found to replace vxworks firmware with linux
Firmware Options - Sveasoft
- One of the first open source firmware alternatives
- Enabled a lot of interesting functionality
- Suffered from limitatings in customisation
- Issues with charging for access to latest "development" firmware
- Number of accusations regarding theft of code from other router projects
- Still appears to be in a somewhat questionable GPL status
Firmware Options - DD-WRT
- Started as a fork of sveasoft, in response to their GPL violations
- Offers an incredible amount of features in a small amount of space
- Became a very popular firmware option
- Gradually increased commercialisation of the solution
- Has started to develop a lot of the same GPL type issues as sveasoft
- May still be, at present, the best option for micro routers for users with less technical inclination
OpenWRT - History
History
- Has its origins in the community surrounding #wrt54g on freenode
- Started with mbm, groz and a few others hacking on irc
- First public release was b1, some time around Dec 2k3
- Rebuilt from the ground up, only bringing in the bare minimum components from the linksys tarball
- Added web interface with release RC4, now easy to configure
OpenWRT - General Info
- Firmly dedicated to the principals of open source development
- Allows the most customisation, doesn't presume to know what you'll be trying to do
- The "One Ring" of Open Source Router Firmware
Recent Developments
- New X-Wrt Interface brings pretty graphs to the masses
X-Wrt Money Shot
Linksys WRT54G Hardware
WRT54G
- The v1 Models had a 125 Mhz proc and the standard 4MB Flash 16MB of Ram
- The v2 models speed bumped to 200Mhz
- The v4 brought the first on chip switch
- The v5 and up are vxworks based and run on 2MB of Flash and 8MB of Ram
For v1 through v3 the WRT54GS offered 8MB of flash and 32MB of Ram, a substantial improvement over the WRT54G models of the time.
Other OpenWRT Hardware
- OpenWRT is supported on an incredible variety of hardware, some notable items include:
- Buffalo produces a number of very inexpensive routers with good OpenWRT compatability
- ASUS WL-500g Premium - 8MB flash, 32 MB ram, 2 x USB 2.0 ports
- Linksys WRTSL54GS - 8MB flash, 32 MB ram, 1 x USB 2.0 port
- Tons of other supported and partially supported devices, check the Table of Hardware
- Always, always verify that the specific model and version is supported before you buy the router.
- The code currently under development in Kamikaze will bring support for a number of new boards
WRT54G Switch Layout
There are a number of different internal layouts, depending on the specific product
Interesting Projects - Software
You can do some pretty incredible things with a few software settings changes
- QoS
- Seperate Wireless from Wired Network
- HotSpot
- OpenVPN
- DMZ Network
- GhettoPeer
- Mesh Networking
Interesting Projects - USB
A router with a USB port enables a number of interesting applications
- File Server
- Data Safe
- Music Player
- Web / Security Camera
Interesting Projects - Hardware
For the serious hacker only, these projects involve physical modification to the router
Questions / Router Hacking
Questions?