Raspberry: IP, DHCP und / oder WLAN AP über GPIO steuern

OP #6032108
Lesenswert?

Da ich sehr viel unterwegs bin, sehr oft und sehr viel in Hotels 
übernachte. Habe ich mir nun einen eigenen mobilen Headless-Git-Server 
mit einem Raspberry und Gitea aufgesetzt. Das funktioniert auch 
tadellos.

Nun ist es aber so, da ich ja nun ständig auf Reisen bin, muss dieser 
nun auch des öfteren an verschiedene Netzwerke angepasst werden. Zu 
Hause habe ich ihn am meinem Router mit LAN-Kabel hängen und dort 
bezieht er seine IP über DHCP. In meiner festen Unterkunft auf Arbeit, 
hängt er im WLAN und bezieht von dort über DHCP seine IP.

Wenn ich aber nun in Hotels bin, müsste ich den Raspberry entweder auf 
eine feste IP umstellen, oder der Raspberry (Was mir besser gefallen 
würde) müsste einen WLAN AP bereitstellen.

Meine Idee war nun diese, über einen kleinen Schalter (Kippschalter 
etc..) festlegen ob er bei nächsten Boot nun dieses oder jenes 
konfiguriert. Da ich allerdings auf Linux und Phyton und GPIOs noch so 
fast garkeine Ahnung habe, frage ich mich ob dies überhaupt möglich ist 
und wenn ja... wo ich da am besten Anfangen kann.

Hat da jemand einen Tipp für mich?
Gast #6032185
Lesenswert?

Rene K. schrieb:
> Wenn ich aber nun in Hotels bin, müsste ich den Raspberry entweder auf
> eine feste IP umstellen

Eine feste IP in fremden Netzwerken ist eine schlechte Idee.

Rene K. schrieb:
> frage ich mich ob dies überhaupt möglich ist
> und wenn ja... wo ich da am besten Anfangen kann.

Ja es ist sehr sicher möglich. Ich würde beginnen mit dem auslesen des 
Schalters.
OP #6032266
Lesenswert?

ich schrieb:
> Eine feste IP in fremden Netzwerken ist eine schlechte Idee.

Nein nein, das würde dann nicht in ein fremdes Netzwerk kommen sondern 
direkt über LAN mit dem Laptop verbunden, welcher ebenfalls eine feste 
IP hat.

ich schrieb:
> Ja es ist sehr sicher möglich. Ich würde beginnen mit dem auslesen des
> Schalters.

Ja da bin ich bereits drann... Klappt auch soweit, zumindest in der 
Shell.
1
#!/bin/sh
2

3
# Input-Pin (Taster) Richtung
4
echo "22" > /sys/class/gpio/export
5
echo "in" > /sys/class/gpio/gpio22/direction
6

7
# Zugriffsrechte auf Datei
8
chmod 660 /sys/class/gpio/gpio22/direction
9
chmod 660 /sys/class/gpio/gpio22/value
10

11
# Status abfragen
12
STATPORT=$(cat /sys/class/gpio/gpio22/value)
13
echo "Pin 22  = $STATPORT"
14

15
# Pin freigeben
16
echo "22" > /sys/class/gpio/unexport

Nun ist die Frage, wenn ich von den dazugehörigen Dateien (z.b. 
/etc/network/interfaces) zwei Stück anlege, und jeweils die eine mit der 
anderen überschreibe, dürfte dies ja funktionieren oder? Wie gesagt, das 
Raspbian ist Buster

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren