Created
November 5, 2025 17:21
-
-
Save Solido/78c960bce4a408e5785c00f8d67ef06d to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # ============================================================ | |
| # Script client de vérification du serveur gRPC Raspberry Pi | |
| # Vérifie : | |
| # - mDNS / Avahi (.local) | |
| # - Port gRPC ouvert (44444) | |
| # - Annonce mDNS (_grpc._tcp) | |
| # - Réponse gRPC basique via grpcurl (si installé) | |
| # ============================================================ | |
| set -e | |
| HOSTNAME_LOCAL=${1:-raspihotspot.local} | |
| GRPC_PORT=44444 | |
| echo "🔍 Vérification de la connectivité vers $HOSTNAME_LOCAL ..." | |
| # 1️⃣ Test mDNS : ping sur le nom local | |
| echo -n "📡 Test mDNS (ping $HOSTNAME_LOCAL)... " | |
| if ping -c 1 -W 2 "$HOSTNAME_LOCAL" &>/dev/null; then | |
| echo "✅ Résolution mDNS OK" | |
| else | |
| echo "❌ Impossible de résoudre $HOSTNAME_LOCAL (mDNS/Avahi non fonctionnel)" | |
| exit 1 | |
| fi | |
| # 2️⃣ Test du port gRPC | |
| echo -n "⚙️ Test du port TCP $GRPC_PORT... " | |
| if nc -z "$HOSTNAME_LOCAL" "$GRPC_PORT" 2>/dev/null; then | |
| echo "✅ Port $GRPC_PORT ouvert" | |
| else | |
| echo "❌ Le port $GRPC_PORT n'est pas accessible" | |
| exit 1 | |
| fi | |
| # 3️⃣ Vérification du service mDNS (_grpc._tcp) | |
| echo "🔎 Recherche du service mDNS _grpc._tcp..." | |
| if avahi-browse -rt _grpc._tcp 2>/dev/null | grep -q "$HOSTNAME_LOCAL"; then | |
| echo "✅ Service gRPC (_grpc._tcp) détecté via Avahi" | |
| else | |
| echo "⚠️ Aucun service _grpc._tcp trouvé pour $HOSTNAME_LOCAL" | |
| fi | |
| # 4️⃣ Test gRPC direct (facultatif) | |
| if command -v grpcurl >/dev/null 2>&1; then | |
| echo "🧪 Test de connexion gRPC via grpcurl..." | |
| if grpcurl -plaintext "$HOSTNAME_LOCAL:$GRPC_PORT" list >/dev/null 2>&1; then | |
| echo "✅ Connexion gRPC réussie" | |
| else | |
| echo "⚠️ Impossible d’interroger le serveur gRPC (peut-être pas encore lancé)" | |
| fi | |
| else | |
| echo "ℹ️ grpcurl non installé, test gRPC direct ignoré." | |
| echo "👉 Installe-le avec : sudo apt install grpcurl" | |
| fi | |
| echo "" | |
| echo "🎉 Tous les tests sont terminés." | |
| echo "----------------------------------------------" | |
| echo "mDNS : $HOSTNAME_LOCAL" | |
| echo "Port gRPC : $GRPC_PORT" | |
| echo "Résultat : OK si toutes les étapes sont ✅" | |
| echo "----------------------------------------------" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment