- OpenWrt
-
OpenWrt
OpenWrt 10.03.1-RC5 ("Backfire")Company / developer OpenWrt Project OS family Unix-like Working state Current Source model Free and open source software Initial release January 2004 Latest stable release OpenWrt 10.03 'Backfire' / April 7, 2010[1] Latest unstable release OpenWrt 10.03.1-RC6 'Backfire' / November 1, 2011 Available language(s) 18 languages[2] Update method opkg Package manager opkg Supported platforms 50 different platforms using the following CPU architectures: AVR32, ARM, CRIS, m68k, MIPS, PowerPC, SPARC, SuperH, Ubicom32, x86, x86-64[3] Kernel type Monolithic (Linux) Userland BusyBox, GNU Default user interface CLI, WebUIs License Free software, mainly the GNU GPL, and other licenses Official website openwrt.org OpenWrt is a Linux distribution primarily targeted at routing on embedded devices. It comprises a set of about 2000 software packages, installed and uninstalled via the opkg package management system. OpenWrt can be configured using the command-line interface of BusyBox ash, or the web interface LuCI.
OpenWrt can be run on CPE routers, residential gateways, smartphones (e.g. Neo FreeRunner), pocket computers (e.g. Ben NanoNote), and small laptops (e.g. One Laptop per Child (OLPC). But it is also possible to run on ordinary computers (e.g. x86).
The project incorporates a wiki,[4] a forum[5], SVN source version control[6] and Trac for project management, bug-tracking, and code development. Additional technical support is also provided via Internet Relay Chat (IRC).
Contents
Features
The features include:
- A writable root file system, enabling users to add, remove or modify any file. This is accomplished by using mini_fo to overlay[7] a read-only compressed SquashFS file system with a writable JFFS2 file system in a copy-on-write fashion.
- Flash wear leveling using JFFS2.
- The package manager opkg, similar to dpkg or pacman, allowing users to install and remove software. This contrasts with Linux-based firmwares based on a read-only file systems that offers efficient compression but no way to modify the installed software without rebuilding and flashing a complete firmware image.
- A package repository containing about 2,000 packages, chiefly ones suited for an environment with limited resources.
- Sysupgrade, preserving selected configuration files on firmware upgrade.
- a set of scripts called UCI (unified configuration interface) intended to unify and simplify the configuration of the entire system[8]
- extensible configuration of your network involving VLAN with exhaustive possibilities to configure the routing itself
- customizable methods to filter, manipulate, delay and rearrange network packets:
- Firewall
- Port Forwarding of external traffic to computers behind NAT inside the LAN
- Quality of Service for simultaneous use of applications such as VoIP, online gaming, and streaming media
- Traffic shaping to ensure fair distribution of bandwidth among users
- Load balancing for use with multiple ISPs
- IP tunneling
- Realtime network monitoring and statistics
- Static DHCP leases
- UPnP and NAT-PMP for dynamically configured port forwarding
- Use of Dynamic DNS services to maintain a fixed domain name with an ISP that does not provide a static IP address
- On devices with USB ports only:
- 3G modem support
- Printer sharing
- Windows-compatible file sharing (via SAMBA)
- File sharing via NFS and FTP
- Audio/Video streaming via DLNA/UPnP AV
- iTunes (DAAP) server
- Webcam streaming
- USB audio
- An extensive Ajax-enabled web interface, thanks to the LuCI project[9]
- Configuration of the device as a wireless repeater, wireless access point, wireless bridge, or a combination of these
- Mesh networking
- User-configurable hardware buttons
- Regular bug fixes and updates, even for devices no longer supported by their manufacturers
Web interface
Before release 8.09, OpenWrt had a minimal web interface. In release 8.09 a new, more capable web interface is included.[10] This interface is based on LuCI, an MVC framework written in Lua.[9]
The X-Wrt project provides an alternate web interface, webif², for current and previous version of OpenWrt. It has more than 40 control and status pages.
History
The project came into being after Linksys built the firmware for their WRT54G wireless router from publicly-available code licensed under the GPL. Under the terms of that license, they were required to make the source code of their modified version available under the same license, enabling independent developers to create additional derivative versions. Support was originally limited to the WRT54G series, but has since been expanded to include many other chipsets, manufacturers and device types, including Plug Computers and Openmoko mobile phones.
Using this code as a base and later as a reference, developers created a distribution that offers many features not previously found in consumer-level routers. Some features formerly required proprietary software. Before the introduction of OpenWrt 8.09, using Linux 2.6.25, and the b43 kernel module, WLAN for many Broadcom-based routers was only available through the proprietary wl.o module that was also only provided for Linux 2.4.
Sveasoft controversy
On 2006-03-11, the OpenWrt developers publicly announced that Sveasoft had violated its GPL license terms, and that Sveasoft's continuing distribution of OpenWrt was prohibited.[11] In return, Sveasoft claimed that OpenWrt was illegally redistributing software copyrighted by Sveasoft and Broadcom and placing them under the GPL without being authorized to do so by the copyright holders.[12] Each group denies the other's allegations.
Naming
Several major versions of OpenWrt were named after alcoholic beverages, usually including their recipes in the SSH login screen as well.
- 0.9: White Russian - legacy - 2007 January
- 7.06: Kamikaze - 2007 June
- 7.07: Kamikaze - 2007 July
- 7.09: Kamikaze - 2007 September
- 8.09: Kamikaze - 2008 September
- 8.09.1: Kamikaze - 2009 June
- 8.09.2: Kamikaze - 2010 January
- 10.03: Backfire - current stable - 2010 April
- 10.03.1: Backfire next stable - not released[13]
- Bleeding edge: Attitude Adjustment - development
The bleeding edge development trunk was confusingly also called Kamikaze until February 2011 but with r25514 it was renamed as "Attitude Adjustment".
Derivatives
- Chillifire - OpenWrt-based firmware with focus on wireless hotspot management[citation needed]
- Coova - OpenWrt-based with focus on wireless hotspots.
- Midge Linux
- PacketProtector - OpenWrt-based security distribution that includes IDS, IPS, VPN, and web antivirus capabilities.
- Freifunk - German software supports wireless mesh networks with OLSR, based on OpenWrt, available in several languages.
- RO.B.IN - ROBIN (ROuting Batman INside) is an FOSS mesh network project, deployed on top of OpenWrt kamikaze, running on any Atheros AP51 routers and using the B.A.T.M.A.N. routing algorithm.
- Gargoyle[14] - A web interface for OpenWrt with a strong emphasis on usability. It was originally available as a set of packages for OpenWrt. As the author of Gargoyle started to make modifications to the base system layout of OpenWrt, the package system was dropped and the only currently available downloads are full firmware images. Gargoyle makes extensive use of JavaScript, to offload as much work as possible to the client computer, and is focused on ease of use, striving to reach a level comparable to the appliance feel of commercial router firmware.
- FreeWRT - A fork of the OpenWrt project.
- Obelisco - (Website in Spanish)
- FON - OpenWrt-based wireless routers acting as hotspots. Sources and toolchain available on fonosfera.org
- Flukso - Wireless sensor nodes using an Atheros AR2317 chipset running a patched OpenWrt OS for communication. Sources and hardware schematics available on Github.
- LibreWRT - OpenWrt-based GNU/Linux-libre distribution for computers with minimal resources, such as the Ben Nanonote, ath9k based wifi routers, and other hardware.
- OpenWRT/MLPPP - A fork of OpenWrt and Linux/MLPPP. Offers a better than stock MLPPP implementation (to avoid DPI-based throttling and for line bonding) by using Linux/MLPPP code. Developed by Canadian ISP's Acanac and Caneris, it also features web interface tweaks (mostly to make initial setup and basic configuration easier on the average user) and comes pre-packaged with consumer-oriented features like USB support for their most popular hardware and QoS scripts.
- X-Wrt - Enhancements to the OpenWrt web interface.
- CeroWrt[15] - CeroWrt purpose is to complement the debloat-testing kernel tree and provide a platform for real-world testing of bufferbloat fixes.[16]
See also
- List of wireless router firmware projects
References
- ^ "Milestone Backfire 10.03". 2010-04-07. https://dev.openwrt.org/milestone/Backfire%2010.03. Retrieved 2010-08-24.
- ^ "LuCI Translation Portal". 2004-09-01. http://i18n.luci.subsignal.org/. Retrieved 2010-11-12.
- ^ https://dev.openwrt.org/browser/trunk/target/Config.in
- ^ "OpenWrt Wiki". wiki.openwrt.org. http://wiki.openwrt.org/. Retrieved 2011-07-21.
- ^ "OpenWrt forum". https://forum.openwrt.org/.
- ^ "OpenWrt development center". https://dev.openwrt.org/.
- ^ "OpenWrt partition layout". http://wiki.openwrt.org/doc/techref/flash.layout#partitioning.of.squashfs-images.
- ^ "OpenWrt Unified Configuration Interface". http://wiki.openwrt.org/doc/uci.
- ^ a b "LuCI project". http://luci.subsignal.org/. Retrieved February 28, 2009.
- ^ OpenWrt 8.09 release notes OpenWrt download page for 8.09.'.' Retrieved February 23, 2009.
- ^ "Notice of License Termination". OpenWrt. March 11, 2006. Archived from the original on 2006-06-19. http://web.archive.org/web/20060619234857/http://openwrt.org/?p=27. Retrieved 2007-08-09.
- ^ "sveasoft post to forum.openwrt.org". OpenWrt. 12 March 2006. http://forum.openwrt.org/viewtopic.php?pid=22625#p22625. Retrieved 2007-08-07.
- ^ https://dev.openwrt.org/milestone/Backfire%2010.03.1
- ^ "Gargoyle Router Management Utility". http://www.gargoyle-router.com. Retrieved August 21, 2011.
- ^ "About CeroWrt". http://cero2.bufferbloat.net/cerowrt/about.html. Retrieved 2011-10-25.
- ^ http://lwn.net/Articles/429943/
External links
Routing software Free software Commercial software - Cisco IOS
- Junos
- RouterOS
- SmoothWall
- Vyatta
Others Related articles - Comparison of firewalls
- List of router or firewall distributions
Categories:- Free routing software
- Aftermarket firmware
- Lua-scriptable software
- Embedded Linux distributions
Wikimedia Foundation. 2010.