====== Configurer un accès de secours (via ordiphone) sur un routeur abonné ====== //Voir aussi : [[adminsys:configuration_routeur_adherent|Préparation d'un routeur abonné]]// Pour les accès fixes opérés par FAImaison (xDSL ou réseaux de quartier), on peut souhaiter, en cas de panne, suppléer à la connexion FAImaison. Ce guide s'attache à détailler la mise en place d'une connexion de secours, à l'aide du routeur abonné et d'un ordiphone. Ce montage a l'avantage de ne bien souvent requérir aucun matériel supplémentaire. ===== Fonctionnement ===== {{ :adminsys:img_20200122_123123.jpg?400 |}} Il faut un ordiphone disposant d'un forfait internet mobile et un routeur abonné tournant avec OpenWRT, et disposant d'un port USB. * La bascule vers la connexion du téléphone se fait dès que l'on branche le téléphone au routeur en USB et qu'on active le partage de connexion (tethering) sur l'ordiphone. * On repasse sur la connexion principale quand on débranche l'ordiphone du routeur. On prendra le cas d'un ordiphone sous //Android 7// et d'un routeur //Sagem PlusNet Hub One//, mais la configuration doit pouvoir s'adapter aisément à d'autres matériels. ===== Procédure de configuration initiale ===== ==== Étape 1 : Installation des modules ==== On se connecte en SSH au routeur abonné, puis on installe les modules nécessaires à l'exploitation d'un smartphone comme carte réseau via USB : opkg update opkg install kmod-usb-net kmod-usb-net-rndis kmod-usb-net-cdc-ether ==== Étape 2 : ajout de l'interface TetheringWAN ==== Si on branche le smartphone et que l'on active le partage de connexion via USB ; on devrait voir apparaître une nouvelle interface réseau ''usb0''. On peut le vérifier à l'aide de la commande ''ip -br link''. Il faut ensuite ajouter et configure une nouvelle interface virtuelle (notion OpenWRT) : uci set network.TetheringWAN=interface uci set network.TetheringWAN.proto='dhcp' uci set network.TetheringWAN.ifname='usb0' uci set firewall.@zone[1].network='wan wan6 TetheringWAN' uci commit ifup TetheringWAN Si on teste à ce stade, le trafic doit passer par l'ordiphone (on peut vérifier la route par défaut via ''ip route''). ==== Étape 3 : retour à la normale ==== Ce qui ne marche pas encore, c'est le retour à la normale : si on débranche l'ordiphone, on a plus rien ; alors que l'on souhaiterait se remettre à utiliser l'interface réseau ''WAN'' par défaut. Pour cela, on va utiliser le mécanisme d'évènements d'OpenWRT afin de détecter l'arrêt de l'interface ''TetheringWAN'' et réagir en relançant l'interface ''WAN''. Créer un fichier ///etc/hotplug.d/iface/10-resume-wan-after-fallback// avec le contenu suivant : if [ "$ACTION" = "ifdown" -a "$INTERFACE" = "TetheringWAN" ] then ifup wan fi Penser à rendre ce fichier exécutable : chmod +x /etc/hotplug.d/iface/10-resume-wan-after-fallback Voilà c'est fini, la bascule doit fonctionner dans les deux sens en réagissant au branchement/débranchement de l'ordiphone. En avant pour des pannes sereines ! 8-) ===== Documenter la procédure sur place ===== Dans le cas notamment d'un lieu partagé, il est intéressant de documenter la procédure de bascule sur l'accès de secours par écrit. C'est l'objet de cette affichette : {{ :adminsys:procedure_acces_internet_de_secours_via_smartphone.odt |}} ===== BONUS : indiquer l'état de la connexion à l'aide des LED du routeur ===== Le routeur utilisé ayant une led pour afficher son état, autant en profiter pour mettre en évidence l’état du réseau (bleu : ok, rouge : plus de réseau). S’assurer que le service cron est activé : # /etc/init.d/cron enable # /etc/init.d/cron start Ajouter la tâche suivante : * * * * * ping -c 1 vpn.faimaison.net > /dev/null && /root/led blue || /root/led red Et le script à placer dans ''/root/led'' : #!/bin/sh set_state() { local color=$1 local state=$2 echo "$state" > "/sys/class/leds/bthomehubv5a:$color:power/trigger" } reset() { for color in green red blue do set_state "$color" 'default-on' set_state "$color" 'none' done } on() { local color=$1 set_state "$color" 'default-on' } reset on "$1" ====== Références ====== * [[https://openwrt.org/docs/guide-user/network/wan/smartphone.usb.tethering|Openwrt - Smartphone USB Tethering]] * [[https://openwrt.org/docs/guide-user/base-system/hotplug|Openwrt - Hotplug]] * [[https://openwrt.org/docs/guide-user/base-system/cron|Openwrt - Cron and crontab]] * [[https://openwrt.org/docs/guide-user/base-system/led_configuration|Openwrt - LED configuration]]