Redémarrer le routeur Sagem Fast 3304 de Maroc Telecom sous GNU/Linux, avec un script shell

sagem fast 3304 routeur maroc telecom Redémarrer le routeur Sagem Fast 3304 de Maroc Telecom sous GNU/Linux, avec un script shell

Si vous vous connectez à votre ADSL Menara de Maroc Telecom, avec un modem routeur wifi Sagem F@st 3304, et qu’il vous arrive d’avoir besoin de redémarrer votre routeur automatiquement, grâce à un cron + script shell, pour une des diverses raisons valables (par exemple, une connexion super lente, mystérieusement constatée après plusieurs heures de connexion suivies), le petit script de cet article risque de vous intéresser.

Pour les curieux, pour faire ce script, j’ai extrait du code HTML de l’interface web du Sagem Fast 3304 l’URL qui est activée quand vous cliquez sur le bouton « redémarrage de votre routeur » dans la section « Maintenance ».

Pour faire marcher le script, vous aurez besoin d’installer curl. Dans une distribution comme Debian ou Ubuntu :

sudo apt-get install curl

C’est à peu près similaire dans les autres distributions.

N’oubliez pas de modifier les variables USER, PASSWORD et IP pour le personnaliser !

#!/bin/sh
#
# Redémarrage du routeur de Maroc Telecom (personnalisez le script
# en modifiant les variables ci-dessous.
#
# Auteur :  Asher256
# URL : http://blog.asher256.com/
# Licence : GPL
#

# Variables à modifier pour faire fonctionner votre script
IP="192.168.1.1"
USER="Menara"
PASSWORD="Menara"

# Début du script
if ! which curl >/dev/null 2>&1; then
	echo "Vous devez installer curl !" >&2
 	exit 1
fi

tput setaf 1; echo "Redémarrage du routeur..."; tput sgr0
curl -u $USER:$PASSWORD http://$IP/SubmitMaintREBOOT -d '' >/dev/null 2>&1
if [ "$?" -ne "0" ]; then
	echo "Erreur lors de la communication avec le routeur." >&2
	exit 1
fi
sleep 3

tput setaf 1; echo "Attente de connexion..."; tput sgr0
i="0"
while true; do
	ping -c1 212.217.0.1 >/dev/null 2>&1
	if [ "$?" -eq "0" ]; then
		break
	fi

	i="`expr $i + 1`"
	if [ "$i" -gt "60" ]; then
		echo "Nombre de tentatives de connexion dépassées..." >&2
		exit 1
	fi

	sleep 1
done

# Décommenter les deux lignes suivantes si vous utiliser ddclient
# pour mettre à jour automatiquement votre dyndns.org
#tput setaf 1; echo "Mise à jour ddclient..."; tput sgr0
#ddclient
exit 0
Vus : 2038
Publié par Asher256 : 51