#!/bin/bash SSID="CSR" PASSWORD="CSR_2021" nmcli connection delete $SSID #delete network to safely test if [[ -z "$SSID" || -z "$PASSWORD" ]]; then echo "Usage: $0 " return 1 fi echo "Verbinde: $SSID ..." nmcli dev wifi connect "$SSID" password "$PASSWORD" >/dev/null 2>&1 if [[ $? -ne 0 ]]; then echo "Verbinding fehlgeschlagen $SSID" return 2 fi echo "Verbindsaufbau..." # Wait up to 15 seconds for connection for i in {1..15}; do STATE=$(nmcli -t -f WIFI g) if [[ "$STATE" == "enabled" ]]; then CONN=$(nmcli -t -f ACTIVE,SSID dev wifi | grep '^ja' | cut -d: -f2) if [[ "$CONN" == "$SSID" ]]; then echo "Verbunden mit $SSID" break fi fi sleep 1 done if [[ "$CONN" != "$SSID" ]]; then echo "Verbindingsfehler" return 3 fi echo "Teste (ping 8.8.8.8)..." ping -c 3 8.8.8.8 >/dev/null 2>&1 PING_STATUS=$? if [[ $PING_STATUS -ne 0 ]]; then echo "Kein Internet" return 4 fi echo "Ping Erfolg" echo "Teste HTTP..." curl -s --max-time 5 https://google.com >/dev/null 2>&1 CURL_STATUS=$? if [[ $CURL_STATUS -ne 0 ]]; then echo "HTTP fehlgeschlagen" return 5 fi echo "Internet funktioniert!" return 0