09 January, 2013

Difference between W25 SW and Netgear WNR2000v2 SW


Recently I bought some used Netgear 300 M routers for a very affordable price and I have checked a bit of the internal structure of the SW that came with that router.

It was very interesting to look at the architecture of this software as it was quite different from the one found on W25.

The first positive surprise is that Netgear provides the complete build environment for the router with a lot of source codes and instructions on how to build the firmware. I have actually not tried to build the firmware, but when checking the details of the operation I could find all the relevant source files. As far I know Ericsson has never released the source code of the W25, probably violating the GNU licence of lot of its components.

On the other side the structure of the W25 is much nicer, it is like a mini linux machine keeping most of the conventions of the desktop linux operating systems. The configuration is stored in the /etc directory, the standard tools to set up the network and other parts of the system are included and with a desktop linux knowledge you are able to look around and do simple tasks. One part of the flash is configured as rw filesystem and the files which should be changed are symlinked to this area.

The Netgear has a very different concepts. The data here is also stored in a separate part of the Flash, but it is not exposed as a file system, but there is an utility called nvram, which can read and write parameters to this area. The configuration is done by setting parameters in this area and then using C programmed utilities to set up the router based on this information. Even the init process and the web server is a hard coded C program so there is not much tweaking what you can do without compiling a new firmware.

So the good news is that both devices are possible to tweak, but not the same difficulty is involved.

No comments: