Table of Contents
Convention de nommage
Cette page centralise les règles de nommage utilisées sur l'infrastructure : hostnames, adressage IP, VMID Proxmox, interfaces switch/pare-feu et règles de firewall OPNsense. Référencée depuis network:ipam plutôt que dupliquée.
Principe de base
Trois éléments distincts, à ne jamais mélanger dans un seul nom :
- Hostname — identité physique/logique stable de la machine
- Nom de service — ce qui est exposé via le reverse proxy, peut survivre à une migration de host
- IP — position réseau, gérée par l'IPAM, jamais encodée dans le nom
Ne pas encoder le VLAN dans le hostname (éviter srv-jellyfin-vlan40). L'IPAM et le sous-réseau portent déjà cette information ; la dupliquer crée un point de désynchronisation en cas de migration de VLAN.
Domaine interne
domaine dédié à la résolution interne, distinct du domaine public :
homelab.lan
Résolu uniquement par Unbound.
Convention de hostname
Format : <prefix>-<slug>[-nn], minuscules, tirets uniquement (compatibilité DNS/RFC1123 strict, pas d'underscore).
| Préfixe | Usage | Exemple |
|---|---|---|
| fw- | Pare-feu | fw-opnsense |
| sw- | Switch | sw-crs310 |
| ap- | Point d'accès | ap-eap225-salon |
| srv- | VM serveur | srv-jellyfin, srv-unbound |
| ct- | Conteneur LXC/Docker | ct-pihole, ct-traefik |
| nas- | Stockage | nas-backup |
| iot- | Objet connecté générique | iot-prise-salon |
| game- | Console/PC gaming | game-ps5-salon |
| pc- | Poste utilisateur | pc-bureau |
Allocation IP par tranche
Découpage identique appliqué sur les quatre VLANs.
| Plage | Usage |
|---|---|
| .1–.9 | Infra réseau (gateway, switch mgmt, AP) |
| .10–.99 | Réservations statiques (serveurs, services critiques) — documentées dans network:ipam |
| .100–.200 | Pool DHCP dynamique — non tracké manuellement |
| .201–.254 | Réservé / tests temporaires |
Commentaires interfaces (switch / trunk)
Format : <ROLE>-<CIBLE> en PascalCase-avec-tirets.
Exemples en production sur le CRS310 : Trunk-AP-EAP225, Access-Proxmox, Uplink-OPNsense.
Règles de pare-feu OPNsense
Format
[VLAN_SRC]_<ACTION>_<PROTO/SERVICE>_TO_<DEST>
MAJUSCULES_SNAKE_CASE, underscore comme séparateur — distingue visuellement des hostnames (qui utilisent des tirets).
- ACTION explicite (ALLOW/BLOCK/REJECT) même si l'icône OPNsense l'indique déjà — facilite la recherche texte dans un export XML.
- BLOCK vs REJECT : distinction conservée dans le nom, pas uniquement dans le comportement (utile pour les règles REJECT ciblées, ex. feedback DNS rapide sur Guest).
- Règles temporaires : préfixe
TMP_+ date ISO en commentaire uniquement, jamais dans le nom de la règle (contrairement aux pages wiki, une règle firewall n'est pas de la documentation figée). Permet un grepTMP_périodique pour repérer les règles oubliées.
Alias
| Préfixe alias | Contenu |
|---|---|
| NET_ | Réseaux/CIDR (NET_TRUSTED, NET_HOMELAB) |
| HOST_ | IP unique (HOST_JELLYFIN) |
| PORT_ | Groupe de ports (PORT_WEB = 80,443) |
Mapping interfaces OPNsense → VLAN (état de production)
| Interface OPNsense | VLAN | Remarque |
|---|---|---|
| opt2 | TRUSTED (10) | Règle de blocage RFC1918 présente mais désactivée intentionnellement (accès complet voulu depuis ce poste) |
| opt3 | GUEST (20) | Pattern standard : DNS local, blocage RFC1918, accès internet |
| opt4 | IOT_GAMING (30) | Comprend un blocage DNS forcé (force la résolution via le résolveur local) |
| opt5 | WIREGUARD (VPN) | Sous-réseau tunnel 10.10.0.0/24, accès scopé vers Trusted et Homelab uniquement |
| opt6 | HOMELAB (40) | Bloqué par défaut vers les autres VLANs, accès internet autorisé |
| lan | Legacy (igc1, pré-VLAN) | Règles par défaut auto-générées, en cours de décommissionnement |
Exemple de jeu de règles renommé (VLAN Trusted)
TRUSTED_ALLOW_ANY_TO_HOMELAB TRUSTED_ALLOW_DNS_TO_SELF TRUSTED_ALLOW_ANY_TO_SELF TRUSTED_ALLOW_ANY_TO_WIFI_CONTROLLER TRUSTED_BLOCK_ANY_TO_RFC1918 # désactivée intentionnellement TRUSTED_ALLOW_ANY_TO_ANY TRUSTED_ALLOW_ANY_TO_WIREGUARD # redondante avec la règle précédente, conservée pour lisibilité
