CRE076 OpenWRT

Die Linux-Distribution für WLAN-Router
OpenWRT ist eine Linux-Distribution speziell für kleine WLAN-Router. Felix Fietkau ist einer der Entwickler des Projektes und berichtet im Gespräch mit Tim Pritlove über die Zeile, Schwerpunkte und Besonderheiten der Distribution.
Felix berichtet, was OpenWRT genau ausmacht, warum man nicht einfach einen Standard-Linux-Kernel auf kleinen Geräten ohne weiteres laufen lassen kann, wie zusätzliche Software installiert wird, wie das Projekt mit Änderungen bei Linux Schritt hält, die Bemühungen des Projektes, freie Treiber für WLAN-Subsysteme bereitzustellen, welche Aufgaben ein WLAN-Treiber konkret erfüllen muss, wie heutige Treiber-Features langsam in den Kernel wandern, welche Probleme Hersteller haben, eine laufende Firmware zum Laufen zu bekommen und welche Chancen OpenWRT hat, künftig zur Standard-Software auf neuen Geräten zu werden, wie Kommunikation in einem WLAN funktioniert, wie man OpenWRT installiert, welche aktuellen und geplanten Oberflächen zur Konfiguration existieren, wie die Kommunikation innerhalb des Projektes funktioniert, welche Firmen mit OpenWRT kooperieren und warum ein XO Laptop (OLPC) mit OpenWRT schneller läuft.
-
Felix Fietkau
- Tim Pritlove
- Max Merz
Shownotes
- John F. Kennedy – Waldorf-Astoria Hotel 1961
Address before the American Newspaper Publishers Association, April 27, 1961
- CRE Intro
- Begrüßung
- Tim ist in Hamburg
Chaos Computer Club Hamburg
- Felix Fietkau
OpenWRT
- Der CCCHH
Freifunk
Kernel
- Felix Fietkau
- Felix ist 25 und macht seit 14 mit Rechnern rum
- OpenWRT ist sein erstes wirkliches Projekt
Linksys
Linux
Linksys WRT54G
IEEE 802.11g
IEEE 802.11b
Harald Welte
GPL Violations
Free Software Foundation
Cisco Systems
- Erster günstiger WLAN-Router mit offenem Quellcode
- Leider ist nicht wirklich die komplette Software erhältlich
VxWorks
Bootloader
Flash-Speicher
RAM
- Hardware des WRT54G
- 125/200MHz-Prozessor
MIPS-Architektur
- 4MB Flash, 16MB RAM
Filesystem
PPP
DHCP
NAT
- Zielsetzung des OpenWRT-Projektes
- OpenWRT sieht für Benutzer aus wie modifiziertes Linux
- Zielplattformen des Projektes
- Zu Beginn Konzentration auf WRT54G und WRT54GS
- Dann auch ähnliche Broadcomm-Geräte
- Danach Plattformabstraktion
Hardwareabstraktionsschicht
- Momentan Ausweitung über Wireless Router hinaus
- Umfang der OpenWRT-Software
Linux
- Linux-Standardwerkzeuge
ls
Editor
Shell
DHCP
DNS
- Außerdem an die 300, 400 Pakete zur Auswahl
Samba
- Mesh-Routing
Network Attached Storage
- Netzwerkdrucker
USB
Port
- Packetverwaltung
iPKG
- Änderungen am Linux Kernel
- Standard-Linux-Kernel hat üblicherweise keine Hardwareunterstützung
- Hersteller von Embedded-Geräten forken den Kernel, ändern ihn ab und verbreiten die geänderte Version
Broadcom
Linksys
- Modifikationen werden nie an neue Kernel-Versionen angepasst
- OpenWRT schreibt Kernel-Patches, die die Hersteller-Versionen ersetzen
- OpenWRT-Benutzer wählt nur noch die Plattform aus und kompiliert einmal
make
- Beispiel: Tim hat sich ein Gerät gekauft
- OpenWRT-Image kann mit Standard-Firmware aufgespielt werden
- OpenWRT stellt Binaries zur Verfügung
MediaMarkt
- Unterstützte Geräte
Intel
MIPS
ARM
x86
- Populäre Geräte
Asus WL-500g Premium
Soundkarte
- Proprietäre WLAN-Treiber
PPPoE
DSL
Provider
DHCP
Ethernet
IP
WLAN
- Hersteller behalten ihren Quellcode gerne für sich
GPL Violations
Grafikkarte
- Hersteller mit komplett freien WLAN-Systemen
Ralink
Realtek
Broadcom
Atheros
- Atheros sagt, sie wollen offen werden
FCC
- Reverse Engineering für Atheros und Broadcom fertig, aber noch nicht stabil
- Was muss ein WLAN-Treiber leisten?
IEEE 802.11
Access Point
- Arbeit wird vom Treiber bzw. WLAN-Stack geleistet
BSD
Multiband Atheros Driver for WiFi (MADWIFI)
- MADWIFI ist teilweise proprietär
- Neues Treiberprojekt für IEEE 802.11 direkt im Kernel
- Reverse Engineering für Broadcom
- Reverse Engineering für Atheros
OpenBSD
- Unterstützung für 802.11n bzw. 802.11a
IEEE 802.11n
IEEE 802.11a
- Hardware-Hersteller die OpenWRT einsetzen
- Infineon scheint sich zu interessieren
- Unterstützung des Asus WL-500g Premium
- Der Asus-Access-Point hat einen 802.11g Broadcom 4318
- Da hier Reverse Engineering des Treibers noch nicht fertig ist, werden noch die Hersteller-Binaries genutzt
- Zielsetzung sind aber freie Treiber für alle Geräte
- Status der OpenWRT-Entwicklung für den Asus-Access-Point
- Funktionsweise von WLAN
- WLAN ist kein Full-Duplex-Kanal
- Access Point schickt regelmäßig Beacons aus
- Kommunikation zwischen Clients läuft über den Access Point
- Timing-Probeme
- WLAN auf dem Chaos Communication Congress
Roaming
Bridge
- Angreifer im Netz
DOS
- Bug im Atheros-Treiber
- Leute, die ihren eigenen Access Point mitbringen und damit stören
- Diese Probleme sind zur Zeit noch nicht im Fokus von OpenWRT
- Benutzerinterface von OpenWRT
- Standardmäßig kein Webinterface
X-WRT
- Webinterface für OpenWRT ist in Entwicklung
- Erstmal ist das Ziel von OpenWRT aber die Basistechnologie
Apple Airport
- Für die Konfiguration der Airport gibt es eine Anwendung auf dem Rechner
- Daran wird bei OpenWRT auch gearbeitet
Fraunhofer Fokus
SNMP (Simple Network Management Protocol)
- Fehlermeldungen
- Arbeitsweise des OpenWRT-Projektes
IRC
- Mailingliste für Kommunikation mit externen Entwicklern
Mailingliste
Git
Versionskontrollsystem
SVN
trac
OpenWrt development center
OpenWrt Community wiki
MediaWiki
MoinMoin
- Entwicklertreffen auf dem Chaos Communication Congress
Chaos Communication Congress
OpenBSD
Flame War
Theo de Raadt
Die “Fairydust” Rakete
Atheros
Broadcom
Chaos Communication Camp
ICMP4
- Zusammenarbeit mit Firmen
Infineon
Fon
CRE019 Fon
RP-SMA-Steckverbinder
Netgear
Infineon
DSL
Voice over IP
- Codequalität in der Embedded-Welt
- Abspaltungen von OpenWRT
DD-WRT
FreeWRT
- OLPC (One Laptop Per Child)
CRE071 One Laptop Per Child (OLPC)
X-Server
OpenWRT mit GUI auf dem OLPC
Cross Compilation
MD5
Tarball
- Mesh Networking
IEEE 802.11s
- Firmware der Meshing-Hardware ist nicht offen
Marvell
CRE071 One Laptop Per Child (OLPC)
CRE016 Wireless Mesh Networking
CRE045 B.A.T.M.A.N.
- Unterstützungsmöglichkeiten
- Entwickler werden gebraucht
OpenWRT.org
- OpenWRT IRC Channel irc://irc.freenode.net/openwrt
- Verabschiedung
- “Vielleicht kramt ihr nochmal eure alten Router aus dem Regal und könnt vielleicht noch ein bisschen mehr damit machen.” (Tim) “Lieber neue als alte, bei den alten siehts manchmal nicht so gut aus.” (Felix)
- CRE Outro