Login
Newsletter
Werbung

Mi, 27. Juni 2007, 00:00

FreeWRT als Firmware für eingebettete Systeme

VoIP mit dem Mikrotik-Routerboard

Das Mikrotik-Routerboard ermöglicht durch seine Leistungsdaten die Implementierung einer kompletten Asterisk-Telefonanlage auf einem eingebetteten System. Durch die zwei Mini-PCI-Slots des Routerboards stellt die Integration von bis zu 8 ISDN-S0-Bussen kein Problem dar. In der FreeWRT 1.1-Distribution werden Asterisk 1.2, Asterisk 1.4, Zaptel und mISDN integriert sein, was einen Großteil der ISDN-Hardware abdeckt. Mit bis zu 12 gleichzeitigen Gesprächen und der ISDN-Unterstützung eignet sich das Routerboard als Telefonanlage für kleine bis mittlere Büros. Wer erst einmal schnuppern möchte, kann sich ein Asterisk auf den Netgear WGT634U installieren. Die 8 MB Flash des Netgear sind mit einem kompletten Asterisk und den dazugehörigen Sounddateien zwar weitestgehend belegt, einen Eindruck, wie eine VoIP-Telefonanlage auf einem eingebetteten System arbeitet, kann man sich dennoch verschaffen. Mit bis zu 4 gleichzeitigen Verbindungen, die über den Netgear abgewickelt werden können, lässt sich diese Lösung z.B. im Heimbereich einsetzen. Wer jetzt neugierig geworden ist, kann sich auf www.freewrt.com oder vorerst auf www.lochraster.org ein Routerboard oder einen Netgear WGT634U mit vorinstalliertem FreeWRT bestellen.

Wie kommt die Firmware auf den Router?

Die FreeWRT-Entwickler haben sich einige Mühe gegeben, es dem Endanwender so einfach wie möglich zu machen. Mit dem Web Image Builder (WIB) kann man sich im Internet seine gewünschte Konfiguration einfach per Mausklick zusammenstellen. Der Web Image Builder befindet sich unter wib.freewrt.org. Dort wird man durch die einzelnen Schritte der Image-Erstellung geführt. Ist das Image fertig erstellt und heruntergeladen, kann die Installation beginnen. Bei Routern, die noch mit der Originalfirmware ausgestattet sind, genügt ein einfaches Firmware-Update über die Web-Oberfläche. Der Netgear nimmt hier eine Sonderstellung ein. Bei diesem Router wird eine serielle Konsole benötigt, um eine alternative Firmware zu installieren. Eine genaue Beschreibung findet sich im Wiki. Nach Installation der FreeWRT-Firmware kann man das MTD-Utility benutzen, um ein neues Firmware-Image in den Flashspeicher zu schreiben. Zunächst wird das neue Firmware-Image per scp auf den Router kopiert und dann mit dem Kommando mtd in den Flashspeicher geschrieben. Folgende zwei Zeilen zeigen dies exemplarisch:

scp firmwareimage.bin admin@192.168.1.1:
mtd -e linux -r write firmwareimage.bin linux

Der Router startet nach dem Flashen neu.

Wenn man an den WGT634U eine serielle Konsole angeschlossen hat, kann man kurz nach dem Starten des Routers durch Drücken von Ctrl-C in den CFE-Bootloader gelangen.

Im Bootloader kann man dann mit folgenden Kommandos das Firmware-Image von einem TFTP-Server holen und in den Router flashen. Das Netzwerkkabel muss dabei am WAN-Port des Routers angeschlossen sein.

Wenn man einen DHCP-Server laufen hat, kann man die WAN-Schnittstelle des WGT634U automatisch konfigurieren.

ifconfig eth0 -auto

Manuelle Konfiguration:

ifconfig eth0 -addr=192.168.1.250 -mask=255.255.255.0

Jetzt kann die Firmware, die von einem TFTP-Server wie z.B. atftpd bereitgestellt wird, geflasht werden. Dazu benutzt man folgendes Kommando:

flash -noheader 192.168.1.10:freewrt-wgt634u-2.4-squashfs.bin flash0.os

Jetzt kann mit dem Kommando reboot neu gebootet werden. Nach dem Neustart muss das Netzwerkkabel vom WAN-Port auf den ersten LAN-Port umgesteckt werden. Auf den Router kann dann mit folgendem Kommando per SSH zugegriffen werden:

ssh admin@192.168.1.1

Das Passwort lautet FreeWRT, bitte auf Groß- und Kleinschreibung achten!

Paketverwaltung

Das Tool zum Verwalten der Pakete heißt ipkg. Folgende Optionen sollte man kennen:

Anzeigen aller installierten Pakete

ipkg list_installed

Entfernen eines Paketes

ipkg remove <paketname>

Installieren eines Paketes ohne Internetzugang

  1. Mittels scp das Paket in den Router laden
  2. Mittels ipkg install &lt;dateiname&gt; installieren

Installieren eines Paketes mit Internetzugang

  1. Mit ipkg update wird die Liste alle verfügbaren Pakete geladen
  2. Mit ipkg list wird die Liste aller verfügbaren Pakete ausgegeben
  3. Mittels ipkg install &lt;paketname&gt; installieren

Weitere Dokumentation

Wer neugierig geworden ist und weitere Informationen benötigt, dem empfehle ich das FreeWRT-Handbuch. Es kann vom Wiki heruntergeladen werden.

Das Handbuch beschreibt nochmals detailliert die Installation und alle weiterführenden Aspekte. So wird unter anderem auch erklärt, wie man FreeWRT aus den Quellen selbst kompiliert.

Autor

Der Autor Michael Schwab ist mit seinem Unternehmen de-SOLUTION im Bereich »Internetbasierte Kommunikationslösungen und Datenbanksysteme« tätig. Im Rahmen verschiedener Projekte hat er eingebettete Hardware eingesetzt. Er gehört zu den Gründungsmitgliedern von FreeWRT und arbeitet sehr eng mit dem Projektleiter Waldemar Brodkorb zusammen. Im FreeWRT-Projekt hat er die Aufgabe »contacts and communications« übernommen.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung