Wireless Access Point auf dem Raspberry Pi einrichten
In diesem Beitrag zeige ich dir, wie du durch Einrichtung eines Wireless Access Point und DHCP Server deinen Raspberry Pi zum Zugriff über WLAN fit machst.
Zu diesem Thema gibt es den aktuelleren Beitrag “Raspberry Pi als WLAN -Router” . Dieser ist für jeden Raspberry Pi Nutzer geeigneter als dieser. 🙂
Update und Installation
Raspi updaten
1 |
sudo apt-get update |
Access Point Software Hostapd und DHCP Server installieren
1 2 |
sudo apt-get install hostapd sudo apt-get install udhcpd |
Access Point konfigurieren
Als erstes erstellst du mit einem Texteditor, ich verwende hierzu nano, eine Konfigurationsdatei. ACHTUNG im Video ist ein Fehler, dort lege ich die Datei im Verzeichnis /etc/ an. Richtig ist aber der Pfad /etc/hostapd/.
1 |
sudo nano /etc/hostapd/hostapd.conf |
Die Konfigurationsdatei hat bei mir folgenden Inhalt, diesen kannst du hier kopieren, mit deinem Texteditor anpassen und per FTP Programm in den Ordner /etc/hostapd kopieren.
1 2 3 4 5 6 7 8 9 10 11 |
interface=wlan0 driver=rtl871xdrv ssid=uart2web hw_mode=g channel=8 auth_algs=3 wpa=2 wpa_passphrase=******** wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP |
Anmerkungen, bzw. Änderungen für deine Datei.
- interface=wlan0 : in der Regel ist es wlan0, solltest du aber einen anderen Stick ansprechen wollen musst du den Wert deines Sticks verwenden
- ssid=uart2web : Name des Access Point zum Verbindungsaufbau
- wpa_passphrase=******** : hier kommt dein Passwort, mindestens 8 Zeichen ein
Installation Realtek Treiber für hostapd
Damit man Hostapd mit dem EDIMAX EW-7811UN Wireless USB Adapter verwenden kann, muss man den vorhandenen Treiber mit einen für den vorhandenen Chip passenden Treiber austauschen.
Dies erfolgt mit den folgenden Befehlen. Zuerst wechseln wir in das Verzeichnis des Treibers. Dort nennen wir den vorhandenen Treiber um und laden den neuen Treiber. Nachdem dieser geladen ist, setzen wir noch die Dateiberechtigungen.
1 2 3 4 5 |
cd /usr/sbin sudo mv /usr/sbin/hostapd/ /usr/sbin/hostapd.bak sudo wget http://webnist.de/downloads/hostapd sudo chown root:root hostapd sudo chmod 755 hostapd |
Damit die Access Point Software immer beim Systemstart des Raspberry Pi geladen und ausgeführt wird, passen wir die hostapd Datei mit unserem Texteditor an.
1 |
sudo nano /etc/default/hostapd |
Die Anpassung erfolgt in der zehnten Zeile, die Datei sieht danach so aus.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# Defaults for hostapd initscript # # See /usr/share/doc/hostapd/README.Debian for information about alternative # methods of managing hostapd. # # Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration # file and hostapd will be started during system boot. An example configuration # file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz # DAEMON_CONF="/etc/hostapd/hostapd.conf" # Additional daemon options to be appended to hostapd command:- # -d show more debug messages (-dd for even more) # -K include key data in debug messages # -t include timestamps in some debug messages # # Note that -B (daemon mode) and -P (pidfile) options are automatically # configured by the init.d script and must not be added to DAEMON_OPTS. # #DAEMON_OPTS="" |
DHCP Server konfigurieren und aktivieren
Als erstes öffnest du die vorhandene Konfigurationsdatei mit deinem Texteditor.
1 |
sudo nano /etc/udhcpd.conf |
Die Datei passt du nun an deine Einstellungen in der Datei an. Ich habe meine Datei mit allen Kommentaren belassen, diese kannst du natürlich auch löschen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
# Sample udhcpd configuration file (/etc/udhcpd.conf) # The start and end of the IP lease block start 192.168.0.20 #default: 192.168.0.20 end 192.168.0.254 #default: 192.168.0.254 # The interface that udhcpd will use # interface eth0 #default: eth0 interface wlan0 remaining yes # 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.leases # 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 192.168.0.2 192.168.0.10 option subnet 255.255.255.0 opt router 192.168.0.1 #opt wins 192.168.0.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 |
Änderungen sind vorzunehmen bei # The interface that udhcpd will use, dort wird das wlan Interface hinzugefügt und das eth0 entfernt bzw. kommentiert. Die weiteren Änderungen sind bei #Examles vorzunehmen, hier gibst du die von dir verwendeten IP Adressen an.
Nach der Konfiguration muss der DHCP Server noch aktiviert werden. Hierzu verwenden wir wieder unseren Texteditor.
1 |
sudo nano /etc/default/udhcpd |
Und kommentieren mit # die zweite Zeile.
1 2 3 4 5 6 7 8 9 |
# Comment the following line to enable # DHCPD_ENABLED="no" # Options to pass to busybox' udhcpd. # # -S Log to syslog # -f run in foreground DHCPD_OPTS="-S" |
Netzwerk konfigurieren
Als letzten Schritt, musst du noch die Datei interfaces zur Konfiguration des Netzwerkes anpassen. In meinem Fall lasse ich weiterhin die Verbindung-Daten über LAN automatisch beziehen. Für den Access Point verwende ich eine statische Verbindung, da dies die Bedienung über den Access Point wesentlich erleichtert. Achte hier auf die korrekte IP Adresse, diese muss die gleiche Adresse sein wie die in der udhcpd.conf angegebene Router-Adresse.
Meine Datei sieht so aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet manual auto wlan0 iface wlan0 inet static # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf adress 192.168.0.1 netmask 255.255.255.0 # network 192.168.2.1 # broadcast 192.168.2.255 # gateway 192.168.1.1 # iface default inet static # auto wlan1 # allow-hotplug wlan1 # iface wlan1 inet manual # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf |
Die notwenigen Schritte für die Einrichtung des Access Point habe ich mir aus den Beiträgen Thread-tutorial-raspberry-pi-accesspoint-mit-lokalem-webserver-betreiben vom Raspberry Pi Forum und raspberry-pi-und-edimax-ew-7811un-access-point-einrichten von ITWELT.org zusammengestellt. An dieser Stelle vielen Dank für die Tutorials und Beschreibungen.
Das Image zum Download
Die Einrichtung des Access Point hat mich persönlich trotz der beiden verlinkten Seiten sehr viele Stunden gekostet. Daher habe ich mir ein Image von meinem System zu diesen Zustand angelegt. Alle weiteren Versuche usw. starten bzw. starteten bei mir immer ab diesem System-Zustand. Damit du dir die Arbeit des Aufbaus sparen kannst, habe ich mich entschlossen dieses Image hier auf meiner Seite für dich zum kostenlosen Download über Dropbox zur Verfügung zu stellen. Weitere Informationen zum Umfang und den Voreinstellungen findest du auf der Downloadseite des Image.
WOW-endlich!
Danke, danke, danke!
Hallo Wolfgang, es freut mich sehr, wenn Dir mein Beitrag helfen konnte.
Kleiner Hinweis, alle Kommentare werden moderiert.
Dies bedeutet, der Kommentar wird vor der Veröffentlichung durchgelesen und von mir geprüft. Auch behalte ich mir vor, jeden Kommentar zu löschen, der nicht direkt auf das Thema abzielt oder nur den Zweck hat, Leser oder Autoren herabzuwürdigen.