Wlan Pi3 und Stretch

  • Hallo Freunde,


    Da ich einen meiner Pi's ständig herumschleife, und mir die dauerde Anpassung an verschiedene Wlans auf die Nerven ging, hab ich ein kleines Bash Script geschrieben, das überprüft ob ein Wlan aus einer Liste von bekannten Wlan's vorhanden ist, und wenn ja, das netwerkservice stoppt, die entsprechenden Dateien dhcpcd.conf und wpa_supplicant.conf modifiziert und anschliessend das Service wieder startet.

    Das Script wird im Crontab unter @reboot aufgerufen, und startet mit sleep 5.


    AUSZUG AUS DEM BASH SCRIPT:

    createwpa

    createdhcp

    sudo service networking stop

    sleep 2

    sudo cp $f1 /etc/wpa_supplicant/wpa_supplicant.conf

    sudo cp $f2 /etc/dhcpcd.conf

    sleep 2

    sudo service networking start

    sleep 1

    led2


    Das funktioniert bei Jessie einwandfrei, aber bei Stretch nicht.

    Wenn das Wlan verschieden vom Wlan des letzten Bootvorganges ist, verbindet sich der Raspi nicht, obwohl die oben genannten Dateien passen.

    Erst ein Reboot sorgt für die Verbindung (eh klar).


    Ich habe das Gefühl, daß bei Stretch das "networking start/stop" nix macht.

    Auch wenn ich mich mit SSH einlogge, und dann das Netzwerkservice stoppe sollte mich der Raspi eigentlich trennen, tut er aber nicht ?


    Jetzt kann ich nur im os-release nachsehen ob es sich um STRETCH handelt, wenn ja, und eine SSID passt, nachsehen ob ich im ifconfig die gewünschte fixe IP-Adresse finde, und wenn nicht, einen zusätzlichen Reboot auslösen. Ist aber schon abstrus !:conf:


    Kann mir jemand helfen ? Das Stretch macht mich noch wahnsinnig !:wallbash:


    lg Pretzi:danke_ATDE:

  • Da ich einen meiner Pi's ständig herumschleife, und mir die dauerde Anpassung an verschiedene Wlans auf die Nerven ging, hab ich ein kleines Bash Script geschrieben, das überprüft ob ein Wlan aus einer Liste von bekannten Wlan's vorhanden ist, und wenn ja, das netwerkservice stoppt, die entsprechenden Dateien dhcpcd.conf und wpa_supplicant.conf modifiziert und anschliessend das Service wieder startet.

    BTW: Hast Du auch schon mit einer einzigen wpa_supplicant.conf versucht, die die Liste der bekannten WLANs in Form von network-blocks (... d. h. für jedes bekannte WLAN einen entsprechenden network-block in der wpa_supplicant.conf) beinhaltet?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • BTW: Hast Du auch schon mit einer einzigen wpa_supplicant.conf versucht, die die Liste der bekannten WLANs in Form von network-blocks (... d. h. für jedes bekannte WLAN einen entsprechenden network-block in der wpa_supplicant.conf) beinhaltet?

    Nein hab ich nicht, wusste nicht daß das geht, und wie das geht. Aber ich brauche ja auch verschieden IP's in den verschiedenen wlans.

    :thumbup:

  • Das ist kein Problem. Einfach für jedes Netzwerk die statische IP die du dort benötigst mit angeben. Wie das erstellen der passenden wpa_supplicant.conf für mehrere Netzwerke funktioniert, gibt es im Internet zu hauf Anleitungen.

  • Das ist kein Problem. Einfach für jedes Netzwerk die statische IP die du dort benötigst mit angeben. Wie das erstellen der passenden wpa_supplicant.conf für mehrere Netzwerke funktioniert, gibt es im Internet zu hauf Anleitungen.

    Ja kann sein, muss ich erst googeln, brauchts dann die DHCPCD.CONF für die satische IP-Adresse nicht ?

    Aber mich würde interessieren warum's bei jessie geht und bei Stretch nicht !

    :danke_ATDE:

  • Nein hab ich nicht, wusste nicht daß das geht, und wie das geht. Aber ich brauche ja auch verschieden IP's in den verschiedenen wlans.

    :thumbup:

    Das steht doch auch in der manpage. Z. B.:

    Quote

    wpa_supplicant is configured using a text file that lists all accepted networks ...

    ...

    Configuration file can include one or more network blocks, e.g., one for each used SSID. wpa_supplicant will

    automatically select the best network based on the order of network blocks in the configuration file,

    Für die Zuweisung der erforderlichen IP-Adresse hat dein PI doch den dhcpcd.


    EDIT 2:


    Siehe z. B. in der manpage für dhcpcd.conf das Anlegen und Benutzen verschiedener Profile, in Abhängigkeit von der per arping erreichbaren Router (gateway):

    Code
    arping address [address]
                 dhcpcd will arping each address in order before attempting DHCP.  If an address is found, we will select
                 the replying hardware address as the profile, otherwise the ip address.  Example:
    
                       interface bge0
                       arping 192.168.0.1
    
                       profile 192.168.0.1
                       static ip_address=192.168.0.10/24


    EDIT:


    Vergleiche mal aus jessie und stretch, die Ausgabe von:

    Code
    systemctl cat networking

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Edited 2 times, last by rpi444 ().

  • Habs gefunden.


    Mit wpa_cli terminate, dann Dateien modifizieren und

    sudo wpa_supplicant -B -iwlan0 .............. und

    sudo service networking restart


    gehts bei stretch und bei jessie - warum auch immer !


    :danke_ATDE: