Forum Linux.debian/ubuntu Récupération de connexion en cas de coupure de courant

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
27
juil.
2022

J'ai à la maison un raspberry pi 4 pour faire tourner seafile et FR24.

Quand j'ai une coupure de courant, le raspbeery pi reboot plus vite que ma box et mon pi ne se reconnecte pas à internet.

Du coup, je suis obligé de rebooter le pi. Ce n'est pas un problème quand je suis à la maison mais en vacances ça m'embête un peu.

J'imagine (mal ?) que c'est un problème auquel a été confronté tous les auto-hébergeurs.

Bref comment faites-vous ?

J'utilise Raspberry Pi OS.

  • # OS

    Posté par  . Évalué à 1.

    C'est raspbian l'OS.

  • # service réseau utilisé ?

    Posté par  . Évalué à 1.

    J’utilise également une Raspberry Pi 4, mais avec Archlinux pour arm comme SE, et je n’ai jamais eu ce genre de problématiques bien que ma box soit très lente à redémarrer.

    Ça vaut le coup de noter que je suis branché en filaire (utilises-tu une carte ou une clef Wi-Fi?), et je me demande quel service utilise Raspbian (c’est du dhcpd, du wpa_supplicant…?) pour gérer le réseau.
    Il faudrait (je pense) regarder dans cette direction car je m’attendrais que ce service tente de se connecter jusqu’à y arriver.

    Malheureusement, j’atteins mes limites de connaissances et ne peut pas beaucoup plus t’aider :-)

    • [^] # Re: service réseau utilisé ?

      Posté par  . Évalué à 4.

      j'ajouterai que pour un service autohebergé, l'IP fixe sur le serveur (ici le RPI) sera une bonne chose,

      cela evite en effet le DHCP injoignable, permet à la machine de continuer a utiliser le reseau quand le dit dhcp ne repond pas, et lui rend internet des que la passerelle a redemarré.

    • [^] # Re: service réseau utilisé ?

      Posté par  (site web personnel) . Évalué à 4.

      Sur mon pi j'ai mis une adresse fixe, comme suggéré par Neox, et je n'ai pas de problème (uptime de plusieurs mois… la box n'en a pas autant). Voici ma config:

      #/etc/network/interfaces
      auto eth0
      iface eth0 inet static
        address 192.168.0.2
        netmask 255.255.255.0
        broadcast 192.168.0.255
        gateway 192.168.0.1
      

      Si tu veux rester en DHCP, tu peux essayer de remplacer auto eth0 par allow-hotplug eth0 et voir si ça arrange les choses. J'utilisais ça sur l'interface wifi, pour que la reconnexion se fasse en cas de coupure.

      Un LUG en Lorraine : https://enunclic-cappel.fr

  • # dépendances systemd

    Posté par  . Évalué à 5.

    En plus de la suggestion de donner une IP fixe à ta RPi, il y a une autre piste.

    J'avais cette situation :

    Le service networking se lance. et configure l'interface en DHCP.
    Le service autofs se lance (il dépend de networking et network-online.target), et fonctionne mal.

    Sauf que en vrai, quand autofs se lance, networking a bien configuré l'interface, mais l'IP n'est pas encore présente !

    Après pas mal de recherches, j'ai trouvé que la cible network-online.target n'attend pas les interfaces déclarées en allow-hotplug, ce qui est normal, puisque la notion de hotplug fait que l'interface réseau peut arriver et disparaître à tout moment.

    Pour garantir que mes services réseau, qui font des requêtes DNS à leur initialisation, vont bien attendre que le réseau soit fonctionnel, j'ai fait :

    autofs (ou seafile) se lance :

    • après networking.service
    • après network-online.target

    et l'interface réseau n'est pas en hotplug dans /etc/network/interface (ce qui contredit ted, mais on ne parle peut-être pas du même problème.

  • # Un onduleur

    Posté par  (site web personnel, Mastodon) . Évalué à 1.

    Un onduleur permet de continuer à alimenter des appareils pendant un certain temps (variant de quelques dizaines de minutes à quelques heures). Vu la faible consommation d'un Pi et d'une box, tu peux en trouver pour pas cher.

    Un gentil du net

  • # cron

    Posté par  . Évalué à 2.

    puisque personne ne l'a encore proposé, le plus simple serait de mettre en place un cron qui vérifie régulièrement l'état de ton interface réseau et déclenche un reboot si celui-ci n'est pas satisfaisant.

  • # Ifplugd

    Posté par  . Évalué à 1.

    Le daemon Ifplugd est installé chez moi sur Arch. Il reconnecte automatiquement en cas de déconnexion/reconnection, c'est un service systemd
    A daemon which brings up/down network interfaces upon cable insertion/removal.
    https://archlinux.org/packages/extra/x86_64/ifplugd/

  • # Merci...

    Posté par  . Évalué à 2.

    … pour votre aide.

    En effet, une ip fixe était le plus simple.
    J'ai donc modifié mon /etc/network/interfaces mais ça ne marchait pas.

    Un commentaire dans ce fichier m'indiquait d'aller voir le fichier /etc/dhcpcd.conf pour configurer une ip fixe.
    Tout comte fait dans ce fichier, on peut configurer un fall back en IP static en cas d'échec de DHCP ce que j'ai fait.

    Tout marche impec.

    • [^] # Re: Merci...

      Posté par  . Évalué à 4.

      en fait si tu veux pas passer par dhcp, il faut desactiver le service et modifier le netwrk/interface

      sinon en effet il faut activer le fallback dans dhcpd.conf

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.