Nouveau : le pare-feu IA surveille toute la plateforme et explique chaque incident en termes simples. Découvrez comment ça marche

Passerelle Pi : « RTNETLINK answers: File exists » sur ifup eth0 et coupures keepalive après le démarrage

Passerelle Pi : « RTNETLINK answers: File exists » sur ifup eth0 et coupures keepalive après le démarrage

Résolu 6 5

Traduit de English par IA ·

Premier message, je lis ce forum depuis un moment.Nous avons construit notre propre passerelle sur un Raspberry Pi 3B+ (Raspberry Pi OS Bullseye) pour un petit poste électrique : elle lit trois compteurs Modbus RTU et les publie sur v1/gw/telemetry. Le LAN du poste n’a pas de DHCP, donc eth0 a besoin d’une adresse statique. J’ai ajouté ceci dans /etc/network/interfaces :

auto eth0
iface eth0 inet static
    address 10.40.2.20
    netmask 255.255.255.0
    gateway 10.40.2.1
    dns-nameservers 10.40.2.1

Après un redémarrage, ça marche parfois et parfois non. Quand ça ne marche pas, sudo ifup eth0 affiche :

RTNETLINK answers: File exists
ifup: failed to bring up eth0

Dans Hermetry, l’onglet Log de la passerelle affiche une déconnexion keepalive_timeout à chaque démarrage, puis elle se reconnecte quelques minutes plus tard, ou pas du tout tant que je ne me connecte pas sur site. ip addr affiche parfois deux adresses sur eth0 : la statique et une 169.254.

♥ 0

Traduit de English par IA ·

Avez-vous essayé d’abord ifdown, puis ifup ?

♥ 1

Traduit de English par IA ·

Oui, ifdown indique interface eth0 not configured et ifup échoue de la même manière ensuite.

♥ 1

Traduit de English par IA ·

Bullseye utilise dhcpcd pour la mise en réseau. /etc/network/interfaces est l’ancienne méthode, je ne mélangerais pas les deux.

♥ 2

Traduit de English par IA ·

Daniel a raison. J’ai rencontré exactement ce problème sur une Pi d’une station de pompage l’an dernier. Deux éléments configurent eth0 : dhcpcd démarre au boot, ne trouve aucun serveur DHCP, attribue au port une adresse link-local 169.254 ainsi que des routes, puis ifup tente d’ajouter sa propre adresse et sa route par défaut. La route existe déjà, donc le noyau répond « File exists » et ifup abandonne. Selon celui qui gagne la course au démarrage, votre passerelle sort ou ne sort pas.Choisissez-en un. Sous Bullseye, cela signifie dhcpcd. Supprimez le bloc eth0 de /etc/network/interfaces (le fichier ne doit plus contenir que la ligne source) et placez la configuration statique dans /etc/dhcpcd.conf :

interface eth0
static ip_address=10.40.2.20/24
static routers=10.40.2.1
static domain_name_servers=10.40.2.1
noipv4ll

Nettoyez ensuite sans redémarrer :

sudo ip addr flush dev eth0
sudo systemctl restart dhcpcd
ip addr show eth0

noipv4ll empêche l’apparition de l’adresse 169.254. Si vous passez plus tard à Bookworm, dhcpcd n’est plus présent et vous faites la même chose avec nmcli, notez-le donc.

QoS 1 and a lot of patience.
Solution acceptée♥ 6

Traduit de English par IA ·

Je ne savais pas que les versions de Pi OS avaient changé à ce sujet, bon à savoir.

♥ 0

Traduit de English par IA ·

Résolu. Le fichier interfaces a été nettoyé, la configuration statique est dans dhcpcd.conf avec noipv4ll. J’ai redémarré le Pi dix fois de suite ce matin, et la passerelle s’est connectée en quelques secondes à chaque fois. L’onglet Log n’affiche désormais qu’une seule connexion propre par démarrage.

♥ 2
7 sujets de 1 à 7 (sur un total de 7)
  • Vous devez être connecté pour répondre à ce sujet.

Rejoignez la discussion

Connectez-vous pour poser et répondre à des questions, aimer les messages utiles et marquer la réponse qui a résolu votre problème. Chaque contribution rapporte des points et des niveaux.

Partager