Ich habe einen kleinen Raspberry Pi, den ich zu Hause oder im Urlaub an vorhandene Stereoanlagen oder kleine Aktivboxen anschließen kann. Mit meinem Smartphone kann ich dann bequem von der Couch die Musikdatenbank durchstöbern und Lieder in die Playlist schieben.
Ganz wesentlich für diese Funktionalitäten ist eine Netzwerkverbindung zwischen dem Smartphone und dem Raspberry Pi. Da der Raspberry Pi mit einem Smartphone-Ladegerät am Stromnetz hängt, macht es Sinn, dass dieser auch den W-LAN-Hotspot stellt. Nachfolgend erläutere ich Schritt für Schritt, wie man das hinbekommt.
Voraussetzungen
In meiner Anleitung gehe ich von einer fertigen Raspbmc-Installation aus. Anschließend sollte der Raspberry Pi funktionsfähig in einem Netzwerk mit einem PC hängen.
Zudem wird ein W-LAN-Stick benötigt. Ich habe mich hierbei für einen CSL USB Wlan (Wifi) für PC / Raspberry Pi / Mac / inkl. WPS Knopf entschieden, der für weniger als 10 € erhältlich ist. Die Reichweite deckt mein Wohnzimmer ab.
Für die Einrichtung wird Putty benötigt.
Links
Folgende Links waren mir eine große Hilfe, auch wenn ich an manchen Sackgassen viel Zeit für Nachforschungen investieren musste:
- http://elinux.org/RPI-Wireless-Hotspot
- http://www.raspberrypi.org/forums/viewtopic.php?t=31227
- http://jenssegers.be/blog/43/Realtek-RTL8188-based-access-point-on-Raspberry-Pi
Schritt für Schritt
Hier also eine bebilderte ausführliche Anleitung, wie man den Hotspot bei obigen Voraussetzungen mit einer statischen IP-Adresse problemlos hinbekommen sollte.
- Putty auf dem PC starten
- IP-Adresse des Raspberry Pi eintragen (in meinem Fall 192.168.2.1) und auf „Open“ klicken
- Bevor sich die Konsole öffnet sind bei der Erstbenutzung noch einige Konfigurationseinstellungen vorzunehmen.
Wählen Sie im ersten Schritt mit Pfeiltasten und Leertaste die Spracheinstellung aus. Abweichend zum Bild sollten Sie die über der Markierung liegende UTF-8-Einstellung auswählen.
Bestätigen Sie die Auswahl mit OK. - Wählen Sie im nächsten Fenster de_DE@euro aus und bestätigen Sie mit OK
- Nun wählen Sie als Gebiet „Europe“ aus und bestätigen mit OK
- Zuletzt wählen Sie als Zeitzone „Berlin“ und bestätigen mit OK
- Jetzt sollte das Konsolenfenster schwarz werden und eine Eingabeaufforderung erscheinen. Sollten Sie aufgefordert werden, einen Benutzernamen einzugeben, so lautet dieser pi. Das zugehörige Passwort wäre raspberry.
- Um den make-Befehl zu installieren, geben Sie jetzt folgendes ein:
sudo apt-get install build-essential
Drücken Sie dann die Enter-Taste
Sobald eine Bestätigung zur Fortsetzung der Installation erscheint, drücken Sie y - Nach einiger Installationszeit wartet die Konsole auf eine Eingabe. Darüber ist jedoch ein Fehler zu entdecken.
- Geben Sie entsprechend der Empfehlung
sudo apt-get update
ein und drücken Sie dann die Enter-Taste - Anschließend geben Sie erneut
sudo apt-get install build-essential
ein und drücken die Enter-Taste - Bei diesem Versuch sollte jetzt kein Fehler mehr erscheinen
- Laden Sie folgendes Archiv mit Treiberdateien, die zum obigen W-LAN Stick gehören, auf Ihren Rechner:
https://github.com/jenssegers/RTL8188-hostapd/archive/v1.1.tar.gz - Gehen Sie auf Ihrem PC auf Computer und wählen Sie in der Linken Leiste Netzwerk aus
- Auf der rechten Seite sollte Ihr Raspberry Pi zu finden sein
- Öffnen Sie diesen durch doppelklick
- Sollte ein Benutzer abgefragt werden, so lautet dieser pi
Als Passwort geben Sie raspberry ein - Öffnen Sie den Ordner pi
- Entpacken Sie das zuvor heruntergeladene Archiv mit einem Programm wie 7zip
- Kopieren Sie den darin enthaltenen Ordner RTL8188-ostapd-1.1 in den soeben geöffneten Netzwerkordner pi
- Geben Sie in Putty den Befehl
cd RTL8188-hostapd-1.1/hostapd
ein, um in diesen Ordner zu wechseln - Geben Sie jetzt ein
sudo make
um hostapd zu bauen - Geben Sie dann ein
sudo make install
um hostapd zu installieren - Sollte eine Aufforderung bezüglich einer vorhandenen hostapd-Datei erscheinen, geben Sie N ein
- Geben Sie dann
cd /
ein, um ins Wurzelverzeichnis zu wechseln - Danach geben Sie ein
sudo apt-get install hostapd udhcpd iptables - Mit
cd etc/
wechseln Sie erneut das Verzeichnis - Verändern Sie die Datei udhpcd.conf mit
sudo nano udhcpd.conf - Der nachfolgend rot markierte Inhalt sollte entsprechend Ihren Einstellungswünschen verändert werden:
- # Sample udhcpd configuration file (/etc/udhcpd.conf)# The start and end of the IP lease blockstart 192.168.42.2 #default: 192.168.0.20
end 192.168.42.20 #default: 192.168.0.254# The interface that udhcpd will useinterface wlan0 #default: eth0# The maximim number of leases (includes addressesd reserved
# by OFFER’s, DECLINE’s, and ARP conficts#max_leases 254 #default: 254# If remaining is true (default), udhcpd will store the time
# remaining for each lease in the udhcpd leases file. This is
# for embedded systems that cannot keep time between reboots.
# If you set remaining to no, the absolute time that the lease
# expires at will be stored in the dhcpd.leases file.remaining yes #default: yes# The time period at which udhcpd will write out a dhcpd.leases
# file. If this is 0, udhcpd will never automatically write a
# lease file. (specified in seconds)#auto_time 7200 #default: 7200 (2 hours)# The amount of time that an IP will be reserved (leased) for if a
# DHCP decline message is received (seconds).#decline_time 3600 #default: 3600 (1 hour)# The amount of time that an IP will be reserved (leased) for if an
# ARP conflct occurs. (seconds#conflict_time 3600 #default: 3600 (1 hour)
# How long an offered address is reserved (leased) in seconds
#offer_time 60 #default: 60 (1 minute)
# If a lease to be given is below this value, the full lease time is
# instead used (seconds).#min_lease 60 #defult: 60
# The location of the leases file
#lease_file /var/lib/misc/udhcpd.leases #defualt: /var/lib/misc/udhcpd.$
# The location of the pid file
#pidfile /var/run/udhcpd.pid #default: /var/run/udhcpd.pid# Everytime udhcpd writes a leases file, the below script will be called.
# Useful for writing the lease file to flash every few hours.#notify_file #default: (no script)
#notify_file dumpleases # <— useful for debugging
# The following are bootp specific options, setable by udhcpd.
#siaddr 192.168.0.22 #default: 0.0.0.0
#sname zorak #default: (none)
#boot_file /var/nfs_root #default: (none)
# The remainer of options are DHCP options and can be specifed with the
# keyword ‚opt‘ or ‚option‘. If an option can take multiple items, such
# as the dns option, they can be listed on the same line, or multiple
# lines. The only option with a default is ‚lease‘.#Examles
opt dns 8.8.8.8 4.2.2.2
option subnet 255.255.255.0
opt router 192.168.42.1
opt wins 192.168.42.10
option dns 129.219.13.81 # appened to above DNS servers for a total of 3
option domain local
option lease 864000 # 10 days of seconds# Currently supported options, for more info, see options.c
#opt subnet
#opt timezone
#opt router
#opt timesrv
#opt namesrv
#opt dns
#opt logsrv
#opt cookiesrv
#opt lprsrv
#opt bootsize
#opt domain
#opt swapsrv
#opt rootpath
#opt ipttl
#opt mtu
#opt broadcast
#opt wins
#opt lease
#opt ntpsrv
#opt tftp
#opt bootfile
#opt wpad# Static leases map
#static_lease 00:60:08:11:CE:4E 192.168.0.54
#static_lease 00:60:08:11:CE:3E 192.168.0.44
- # Sample udhcpd configuration file (/etc/udhcpd.conf)# The start and end of the IP lease blockstart 192.168.42.2 #default: 192.168.0.20
- Drücken Sie Strg+X, um die Bearbeitung zu beenden
- Drücken Sie Y und die Enter-Taste um die Änderungen zu speichern
- Wechseln Sie ins Verzeichnis etc/default mit dem Befehl
cd default/ - Ändern Sie die Datei udhcpd mit dem Befehl
sudo nano udhcpd - Kommentieren Sie die Zeile 2 aus, so dass dort steht
#DHCPD_ENABLED=“no“ - Drücken Sie Strg+X, um die Bearbeitung zu beenden
- Drücken Sie Y und die Enter-Taste um die Änderungen zu speichern
- Wechseln Sie wieder in das Verzeichnis etc mit dem Befehl
cd .. - Wechseln Sie in das Verzeichnis etc/network mit dem Befehl
cd network/ - Ändern Sie die Datei interfaces mit dem Befehl
sudo nano interfaces - Tragen Sie folgende Inhalte ein
iface wlan0 inet static
address 192.168.42.1
netmask 255.255.255.0up iptables-restore < /etc/iptables.ipv4.nat - Drücken Sie Strg+X, um die Bearbeitung zu beenden
- Drücken Sie Y und die Enter-Taste um die Änderungen zu speichern
- Wechseln Sie wieder in das Verzeichnis etc mit dem Befehl
cd .. - Wechseln Sie in das Verzeichnis etc/hostapd mit dem Befehl
cd hostapd/ - Ändern bzw. Erstellen Sie die Datei hostapd.conf mit dem Befehl
sudo nano hostapd.conf - Tragen Sie folgendes ein und passen Sie besonders die roten Einträge für eigene Bedürfnisse an:
- # Basic configurationinterface=wlan0
ssid=MeinWLAN
channel=6
#bridge=br0# WPA and WPA2 configurationmacaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=hfrGkhkhvihv45hVeqW4$JMqw5LhjPL32ArTpoCxfkW
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP# Hardware configurationdriver=rtl871xdrv
ieee80211n=1
hw_mode=g
device_name=RTL8192CU
manufacturer=Realtek
- # Basic configurationinterface=wlan0
- Drücken Sie Strg+X, um die Bearbeitung zu beenden
- Drücken Sie Y und die Enter-Taste um die Änderungen zu speichern
- Wechseln Sie wieder in das Verzeichnis etc mit dem Befehl
cd .. - Wechseln Sie in das Verzeichnis etc/default mit dem Befehl
cd default/ - Ändern Sie die Datei hostapd mit dem Befehl
sudo nano hostapd - Ändern Sie den Eintrag in Zeile 10von: #DAEMON_CONF=““
auf: DAEMON_CONF=“/etc/hostapd/hostapd.conf“ - Drücken Sie Strg+X, um die Bearbeitung zu beenden
- Drücken Sie Y und die Enter-Taste um die Änderungen zu speichern
- Wechseln Sie wieder in das Verzeichnis etc mit dem Befehl
cd .. - Ändern Sie die Datei rc.local mit dem Befehl
sudo nano rc.local - Tragen Sie hier ein:
ifup wlan0
service udhcpd restart
exit 0 - Drücken Sie Strg+X, um die Bearbeitung zu beenden
- Drücken Sie Y und die Enter-Taste um die Änderungen zu speichern
Das war’s
Wenn Sie Schritt für Schritt alle Anpassungen vorgenommen haben, können Sie jetzt Ihren Raspberry Pi herunterfahren, das Netzwerkkabel ziehen und den Raspberry Pi mit eingestecktem USB W-Lan Stick neu starten.
Ihr Smartphone sollte anschließend den Namen (SSID) des Hotspots anzeigen, den Sie in der hostapd.conf eingetragen haben. Benutzen Sie das ebenfalls dort eingetragene Kennwort, um sich mit dem Netz zu verbinden.
Beachten Sie, dass Sie zudem noch die IP-Adressen festlegen müssen. Im obigen Beispiel wäre die IP des Smartphones 192.168.42.2 (siehe udhpcd.conf). Das Subnetz lautet 255.255.255.0, Gateway und DNS-Server 192.168.42.1.
Viel Spaß :-)
Moin,
Ich habe folgendes Problem: Ich kann mich problemlos mit dem Wlan des Raspberry verbinden, jedoch funktionieren sämtliche Netzwerkservices, die Raspbmc ausführen soll (Upnp, Zeroconf…) nicht
Hallo,
leider kann ich hierzu keinen Tipp geben, da ich das selbst noch nicht ausprobiert habe…