Moinsens, allerseits!
Ich hab hier u.a. einen RasPi 2b mit "official" 7-Zoll-Touchdisplay und "official" WLAN-Stick, dazu noch ein Tastatur/Maus-Gespann von hama über Funk-Dongle und ein v1 Kamera-Modul (wahlweise auch eine NoIr-Variante). Das ganze steckt in einem Smarti-Pi (o.s.ä.) Gehäuse. Die Stromversorgung erfolgt über ein 2A-Netzteil, das über ein Y-Kabel den RasPi und das Display getrennt versorgt.
Ich hab eine fabrikneue 16GB-Karte mit dem entpackten Zip des frisch geladenen NOOBS bestückt und den RasPi gestartet. Die Installation bietet (während sie "Raspbian" als Auswahl anzeigt) oben in der Mitte einen Button "WLAN". Nachdem ich den gedrückt und die Einstellungen (Funknetz usw.) eingestellt habe, zeigte sie mir auch diverse andere mögliche Installationen (RaspBmc usw.) an. Ich blieb beim Raspbian und ließ die Installation durchklötern.
Letztendlich erschien die GUI und ich hab nur flüchtig ein paar Einstellungen zu Land, Tastatur usw. gemacht. Außerdem hab ich die meisten Schnittstellen, vor allem Kamera, aktiviert und den Boot-Vorgang auf CLI umgestellt.
Nach dem Reboot habe ich versucht, das Netzwerk einzurichten. Ich bin mir nicht sicher, ob ich zu dem Zeitpunkt neben dem WLAN-Stick auch noch das LAN-Kabel eingesteckt hatte. Aber spätestens direkt vor dem Reboot hätte ich es abgezogen. Kann aber sogar sein, daß LAN von Anfang an nicht dran war.
Nach dem Reboot habe ich die u.a. Konfiguration durchlaufen. Der Haupt-Anteil davon ist von der Seite elektronik-kompendium, aber einige zusätzliche Feinheiten von anderen Seiten mögen auch eingeflossen sein.
Das Ziel ist: Die Interfaces sollen die statische IP eth0 192.168.1.40/24 und wlan0 192.168.1.41/24 (SpeedPort-Router ist 192.168.1.1, wlan heißt "miriki") bekommen. Beide Interfaces sollen parallel funktionieren und "hotplug" in die eine oder andere richtung verkraften. Solange ich am Konfigurieren, Programmieren und Testen bin, ist das eth0 verbunden, über das ich per Putty einlogge. Ggf. zupf ich hier dann auch mal wlan0 ab. Im "echten" Betrieb soll die Kiste dann aber über wlan0 arbeiten und eth0 nur bei Bedarf zulassen.
Folgendes habe ich also gemacht:
----------
IPv4 per systemd-networkd
----------
systemctl status systemd-networkd
--> Loaded: loaded
sudo update-rc.d networking remove
sudo systemctl stop dhcpcd
sudo systemctl disable dhcpcd
sudo systemctl enable systemd-resolved
sudo systemctl start systemd-resolved
sudo systemctl status systemd-resolved
--> Loaded: loaded [...] enabled
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
ls /etc/systemd/network/
sudo nano /etc/systemd/network/eth0.network
[Match]
Name=eth0
[Network]
Address=192.168.1.40/24
Gateway=192.168.1.1
DNS=192.168.1.1
--> und prophylaktisch das gleiche nochmal entsprechend für wlan0
sudo systemctl enable systemd-networkd
sudo systemctl start systemd-networkd
sudo systemctl status systemd-networkd
--> Loaded: loaded [...] enabled
sudo reboot
ip a
ip r
cat /etc/resolv.conf
----------
WLAN per systemd
----------
sudo -i
wpa_passphrase "miriki" "PASSWORT" >> /etc/wpa_supplicant/wpa_supplicant.conf
cat /etc/wpa_supplicant/wpa_supplicant.conf
exit
sudo nano /lib/systemd/system/wpa_supplicant@wlan0.service
[Unit]
Description=WPA-Supplicant-Daemon (wlan0)
Requires=sys-subsystem-net-devices-wlan0.device
BindsTo=sys-subsystem-net-devices-wlan0.device
After=sys-subsystem-net-devices-wlan0.device
Before=network.target
Wants=network.target
[Service]
Type=simple
RemainAfterExit=yes
ExecStart=/sbin/wpa_supplicant -qq -c/etc/wpa_supplicant/wpa_supplicant.conf -Dnl80211 -iwlan0
Restart=on-failure
[Install]
Alias=multi-user.target.wants/wpa_supplicant@wlan0.service
--> und prophylaktisch das gleiche nochmal für eth0, aber braucht's wohl nicht
sudo systemctl enable wpa_supplicant@wlan0.service
sudo systemctl start wpa_supplicant@wlan0.service
sudo systemctl status wpa_supplicant@wlan0.service
--> Loaded: loaded [...] enabled
--> Started WPA-Supplicant-Daemon (wlan0).
----------
Powersave-Modus des WLAN-Sticks abschalten
----------
sudo nano /etc/network/interfaces
allow-hotplug wlan0
iface wlan0 inet manual
wireless-power off
post-up iw dev wlan0 set power_save off
sudo reboot
----------
Hostname anpassen
----------
hostname
--> alter name
sudo hostname -b raspi001
hostname
--> neuer name
sudo nano /etc/hosts
--> alt gegen neu ersetzen
sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server
sudo service ssh restart
----------
Alles anzeigen
Und was soll ich sagen? Es funktioniert natürlich nicht...
Ich bekomme die merkwürdigsten Ausgaben bei "route -n", z.B. jeweils 2 Zeilen für eth0 und wlan0 (gateway und broadcast), nur "route" (also ohne -n) macht erstmal eine bedenkpause und gibt dann auch nur IP-Adressen aus, statt 192.168.1.1 durch "speedport.ip" zu ersetzen. Und erwartungsgemäß bringt jeder ping außer auf localhost und die eigene IP dann ein Netzwerk oder Host "unreachable".
Mittlerweile hab ich einige weitere Tips in die Konfiguration eingespielt (und tlw. auch wieder entfernt) und schlußendlich sogar mit "apt-get remove dhcpcd5" den dhcpcd komplett entfernt, falls der irgendwo noch reinflanken sollte. Aber irgendwie hilft alles nichts.
Wenn ich mit LAN und WLAN boote, scheint es zu gehen. Zupf ich WLAN ab, scheint es ebenfalls noch zu gehen. Steck ich WLAN wieder an und entferne LAN, geht nichts mehr. Auch wenn ich danach LAN wieder einsteck, bleibt das Netzwerk tot.
Boote ich nur mit WLAN, zeigt "route" mir trotzdem alle 4 Zeilen an, auch die für eth0. Er macht aber keine 1:30 Pause während des Bootvorgangs. Außerdem zeigt er mir ohne Bedenkpause "speedport.ip" in der Tabelle an. ping auf 8.8.8.8 und google.de gehen dann auch.
Ansonsten nur mit LAN: 1:30 Pause (start job ... wlan0.device) beim Boot, danach nur die 2 Zeilen für eth0 bei "route", auch gleich mit korrekter Anzeige von "speedport.ip". Stöpsel ich dann WLAN mit ein, krieg ich wieder die 4 Zeilen. Ping geht weiterhin. Aber wenn ich jetzt LAN abzieh, braucht "route" wieder ein bißchen, zeigt die IP statt "speedport.ip" an, gibt aber nach wie vor alle 4 Zeilen aus. Ein ping nach "draußen" geht ab jetzt nicht mehr (destination host unreachable).
Menno... Wo kann / muß ich jetzt noch schrauben, um das Zeuchs endlich mal stabil zum Laufen zu kriegen? Mit LAN ist das ja alles "out of the box" beinahe, aber dieses @!#~ WLAN treibt mich noch in den Wahnsinn.
Gruß, Michael