OpenWrt
| OpenWrt | |
|---|---|
| Bildschirmfoto | |
Die Weboberfläche LuCI Version 0.10 Paketverwaltung auf OpenWrt trunk |
|
| Basisdaten | |
| Entwickler | OpenWrt Entwickler |
| Sprache(n) | multilingual |
| Aktuelle Version | Attitude Adjustment 12.09 (25. April 2013) |
| Abstammung | GNU/Linux ↳ OpenWrt |
| Architekturen | alle erdenklichen[1] |
| Lizenz | GPL und andere Lizenzen |
| Website | openwrt.org |
OpenWrt ist eine kleine Linux-Distribution für embedded Geräte wie CPE-Router, Smartphones (z. B. Neo FreeRunner) oder Pocket Computern (z. B. Ben NanoNote). OpenWrt bietet ein voll beschreibbares Dateisystem und beinhaltet den Paketmanager opkg. Das ist insbesondere für den Einsatz in CPE- und WLAN-Routern einzigartig. Die Paket-Quellen beinhalten zurzeit (2011) ungefähr 2000 Software-Pakete, die es dem Anwender erlauben, den Router sehr weitläufig zu konfigurieren und die ursprünglichen Funktionen der originalen Firmware um ein Vielfaches zu erweitern. OpenWrt Buildroot, das Werkzeug um eigene Images zu erstellen, ist ein stark modifiziertes Buildroot.
Inhaltsverzeichnis |
Bedienung [Bearbeiten]
Auf Geräten, die keinen Bildschirm und keine Tastatur haben, wird OpenWrt per Kommandozeile von einem über Netzwerk per telnet oder SSH verbundenen Computer aus bedient. Zur Administration stehen aber auch mehrere Weboberflächen zur Verfügung: LuCI, X-Wrt und Gargoyle. Per Webbrowser können alle üblichen Einstellungen vorgenommen werden, von Trivialen wie etwa Portweiterleitungen über DDNS-Einstellungen bis hin zu Statistiken aufrufen. Eigens für Geräte mit Bildschirmen wurde das X Window System portiert.
Geschichte [Bearbeiten]
Entstehung [Bearbeiten]
Im Juni 2003 stellten Andrew Miklas und weitere Programmierer fest, dass Linksys in ihrer Produktserie WRT54G den unter den Bestimmungen der GNU General Public License (GPL) veröffentlichten Quelltext des Linux-Kernels und anderer Software verwendete, ohne jedoch ihren modifizierten Quelltext der Allgemeinheit zur Verfügung zu stellen, wie es von der GPL verlangt wird.[2] Nach einem mehrere Monate andauernden öffentlichen Appell an Linksys lenkte das Unternehmen schließlich größtenteils ein und veröffentlichte im Oktober 2003 fast den gesamten modifizierten Quelltext des WRT54G-Linuxkernels, bis auf den Treiber für den in dieser Routerserie verbauten Broadcom-WLAN-Chipsatz.[3] Um den Druck auf Linksys und andere Routerhersteller zu erhöhen, gründete Harald Welte, der Hauptentwickler des Linux-Netzwerkmoduls Netfilter/iptables, infolgedessen die Initiative gpl-violations.org.[4] Dadurch wurde es möglich, die von Linksys und später anderen Unternehmen veröffentlichte Software zu modifizieren und somit den Wünschen der Benutzer entsprechend anzupassen.
Das erste „stabile Release“ [Bearbeiten]
Im Januar 2004 wurde schließlich die Linux-Distribution OpenWrt gegründet. OpenWrt konnte daher im Gegensatz zu vielen anderen damals entstandenen Firmware-Projekten auf den ursprünglichen Quelltexten aufbauen und musste dadurch weniger Reverse-Engineering betreiben. Bald darauf konnte die erste fertige Version mit dem einfachen Namen „stable release“ veröffentlicht werden, die wiederum von Netzwerkprojekten wie Freifunk und Sip@Home als Basis für ihre Firmware verwendet wurde und teils noch heute in Benutzung ist. Nachteilig am „stable release“ war jedoch, dass die Entwicklung an zu dem Zeitpunkt veraltete Versionen von Linux-Programmen gebunden war und darüber hinaus teilweise immer noch proprietäre Konfigurationsprogramme der originalen Linksys-Firmware benötigt wurden.[5]
| Legende: |
|---|
| Alte Version |
| Aktuelle Version |
| Zukünftige Version |
| Version | Codename | Veröffentlichung | Bemerkungen / Neuerungen |
|---|---|---|---|
| - | Stable Release | 2004 | Erste Version |
| RC 5 | White Russian | 26. März 2006 | |
| RC 6 | 7. November 2006 | ||
| 0.9 | 3. Februar 2007 | ||
| 7.06 | Kamikaze | 5. Juni 2007 | Neuentwicklung der Konfigurationsstruktur und anderer Bereiche |
| 7.07 | 26. Juli 2007 | erweiterte Hardware-Unterstützung | |
| 7.09 | 30. September 2007 | Fehlerbehebungen für 7.07 | |
| 8.09 | 19. Februar 2009 | Paket-Aktualisierungen, Fehlerbehebungen, neue Weboberfläche, zusätzliche Hardwareunterstützung | |
| 8.09.2 | 10. Januar 2010 | ||
| 10.03 | Backfire | 6. April 2010 | Linux Kernel 2.6.32 LTS[6], zusätzliche Hardwareunterstützung, Bugfixes |
| 10.03.1 | 21. Dezember 2011 | Linux Kernel 2.6.32 LTS[6], zusätzliche Hardwareunterstützung, Bugfixes | |
| 12.09 | Attitude Adjustment | 25. April 2013 | Linux Kernel 3.3 mit CoDel siehe Network congestion avoidance, zusätzliche Hardwareunterstützung, Bugfixes |
| trunk | Barrier Breaker |
„White-Russian“-Versionen [Bearbeiten]
Anfang 2005 begannen - auch durch den Schwung neuer Mitarbeiter - die Arbeiten an einem neuen OpenWrt-Entwicklungszweig, der am 25. Juni 2005 nach einigen Monaten interner Entwicklung in einer ersten experimentellen, nach dem Cocktail White Russian „White Russian RC1“ benannten Version veröffentlicht wurde. White Russian nutzte ein neues von Buildroot2 des uClibc-Projekts abgeleitetes Buildsystem, das jedoch inzwischen mit diesem nur noch wenig gemeinsam hat. Viele der proprietären Programme der ursprünglichen Firmware wurden durch neugeschriebene freie Alternativen ersetzt, wie mtd, ein Programm, um den Flash-Speicher mit einer neuen Firmware zu beschreiben, die WLAN-Chip-Konfigurationsprogramme wlcompat und wificonf und Werkzeuge, um die VLAN-Funktion des internen Switches über das Proc-Dateisystem zu konfigurieren. Durch den Ansatz von OpenWrt, die offiziellen Linuxkernelquellen zu nutzen und nur modulare Patches und Treiber für die Netzwerkgeräte und Chips bereitzustellen, wurde es möglich, auch weitere Geräte neben der WRT54G-Serie unter OpenWrt zu betreiben.
Im März 2006 konfrontierte das OpenWrt-Projekt das kalifornische Softwareunternehmen Sveasoft nach länger anhaltendem Unmut über dessen Softwareveröffentlichungspraxis mit dem Vorwurf, dass dieses entgegen den Bestimmungen der GPL seine von OpenWrt abgeleitete Firmware nicht ebenfalls im Quelltext frei zugänglich machte und entzog ihm nach den entsprechenden Regelungen der GPL das Recht, weiterhin von OpenWrt abgeleitete Software zu vertreiben, bis es der Aufforderung zur Freigabe seiner modifizierten Quelltexte nachkäme. Sveasoft behauptete zunächst, dass die betreffenden Versionen lediglich Vorabversionen für einen kleinen Kreis von Betatestern gewesen seien, und argumentierte später weiter, dass OpenWrt unberechtigterweise Teile von Sveasofts Modifikationen in das OpenWrt-Projekt kopiert habe. Die GPL enthält jedoch keine Ausnahmeregelung für Vorabversionen und sobald von Dritten abgeleitete Werke außerhalb des Unternehmens verteilt werden, müssen diese Modifikationen entweder unter derselben Freizügigkeit freigegeben oder der Vertrieb dieser Software mit sofortiger Wirkung eingestellt werden. Sveasoft machte daraufhin das Angebot, jedem Kunden von Sveasoft auf dessen explizite Anfrage hin den Quelltext der von diesem Kunden benutzten Sveasoftfirmware zuzusenden. Der Konflikt konnte jedoch nicht abschließend gelöst werden.[7][8]
Die letzte veröffentlichte Version des White-Russian-Zweigs war „White Russian 0.9“ am 30. Januar 2007, zu einer Zeit, als die Entwicklung an der Nachfolgerlinie „Kamikaze“ bereits im vollem Gange war.[5] Etliche neue Funktionen dieser Nachfolgerversion werden aber auch als Backport („Rückübertragung“) für „White Russian“ zur Verfügung gestellt, so dass auch Benutzer dieser älteren Versionen diese ebenfalls nutzen können.
„Kamikaze“-Versionen [Bearbeiten]
Während der Entwicklung von White Russian wurde man zunehmend mit einigen Teilen dieser Entwicklungslinie unzufrieden, insbesondere die Konfiguration des Routers über einzelne Variablen in einem extra NVRAM stieß auf Kritik, weswegen man für die angepeilte Version 1.0 von OpenWrt einen neuen Entwicklungszweig mit dem Codenamen „Kamikaze“, benannt nach einem alkoholischen Cocktail aus Wodka, Cointreau und Zitronensaft, mit grundlegenden Veränderungen begann. So läuft die Konfiguration in Kamikaze, wie unter anderen Linuxdistributionen üblich, über einfache Textdateien innerhalb des Ordners /etc. Auch andere Bereiche des Systems wurden komplett überarbeitet bzw. neu entwickelt.
Die erneute zweite Entwicklungslinie vor der Veröffentlichung einer Version 1.0, die im Unixbereich traditionellerweise nicht die erste veröffentlichte Version, sondern die erste Version mit dem ursprünglich beabsichtigten Funktionsumfang darstellt, führte innerhalb des OpenWrt-Projekts zu Streit über den Projektfortgang, so dass sich der Softwareentwickler Waldemar Brodkorb zu einer Abspaltung entschloss und am 31. Mai 2006 zur Gründung des aktuell nicht mehr weiterentwickelten Projekts FreeWRT aufrief. Die Gründe für seine Abspaltung waren eine seiner Ansicht nach schlecht gestaltete, mit veralteter und verstreuter Dokumentation wenig hilfreiche Homepage des OpenWrt-Projekts, unregelmäßige Veröffentlichungen neuer OpenWrt-Versionen, mangelnde projektinterne Kommunikation und sein schlussendlich erfolgter Ausschluss aus OpenWrt.[9]
Am 5. Juni 2007 wurde schließlich die erste stabile Version der Kamikaze-Reihe mit der Versionsnummer 7.06 veröffentlicht. Die Versionsnummer wurde dabei nach dem von der Linuxdistribution Ubuntu eingeführten Schema statt fortwährend zu zählen aus der letzten Stelle des Veröffentlichungsjahres 2007 und des Veröffentlichungsmonats Juni (06) gebildet. Kamikaze 7.06 beinhaltet neben dem neuen Konfigurationsschema über Textdateien ein neugeschriebenes Buildsystem zur Erstellung der Distribution und einzelner neuer Pakete und unterstützt jetzt insgesamt 8 verschiedene Hardware-Plattformen. Daneben vollzog es für alle Plattformen bis auf die mit Broadcom-WLAN-Chipsatz, bei der man aus Stabilitätsgründen noch auf die alten proprietären Broadcomtreiber für den Linuxkernel Version 2.4 angewiesen ist, den Wechsel auf den Linuxkernel in der Version 2.6.[10]
Einen Monat später erschien die Version 7.07. Umfangreiche Überarbeitungen machen sich in besseren WLAN-Treibern, verkürzter Startzeit und besserer Stabilität bemerkbar. Des Weiteren stieg die Zahl der unterstützten Architekturen von acht auf zehn. Version 7.09 behebt 2 Monate später einige aufgetretene Fehler.
Am 4. November 2008 ist der erste Release Candidate der Version 8.09 erschienen. Unter anderem enthält es eine neue Weboberfläche namens LuCI.[11]
„Backfire“-Versionen [Bearbeiten]
OpenWRT-'Backfire' ist nach einem alkoholischen Cocktail aus Kaffeelikör, Irish Cream, und Wodka benannt. Am 3. März 2010 wurde die erste Beta[12]-Ausgabe der OpenWRT "Backfire"-Version veröffentlicht. Allgemeine Verbesserungen und die Unterstützung von mehr embedded Geräten, Routern, Smartphones ist das Ziel für die gesamte Linie. Das endgültige "Backfire"-Release 10.03 ist seit dem 6. April 2010 verfügbar[13]. Derzeit (Dezember 2011/Januar 2012) ist die stabile und verbesserte Version 'Backfire 10.03.1'[14][15] aktuell.
Vorteile [Bearbeiten]
Die zum Download angebotene Vanilla-Firmware bringt nach ihrer Installation alle elementaren Funktionen mit, die zum Betrieb im Netzwerk nötig sind: Netzwerkunterstützung, WLAN-Access Point, den minimalen DNS-Server dnsmasq, sowie die Möglichkeit, eine PPP-Verbindung herzustellen. Durch die mitgelieferte Paketverwaltung lassen sich sehr einfach Funktionen wie VPNs mit OpenVPN oder VoIP mit Asterisk nachrüsten, des Weiteren auch exotischere Aufgaben wie Audioplayer umsetzen. Durch die von den Entwicklern bereitgestellten Werkzeuge kann man des Weiteren selbst Programme für die OpenWrt-Umgebung erstellen und kompilieren. Im Gegensatz zu den meisten, von den Herstellern mitgelieferten Firmware-Versionen lässt sich OpenWrt vom Anwender komplett selbst konfigurieren, somit kann auch IPv6-Unterstützung im Netzwerk eingerichtet werden. Sämtliche in der Linux-Welt existierenden Werkzeuge zur Network congestion avoidance stehen zur Verfügung.
LuCI [Bearbeiten]
LuCI ist ein Schwesterprojekt, das sich ausschließlich damit beschäftigt, eine erweiterbare Weboberfläche für OpenWrt zu schaffen. LuCI basiert auf Lua und ist sehr modular aufgebaut. LuCI lässt sich mit dem Paketmanager opkg leicht installieren und bei Bedarf auch wieder deinstallieren. Es unterstützt i18n und zurzeit sind 17[16] Sprachen verfügbar.
X-Wrt [Bearbeiten]
Zusätzlich zum sehr technisch orientierten Projekt OpenWrt entwickelt das Schwesterprojekt X-Wrt eine erweiterte Weboberfläche mit Namen Webif², um OpenWrt einfach über den Browser statt nur über die Kommandozeile steuern zu können und um somit OpenWrt benutzerfreundlicher zu gestalten.
Die erste Webif-Version „Milestone 1“ wurde vom X-Wrt-Projekt im Oktober 2006 veröffentlicht und in rascher Folge kamen weitere „Meilensteine“ mit schrittweise erweitertem Konfigurationsumfang, verbesserter Internationalisierung der Oberfläche und erweiterter Theme-Unterstützung bis zur Veröffentlichung der aktuellen Version „Milestone 2.75“ am 24. Februar 2007 hinzu. Diese letzte Version ist bislang noch nicht vollständig an das neue Konfigurationsschema der OpenWrt-Kamikaze-Reihe angepasst, weshalb der Einsatz derzeit nur für „White Russian“ Version 0.9 empfohlen wird.
Für den zukünftigen derzeit in der Entwicklung befindlichen „Milestone 3“ ist neben der erweiterten Unterstützung von Kamikaze SSL-Verschlüsselung vorgesehen. Mit „Milestone 4“ soll dann die Anpassung an Kamikaze abgeschlossen sein.[17] Nach Auskunft des Hauptentwicklers Jeremy Collake im November 2012 wird das Projekt X-Wrt nicht mehr aktiv fortgeführt.
Gargoyle Router Management Utility [Bearbeiten]
Gargoyle Router Management Utility ist genau wie LuCI und X-Wrt eine weitere Weboberfläche.
Derivate [Bearbeiten]
Neben der FreeWRT-Abspaltung gibt es noch einige speziell angepasste Versionen und auf OpenWrt basierende Distributionen, wie Midge,[18] eine speziell auf ADM5120-basierte Router angepasste Variante, PacketProtector,[19] ein um diverse Firewallsoftware wie IDS, IPS, VPN und Antivirenprogramme ergänztes und angepasstes OpenWrt sowie Gargoyle,[20] welches auf seine grafische Oberfläche und ausgefeilte Quota-Regelungen besonderen Wert legt. Fast alle Firmwares die von einzelnen Freifunk Communities angeboten werden bauen auf OpenWrt auf.
Siehe auch [Bearbeiten]
Weblinks [Bearbeiten]
Einzelnachweise [Bearbeiten]
- ↑ http://wiki.openwrt.org/de/about/toolchain
- ↑ Andrew Miklas: Linksys WRT54G and the GPL. Auf: Linux Kernel Mailing List. 7. Juni 2003, abgerufen 12. Juli 2007
- ↑ Jonathan Corbet: LinkSys and binary modules. In: LWN.net. 14. Oktober 2003, abgerufen am 12. Juli 2007
- ↑ Harald Welte: Companies violating the GPL of software under my copyright. In: Harald Welte's blog. 3. November 2003, abgerufen am 12. Juli 2007
- ↑ a b wiki.openwrt.org: OpenWrtDocs/About, abgerufen am 12. Juli 2007
- ↑ a b LTS = Langzeitunterstützung (engl. für 'long term support')
- ↑ Pro-Linux: Lizenzstreit zwischen OpenWrt und Sveasoft. 15. März 2006, abgerufen 13. Juli 2007
- ↑ Jonathan Corbet: Sveasoft and the GPL. In: LWN.net. 5. April 2006, abgerufen 13. Juli 2007
- ↑ Julius Stiebert: Fork der freien Router-Firmware OpenWrt geplant. In: Golem.de. 31. Mai 2006, abgerufen 13. Juli 2007
- ↑ Openwrt.org: Kamikaze 7.06 release notes. 5. Juni 2007, abgerufen 16. Juli 2007
- ↑ Openwrt.org: Kamikaze 8.09 release notes. 4. November 2008, abgerufen 8. November 2008 (englisch)
- ↑ Die Maturität der veröffentlichten Software steigt im GNU/Linux-Umfeld typischerweise von der ersten Alpha-Version über die Beta-Version zu den Release-Candidates (RC, engl. für Ausgabe-Kandidaten) bis zur finalen Release (engl.für Ausgabe) an.
- ↑ Openwrt.org: Backfire 10.03 release notes. abgerufen 9. April 2010 (englisch)
- ↑ Download-Index von /backfire/10.03.1/
- ↑ Backfire 10.03.1 final 21. Dezember 2011 - The OpenWrt Release Team would like to announce the final Backfire Interim Release 1 (10.03.1).
- ↑ http://i18n.luci.subsignal.org/
- ↑ X-Wrt: X-Wrt - OpenWrt for end users. abgerufen 16. Juli 2007
- ↑ midge.vlad.org.ua abgerufen 16. Juli 2007
- ↑ PacketProtector.org abgerufen 16. Juli 2007
- ↑ gargoyle-router.com abgerufen 20. Juni 2011