June 18, 2007

X-Wrt extends OpenWrt router firmware

Author: Joe Barr

I've been using OpenWrt on my Linksys router for a year or so. I take it for granted -- I ignore it because it just works. But back at X-Wrt.org, which is a related project, not a competitor to OpenWrt, developers have been busy creating a new user interface that both extends OpenWrt and makes it easier to use.

X-Wrt installation is a breeze. I was already running OpenWrt RC9 White Russian, so the only thing I needed to do was to decide whether to install the latest or the stable version of X-Wrt, then click the appropriate button on the X-Wrt.org installation page. A minute later, after my router was rebooted, I was running X-Wrt.

For those of you not running White Russian, that same page details installation procedures for 22 different routers, both for people starting from scratch with the router still running the stock firmware, and those who have a version of OpenWrt already installed.

The UI is the primary difference between X-Wrt and OpenWrt. Webif is the Web-based interface for OpenWrt, and webif² is used in X-Wrt. But that's not the only difference. There are also X-Wrt packages for MiniUPnP (universal plug and play), an alpha version of a pseudo-filesystem for routers called tarfs, a later version of BusyBox (1.4.1) than is available with the White Russian release of OpenWrt, and the same for wireless-tools and ipkg.

The browser-based webif² interface displays nine top-level pages: Info, Graphs, Status, Log, System, Network, VPN, Hotspot, and Log Out. In all, there are more than 40 pages available to inform you about an aspect of your router or to allow you to tweak the installation.

If you like traffic data presented in graph form, you can select Graphs and choose your poison from CPU utilization or traffic on lo, eth0, eth1, br0, vlan0, or vlan1. Just want the facts? Click on Status, and your options are to display the status of running processes, interfaces, UMTS, DHCP clients, netstat, IPtables, QoS, USB, PPPoE, PPTP, Asterisk, OpenVPN, Site Survey, or Diagnostics.

By the way, Site Survey is not designed to show the results of a poll of visitors to your LAN, but rather to show you all the wireless networks detected by your router, if any. If you select an option for a feature you're not running, such as Asterisk, for example, the page not only informs you that it is not running, it offers you the opportunity to install it.

Moving from eye-candy to function, the System -> Packages page allows you to easily add and remove package repositories, install packages by URL from the Internet, or update the list of packages available, all in addition to adding and removing specific packages. Following X-Wrt installation, the default repository set includes Backports 0.9, White Russian, non-free, and X-Wrt.

Want to check or set an NVRAM option? Click on System -> NVRAM and you'll not only be presented with a complete, easy-to-read listing of all your NVRAM variables and their contents, but be able to edit them or add new ones with just a click. Be careful who is around when you view this page, however, as it shows your wireless WEP/WPA passwords.

Another handy feature is the ability to edit config files and scripts. Select System -> File Editor, expand directories if needed, and when you see the file you want to edit, click on the pencil icon -- not the file name -- and the file will appear in an editing window. Be careful not to click on the red X, as that will delete the file. Hovering over the file or directory icon shows information about it: permissions, owner, group, and creation date.

X-Wrt also makes it easy to back up and restore the configuration, using the System -> Backup & Restore page. One of the developers suggested using a date string for the configuration name. The backup file itself is named config.tgz, regardless of the name you enter in the text box, and the name you enter is stored inside that file.

The project offers good documentation on its Web site beyond the installation instructions mentioned earlier, including sections on troubleshooting, supporting, and participating in the project. You can find additional resources for help with X-Wrt in the project forum, wiki, mailing list, and the #x-wrt IRC channel at Freenode.net.


X-Wrt is a slick new project that makes using OpenWrt easier and more fun than ever. The attention to detail is excellent, the documentation and assistance on IRC is very good, and the quality of the software is high, just as it is in OpenWrt. On a scale of 1 to 10, I give it an 9.

Special kudos to both the OpenWrt project and the X-Wrt project for working together toward a common goal. It's the way things such things should be done, but seldom are.


  • Networking
Click Here!