Zum Inhalt springen

WRAP: Unterschied zwischen den Versionen

Aus Opennet
Inhalt gelöscht Inhalt hinzugefügt
MathiasMahnke (Diskussion | Beiträge)
Imagebuilder
MathiasMahnke (Diskussion | Beiträge)
etwas hw daten
Zeile 1: Zeile 1:
x86 Wireless Router Application Platform Boards, siehe http://www.pcengines.ch/wrap.htm
x86 Wireless Router Application Platform Boards, siehe http://www.pcengines.ch/wrap.htm

=== Hardware ===

Es existieren verschiedene Versionen. Wir setzen vor allem das WRAP 2e ein:
* 233 MHz Geode SC1100 CPU
* 64 oder 128 MB RAM
* Compact Flash Interface
* 2x Mini-PCI Schnittstelle (z.B. zwei Wifi-Karten)
* 1x drahtgebundene Ethernet Schnittstelle mit PoE
* Serieller Anschluss (Console)


=== OpenWrt Installation ===
=== OpenWrt Installation ===
Zeile 7: Zeile 17:
Opennet-Repository für vorkompiliertes Images und Pakete: http://www.opennet-initiative.de/firmware/kamikaze/
Opennet-Repository für vorkompiliertes Images und Pakete: http://www.opennet-initiative.de/firmware/kamikaze/


Details zum Bauen siehe [[OpenWrt Kamikaze]].
==== Kurzanleitung Image bauen ====
* OpenWrt Kamikaze Quellen via ''svn'' besorgen, siehe http://dev.openwrt.org
* ggf. Opennet-kompatibles Makefile von http://www.opennet-initiative.de/firmware/kamikaze/.config übernehmen
* eigene Dateien für das Image ggf. nach ''trunk/files'' ablegen
* ''make menuconfig'' -- x86 Plattform, alle weiteren Einstellungen nach Bedarf
* ''make'' -- OpenWrt Images bauen, sind dann in ''bin/'' zu finden
* ''dd if=<openwrt-x86-?-?.image> of=<ziel-device> bs=512k'' -- Festplattenimage auf die CompactFlash-Karte schreiben (am besten über einen Cardreader, <ziel-device> ist der Cardreader-Devicenode)
* Hinweis Booten, bei DMA-Problemen via Grub noch ''ide=nodma'' als Bootoption hinzufügen (ggf. bei menuconfig fest vorgeben: Target Images > Extra kernel boot options)

==== Hinweise zum Dateisystem ====
* *.image-Dateien sind komplette Festplatten-Images incl. Partitionstabelle und MBR mit GRUB
* *.fs-Dateien sind reine Partitionsimages
* Wahl zwischen Squashfs+Jffs2 (mit mini_fo Overlay), nur Jffs2 oder Ext2 als Root-Dateisystem
* 1024 Zylinergrenze beachten, sonst LBA notwendig, ideal -> Partition < 490 MB
* Jffs2 ist zu bevorzugen, weil journaling und stabiler bei Stromverlust

==== Grundkonfiguration ====

Mit Opennet Kamikaze Firmware Image:
* Passwort mit ''passwd' setzen; ggf. ''/etc/dropbear/authorized_keys'' mit Public-Key versorgen
* Autostart-Dienste mit ''/etc/init.d/<dienst> enable|disable'' einrichten (z.B. olsrd)
* Netzwerk in ''/etc/config/network'' konfigurieren
* Drahtloses Schnittstellen in ''/etc/config/wireless'' konfigurieren
* WRAP neu starten

Siehe auch http://wiki.openwrt.org/OpenWrtDocs/KamikazeConfiguration

=== OpenWrt Pakete ===

==== Kurzanleitung Pakete bauen ====

Eine erste kurze Anleitung, um auf das vielfälltige OpenWrt Paketarchiv zuzugreifen und darauf iPK Pakete zu erstellen.

* Sourcen auschecken (liegen dann in openwrt/packages/):
cd openwrt/
svn co https://svn.openwrt.org/openwrt/packages
* Libaries in OpenWrt-Trunk-Baum einbinden (liegt unter openwrt/)
cd ../trunk/package
ln -s ../../packages/libs/* .
* gewünsches Paket einbinden
ln -s ../packages/<bereich>/<packet> .
cd .

Anschliessend wie gehabt per ''make menuconfig'' das Paket auswählen, "M" drücken (Paket erstellen) und anschliessend OpenWrt mit ''make'' bauen. Die erstellen Pakete werden nach ''bin/packages/'' abgelegt und automatisch in den Index ''bin/packages/Packages'' hinzugefügt.

==== madwifi mit Ad-Hoc Device ====

* iPK Paket ''kmod-madwifi'' installieren
* Wireless-Konfigurationdatei unter ''/etc/config/wireless'' bearbeiten, z.B.:
config wifi-device wifi0
option type atheros
option channel 50
config wifi-iface
option device wifi0
option mode "ad-hoc"
option ssid "olsr-a.opennet-initiative.de"
config wifi-device wifi1
option type atheros
option channel 50
config wifi-iface
option device wifi1
option mode "ad-hoc"
option ssid "olsr-a.opennet-initiative.de"
* IP-Konfiguration in ''/etc/config/network'' anfügen:
config interface wifi0
option ifname ath0
option proto static
option ipaddr 192.168.33.27
option netmask 255.255.0.0
config interface wifi1
option ifname ath1
option proto static
option ipaddr 192.168.33.27
option netmask 255.255.0.0
* WRAP neu starten

Siehe auch http://madwifi.org/wiki/UserDocs/FirstTimeHowTo

==== ntpclient zur Zeitsyncronisation ====

* iPK Paket ''ntpclient'' installieren
* Datei /etc/init.d/ntpclient anlegen (beispielhaft):
#!/bin/sh /etc/rc.common
START=80
ntp=izumi.on
boot() {
while true; do
ping -c 1 $ntp >/dev/null 2>&1 && ntpclient -s -c 0 \
-i 5 -g 1000000 -h $ntp && return
sleep 3
done
}
* diese ausführbar machen per ''chmod +x ntpclient''
* als Autostart festlegen durch ''./ntpclient enable''

==== monit zur Diensteüberwachung ====

* iPK Paket ''monit'' installieren
* Konfigurationsdatei bearbeiten, zur Überwachung von olsrd z.B.
set daemon 120
set logfile syslog facility log_daemon
set httpd port 2812 # and
allow localhost # allow localhost to connect to the server and
allow 192.168.0.0/16
check process olsrd
with pidfile "/var/run/olsrd.pid"
start program = "/etc/init.d/olsrd start"
stop program = "/etc/init.d/olsrd stop"
* hierzu noch die Erstellung eines pid-Files in ''/etc/init.d/olsrd'' ergänzen
#!/bin/sh /etc/rc.common
BIN=olsrd
DEFAULT=/etc/default/olsrd
RUN_D=/var/run
PID_F=$RUN_D/$BIN.pid
start() {
[ -f $DEFAULT ] && . $DEFAULT
mkdir -p $RUN_D
$BIN $OPTIONS
pidof $BIN > $PID_F
}
stop() {
[ -f $PID_F ] && kill $(cat $PID_F)
}
* monit starten per ''/etc/init.d/monit start''
* Webzugriff per http://<node-ip>:2812/

==== maradns als DNS-Server ====

* iPK Paket ''maradns'' installieren
* Konfigurationsdatei ''/etc/mararc'' bearbeiten und z.B. für rekursive Namensauflösung über zwei Upstream-Server konfigurieren:
hide_disclaimer="YES"
chroot_dir="/etc/maradns"
bind_address="172.0.0.1""
maradns_uid=65534
maxprocs=10
random_seed_file="/dev/urandom"
recursive_acl="127.0.0.1/8"
upstream_servers = {}
upstream_servers["."] = "192.168.0.250, 192.168.0.254"
verbose_level=3
verbose_query=1
* maradns starte per ''/etc/init.d/maradns start'', dauerhaft per ''maradns enable''
* Anfragen per ''askmara'' oder wie üblich ''nslookup'' & Co.

=== OpenWrt Imagebuilder ===

Mit Hilfe des Imagebuilders lassen sich komplette Images aus bereits kompilierten Paketen recht einfach zusammenstellen.

Doku siehe http://wiki.openwrt.org/ImageBuilderHowTo.

Version vom 15. Januar 2007, 19:13 Uhr

x86 Wireless Router Application Platform Boards, siehe http://www.pcengines.ch/wrap.htm

Hardware

Es existieren verschiedene Versionen. Wir setzen vor allem das WRAP 2e ein:

  • 233 MHz Geode SC1100 CPU
  • 64 oder 128 MB RAM
  • Compact Flash Interface
  • 2x Mini-PCI Schnittstelle (z.B. zwei Wifi-Karten)
  • 1x drahtgebundene Ethernet Schnittstelle mit PoE
  • Serieller Anschluss (Console)

OpenWrt Installation

Auf diesem x86-basiertem Board läuft neben zahlreichen Debian/GNU-Linux Deviraten auch OpenWrt Kamikaze, dem aktuellen Entwicklungszweig von http://openwrt.org.

Opennet-Repository für vorkompiliertes Images und Pakete: http://www.opennet-initiative.de/firmware/kamikaze/

Details zum Bauen siehe OpenWrt Kamikaze.