OPNsense : Le mystère des VLANs fantômes (Intel I211/I225)

Si vous utilisez un mini-PC “industriel” (Topton, Yanling, Hunsn) avec des puces Intel I211 ou I225/226 comme routeur OPNsense, vous avez peut-être déjà vécu ce cauchemar : après chaque redémarrage, vos VLANs sont soit absents, soit marqués “UP” mais totalement injoignables.

Malgré des configurations de LAGG, des scripts de post-boot ou des modifications de Tunables, rien n’y fait. J’ai enfin trouvé la solution à ce problème qui rend la pile réseau instable sur ces machines compactes.

Le Symptôme : Le “Link Flapping”

En observant les logs du noyau (dmesg), on remarque souvent que les interfaces physiques font du “yoyo” (Up -> Down -> Up) environ 30 secondes après le boot. C’est à ce moment précis que la configuration VLAN d’OPNsense “décroche”.


Le Coupable n°1 : Le Spoofing d’adresse MAC

C’est souvent l’erreur fatale. Pour des raisons d’organisation ou de facilité vis-à-vis d’un FAI (comme Orange avec la Livebox), on a tendance à vouloir “spoofer” (forcer) une adresse MAC sur l’interface parente ou directement sur le VLAN.

Pourquoi ça casse tout ?
Sur ces chipsets Intel, forcer une adresse MAC différente de l’adresse matérielle réelle oblige le driver à passer en mode Promiscuous. Sur ces cartes mères compactes, ce mode entre en conflit avec la gestion électrique du bus PCIe. Résultat : le paquet arrive, la carte voit que la MAC ne correspond pas à son ID physique, et elle le rejette avant même qu’OPNsense ne puisse le traiter.

Le Coupable n°2 : Le VLAN Hardware Filtering

Par défaut, OPNsense essaie de déléguer le marquage des paquets VLAN (802.1Q) directement à la puce Intel pour soulager le CPU. C’est une excellente idée sur du matériel serveur, mais c’est une catastrophe sur les mini-PC grand public ou industriels.

Le matériel “offload” mal les paquets, ce qui corrompt le checksum et rend le trafic muet.

La Solution : Le “Back to Basics” en 2 étapes

Pour stabiliser définitivement votre installation, voici les deux manipulations à effectuer :

1. Supprimer tout Spoofing MAC

  • Allez dans Interfaces -> [Nom de votre interface].
  • Effacez tout ce qui se trouve dans le champ MAC Address.
  • Laissez OPNsense utiliser l’adresse MAC physique réelle (ex: 00:9b:c8...).
  • Faites cela pour l’interface parente (WAN/LAN) ET pour tous les VLANs rattachés.

2. Désactiver le filtrage matériel (Hardware Offloading)

  • VLAN Hardware Filtering : Choisissez “Disable VLAN Hardware Filtering” dans le menu déroulant.

Note : Sur un processeur moderne, même un petit i3 ou Celeron récent, l’impact sur le CPU est quasi nul pour du débit Gigabit, mais la stabilité sera exemplaire.

Conclusion

Après avoir appliqué ces changements et redémarré, mes VLANs sont désormais stables instantanément. Le retrait du spoofing a permis au driver de ne plus “perdre” le fil lors de l’initialisation du bus PCIe, et la désactivation du filtrage matériel garantit que chaque paquet tagué est lu correctement par le système.

Moralité : Sur du matériel mini-PC, moins on en demande à la carte réseau, plus le réseau est stable !

Romain D.

Passionné d'informatique perdu dans une trame Ethernet. Ce blog est mon bloc-notes public.

Ajouter un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

Romain D.

Passionné d'informatique perdu dans une trame Ethernet. Ce blog est mon bloc-notes public.