Modular Network Design: A Scalable Architecture Framework
Conception de réseau modulaire : un cadre d'architecture évolutif
Introduction à la conception du réseau modulaire
La modularité du réseau est la pratique de concevoir des réseaux comme des segments interconnectés, construits à dessein plutôt que des structures monolithiques. Chaque module sert une fonction spécifique, a des limites définies et se connecte aux modules adjacents par des interfaces bien comprises. Cette approche transforme le design réseau d'un art en une discipline d'ingénierie répétable.
La puissance de la modularité réside dans sa capacité à créermodèles prévisiblesque l'on peut appliquer de façon uniforme sur l'ensemble de l'infrastructure d'une organisation, qu'il s'agisse de dizaines de milliers de petits sites, de milliers de sites moyens ou de centaines de grands campus d'entreprises.
Pourquoi la modularité compte
Avantages sur tous les réseaux
Les petits sites Les grands sites -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- AutresDépannage simplifiéUn ingénieur seul peut comprendre la topologie entière.Les équipes peuvent se spécialiser par module AutresÉchelle prévisibleAjouter des modules selon les besoins AutresSécurité cohérenteVoir les mêmes politiques partout AutresEfficacité opérationnelleDéploiement basé sur les modèles AutresContrôle des coûtsChoix en vrac par type de module
Le défi de l'échelle
Les organisations restent rarement statiques. Une conception modulaire doit accueillir:
- 10 000+ petits sites: Bureaux de succursale, points de vente, installations éloignées
- plus de 1 000 sites moyens: Bureaux régionaux, centres de distribution, usines de fabrication
- 100+ grands sites: Siège, centres de données, grands campus
Sans modularité, chaque site devient un flocon de neige unique qui nécessite une documentation personnalisée, une formation spécialisée et un dépannage unique. Avec la modularité, un ingénieur qui comprend le modèle peut fonctionner efficacement sur n'importe quel site.
Modules réseau de base
Module 1: Segment de bord d'Internet
Internet Edge est l'endroit où votre organisation rencontre le monde extérieur. Ce module contient:
- WAN/ circuits Internet(MPLS, DIA, haut débit, LTE/5G)
- Routeurs de bord(BGP, terminaison du RE)
- Pare-feu(inspection approfondie, NAT, terminaison VPN)
- Segmentation VLANpour la séparation fonctionnelle
@startuml Internet Edge Module
!define ICONURL https://raw.githubusercontent.com/Roemer/plantuml-office/master/office2014
skinparam backgroundColor #FEFEFE
skinparam handwritten false
nwdiag {
internet [shape = cloud, description = "Internet"];
network ISP_Transit {
address = "VLAN 10-12"
color = "#FFE4E1"
description = "ISP/MPLS Transit"
internet;
ISP_A [description = "ISP-A\nCircuit"];
ISP_B [description = "ISP-B\nCircuit"];
MPLS [description = "MPLS\nCircuit"];
}
network Edge_Router_Segment {
address = "VLAN 10,11,12"
color = "#E6E6FA"
description = "Edge Router Aggregation"
ISP_A;
ISP_B;
MPLS;
Edge_Router [description = "Edge Router\n(BGP Peering)"];
}
network FW_Outside {
address = "VLAN 100"
color = "#FFFACD"
description = "Firewall Outside"
Edge_Router;
FW_Primary [description = "Firewall\nPrimary"];
FW_Secondary [description = "Firewall\nSecondary"];
}
network FW_HA_Sync {
address = "VLAN 101"
color = "#F0FFF0"
description = "HA Sync Link"
FW_Primary;
FW_Secondary;
}
network FW_Inside {
address = "VLAN 102"
color = "#E0FFFF"
description = "To Internal Edge"
FW_Primary;
FW_Secondary;
}
}
@enduml
Principes clés de conception :
- Circuits redondants de divers fournisseurs
- Pare-feu paires haute disponibilité
- Effacer les frontières VLAN entre les zones de confiance
- L3 liaisons point à point entre routeur et pare-feu
Module 2: Edge interne / DMZ Niveau
Pour les sites moyens et grands, l'arête interne fournit une couche d'agrégation pour les services nécessitant une exposition contrôlée ou servant de points de transition entre les zones de sécurité.
@startuml Internal Edge Module
skinparam backgroundColor #FEFEFE
nwdiag {
network From_Internet_Edge {
address = "VLAN 102"
color = "#E0FFFF"
description = "From Firewall Inside"
IntEdge_A [description = "Internal Edge\nSwitch A"];
IntEdge_B [description = "Internal Edge\nSwitch B"];
}
network MCLAG_Peer {
address = "Peer-Link"
color = "#DDA0DD"
description = "MCLAG/vPC Peer"
IntEdge_A;
IntEdge_B;
}
network WLC_Mgmt {
address = "VLAN 200 - 10.x.200.0/24"
color = "#FFE4B5"
description = "WLC Management"
IntEdge_A;
IntEdge_B;
WLC [description = "Wireless LAN\nController"];
}
network Proxy_Farm {
address = "VLAN 201 - 10.x.201.0/24"
color = "#FFDAB9"
description = "Proxy Services"
IntEdge_A;
IntEdge_B;
Proxy [description = "Web Proxy\nServers"];
}
network VPN_Services {
address = "VLAN 202 - 10.x.202.0/24"
color = "#E6E6FA"
description = "VPN Termination"
IntEdge_A;
IntEdge_B;
VPN [description = "VPN\nConcentrator"];
}
network Infrastructure {
address = "VLAN 204 - 10.x.204.0/24"
color = "#F0FFF0"
description = "Infrastructure Services"
IntEdge_A;
IntEdge_B;
DNS_DHCP [description = "DNS/DHCP\nServers"];
}
network To_Core {
address = "VLAN 205"
color = "#B0E0E6"
description = "Core Transit"
IntEdge_A;
IntEdge_B;
}
}
@enduml
Services en général à l'intérieur :
- Contrôleurs réseau sans fil (WLC)
- Proxies Web et filtres de contenu
- Concentrateurs VPN
- Infrastructure DNS/DHCP
- Balanceurs de charge
- Sauter les serveurs / bastion
Module 3: Couche de base
Le Core est l'épine dorsale à grande vitesse qui relie tous les autres modules. Il devrait être optimisé pour:
- Débit maximal
- Latence minimale
- Haute disponibilité
- Simple et rapide
@startuml Core Module
skinparam backgroundColor #FEFEFE
nwdiag {
network From_Internal_Edge {
address = "L3 Routed"
color = "#B0E0E6"
description = "From Internal Edge"
Core_A [description = "Core Switch A\n100G Backbone"];
Core_B [description = "Core Switch B\n100G Backbone"];
}
network Core_Interconnect {
address = "100G+ ISL"
color = "#FFB6C1"
description = "High-Speed Interconnect\nOSPF/IS-IS/BGP"
Core_A;
Core_B;
}
network To_Distribution_1 {
address = "L3 P2P"
color = "#98FB98"
description = "Building A"
Core_A;
Core_B;
Dist_1 [description = "Distribution 1\n(L3 Adjacent)"];
}
network To_Distribution_2 {
address = "L3 P2P"
color = "#DDA0DD"
description = "Building B"
Core_A;
Core_B;
Dist_2 [description = "Distribution 2\n(MCLAG)"];
}
network To_Distribution_3 {
address = "L3 P2P"
color = "#FFDAB9"
description = "Building C"
Core_A;
Core_B;
Dist_3 [description = "Distribution 3\n(MCLAG)"];
}
network To_DC_Border {
address = "L3 Routed"
color = "#87CEEB"
description = "Datacenter"
Core_A;
Core_B;
Border_Leaf [description = "Border Leaf\n(DC Fabric)"];
}
}
@enduml
Principes fondamentaux de conception:
- Aucun dispositif utilisateur final directement attaché
- L3 routage entre les interrupteurs du cœur (pas d'arbre de calibrage)
- Multipathe à coût égal (ECMP) pour la distribution des charges
- Protocoles de convergence rapide
Module 4 : Calque de distribution
La couche Distribution regroupe les commutateurs d'accès et applique la politique. C'est là que les choix de conception de réseau ont le plus de variations en fonction des exigences du site.
Variations des niveaux de distribution
Variation 1: L3 adjacente (accès routé)
Dans cette conception, les couches de distribution et d'accès sontL3 adjacent—chaque commutateur d'accès dispose de son propre sous-réseau IP et de routes directes vers la distribution.
@startuml Distribution Variation 1 - L3 Adjacent
skinparam backgroundColor #FEFEFE
nwdiag {
network From_Core {
address = "L3 ECMP"
color = "#B0E0E6"
description = "From Core Layer"
Dist_A [description = "Distribution A\n(L3 Router)"];
Dist_B [description = "Distribution B\n(L3 Router)"];
}
network Dist_iBGP {
address = "iBGP Peering"
color = "#DDA0DD"
description = "ECMP/iBGP"
Dist_A;
Dist_B;
}
network P2P_Access_1 {
address = "10.x.2.0/30"
color = "#98FB98"
description = "L3 Point-to-Point"
Dist_A;
Dist_B;
Access_1 [description = "Access SW-1\n(L3 Gateway)"];
}
network P2P_Access_2 {
address = "10.x.2.8/30"
color = "#FFE4B5"
description = "L3 Point-to-Point"
Dist_A;
Dist_B;
Access_2 [description = "Access SW-2\n(L3 Gateway)"];
}
network P2P_Access_3 {
address = "10.x.2.16/30"
color = "#FFDAB9"
description = "L3 Point-to-Point"
Dist_A;
Dist_B;
Access_3 [description = "Access SW-3\n(L3 Gateway)"];
}
network User_VLAN_1 {
address = "10.x.32.0/24"
color = "#F0FFF0"
description = "Users - SW1"
Access_1;
Laptop_1 [description = "Laptops"];
Phone_1 [description = "Phones"];
}
network User_VLAN_2 {
address = "10.x.33.0/24"
color = "#FFF0F5"
description = "Users - SW2"
Access_2;
Laptop_2 [description = "Laptops"];
Camera_2 [description = "Cameras"];
}
network User_VLAN_3 {
address = "10.x.34.0/24"
color = "#F5FFFA"
description = "Users - SW3"
Access_3;
Laptop_3 [description = "Workstations"];
Camera_3 [description = "Cameras"];
}
}
@enduml
Exemple d'attribution de sous-réseau :
Lien Sous-réseau - C'est quoi Répartition dans le noyau 10.x.1.0/30, 10.x.1.4/30 Dist-A à l'accès -1 Dist-B à l'accès -1 Accès-1 Utilisateur VLAN L'utilisateur d'accès-2
Avantages:
- Isolation du domaine de diffusion à chaque commutateur d'accès
- Dépannage simplifié (questions contenues dans le sous-réseau)
- Pas d'arbre entre la distribution et l'accès
- Résumation possible à la couche de distribution
Considérations:
- Nécessite des commutateurs d'accès compatibles avec L3
- Configuration du relais DHCP sur chaque commutateur d'accès
- Gestion plus complexe des adresses IP
Variation 2: MCLAG avec les circuits LACP
Cette conception utiliseAgrégation des liens multi-chaînes (CMLAG)à la distribution avecObligations LACPpour accéder à des interrupteurs transportant des VLANs.
Terminologie des fournisseurs: Cisco appelle ce vPC (Virtual Port Channel), Arista utilise MLAG, Juniper utilise MC-LAG, et HPE/Aruba utilise VSX. Le comportement fonctionnel est similaire chez les fournisseurs.
@startuml Distribution Variation 2 - MCLAG
skinparam backgroundColor #FEFEFE
nwdiag {
network From_Core {
address = "L3 Routed Uplinks"
color = "#B0E0E6"
description = "From Core Layer"
Dist_A [description = "Distribution A\n(MCLAG Member)"];
Dist_B [description = "Distribution B\n(MCLAG Member)"];
}
network MCLAG_Peer_Link {
address = "Peer-Link"
color = "#FFB6C1"
description = "MCLAG/vPC Peer-Link"
Dist_A;
Dist_B;
}
network LACP_To_Access {
address = "Po1 - LACP Trunk"
color = "#DDA0DD"
description = "VLANs 100,110,120 Trunked"
Dist_A;
Dist_B;
Access_1 [description = "Access SW-1\n(L2 Switch)"];
}
network Data_VLAN {
address = "VLAN 100 - 10.x.32.0/24"
color = "#98FB98"
description = "Data VLAN"
Access_1;
Laptops [description = "Laptops\nWorkstations"];
}
network Voice_VLAN {
address = "VLAN 110 - 10.x.64.0/24"
color = "#FFE4B5"
description = "Voice VLAN"
Access_1;
Phones [description = "IP Phones"];
}
network Security_VLAN {
address = "VLAN 120 - 10.x.96.0/24"
color = "#FFDAB9"
description = "Security VLAN"
Access_1;
Cameras [description = "Cameras\nBadge Readers"];
}
}
@enduml
Placement de l'IVS (VRRP VIP sur la paire de distribution):
- VLAN 100: 10.x.32.1/24
- VLAN 110: 10.x.64.1/24
- VLAN 120: 10.x.96.1/24
Configuration du coffre VLAN :
Destination C'est pas vrai Po1 (MCLAG) (MCLAG) Accès au Po3 (MCLAG) (non utilisé)
Avantages du MCLAG :
- Transaction active (les deux liaisons montantes utilisées)
- Défaillance de la sous-seconde
- Changement logique unique du point de vue de l'accès
- Pas de blocage des arbres
Considérations:
- Les VLAN couvrent plusieurs commutateurs d'accès (domaines de diffusion plus grands)
- MCLAG peer-link peut devenir un goulot d'étranglement
- STP toujours nécessaire comme sauvegarde de prévention de boucle
Variation 3: Feuille de frontière pour le centre de données spinal/leaf
Dans les environnements datacenter, la couche de distribution devient laFeuille frontièreconnecter le tissu colonne vertébrale/feuille au reste du réseau d'entreprise.
@startuml Distribution Variation 3 - Border Leaf Datacenter
skinparam backgroundColor #FEFEFE
nwdiag {
network Enterprise_Core {
address = "L3 Routed (eBGP/OSPF)"
color = "#B0E0E6"
description = "From Enterprise Core"
Border_A [description = "Border Leaf A\nVXLAN Gateway"];
Border_B [description = "Border Leaf B\nVXLAN Gateway"];
}
network Border_EVPN {
address = "VXLAN EVPN"
color = "#DDA0DD"
description = "EVPN Type-5 Routes"
Border_A;
Border_B;
Spine_1 [description = "Spine 1"];
Spine_2 [description = "Spine 2"];
}
network Spine_Fabric {
address = "eBGP Underlay"
color = "#FFB6C1"
description = "Spine Layer"
Spine_1;
Spine_2;
}
network Leaf_Tier_1 {
address = "VTEP"
color = "#98FB98"
description = "Compute Rack 1"
Spine_1;
Spine_2;
Leaf_1 [description = "Leaf 1"];
Leaf_2 [description = "Leaf 2"];
}
network Leaf_Tier_2 {
address = "VTEP"
color = "#FFE4B5"
description = "Storage/Services"
Spine_1;
Spine_2;
Leaf_3 [description = "Leaf 3"];
Leaf_4 [description = "Leaf 4"];
}
network Server_Rack_1 {
address = "VNI 10001"
color = "#F0FFF0"
description = "Compute Servers"
Leaf_1;
Leaf_2;
Servers_1 [description = "Rack Servers\nVMs/Containers"];
}
network Storage_Network {
address = "VNI 10002"
color = "#FFDAB9"
description = "Storage Arrays"
Leaf_3;
Storage [description = "SAN/NAS\nStorage"];
}
network Voice_Services {
address = "VNI 10003"
color = "#E6E6FA"
description = "UC Systems"
Leaf_4;
PBX [description = "PBX/UC\nSystems"];
}
}
@enduml
Détails du tissu Datacenter :
Composante Fonction - Oui AutresSous-coucheEBGP (ASN par interrupteur) ou OSPF AutresCouvertureVXLAN avec plan de contrôle EVPN AutresFeuille frontièrePasserelle VXLAN-to-VLAN, Routes externes, Inter-VRF routage AutresCharges de travail des feuillesCalcul, stockage, voix/UC, infrastructure
Avantages:
- Échelle horizontale massive (ajouter les paires de feuilles au besoin)
- Architecture de tissu sans blocage
- Multi-tentes via VRF/VNI
- Schémas optimaux de trafic est-ouest
Considérations:
- La complexité opérationnelle de VXLAN/EVPN
- Compétences spécialisées requises
- Frais d'équipement plus élevés
Module 5: Couche d'accès
La couche Access est l'endroit où se connectent les périphériques finaux. Quelle que soit la topologie de la distribution, les commutateurs d'accès fournissent :
@startuml Access Layer Module
skinparam backgroundColor #FEFEFE
nwdiag {
network Distribution_Uplink {
address = "L3 or LACP Trunk"
color = "#B0E0E6"
description = "Uplinks to Distribution"
Access_SW [description = "48-Port Access Switch\nPoE+ Capable"];
}
network Data_VLAN {
address = "VLAN 100 - Ports 1-8, 25-32"
color = "#98FB98"
description = "Data VLAN"
Access_SW;
Laptops [description = "Laptops\nWorkstations"];
}
network Voice_VLAN {
address = "VLAN 110 - Ports 9-16"
color = "#FFE4B5"
description = "Voice VLAN"
Access_SW;
Phones [description = "IP Phones"];
}
network Camera_VLAN {
address = "VLAN 120 - Ports 17-24"
color = "#FFDAB9"
description = "Security VLAN"
Access_SW;
Cameras [description = "IP Cameras"];
}
network Wireless_VLAN {
address = "VLAN 130 - Ports 33-40"
color = "#DDA0DD"
description = "Wireless AP VLAN"
Access_SW;
APs [description = "Wireless APs"];
}
network Mgmt_VLAN {
address = "VLAN 999 - Ports 41-44"
color = "#F0FFF0"
description = "Management VLAN"
Access_SW;
}
}
@enduml
Caractéristiques de sécurité du calque d'accès :
- 802.1X / Authentification MAB
- Affectation dynamique du VLAN
- Sécurité portuaire
- DHCP snooping
- Contrôle dynamique ARP
- Protection des sources IP
Topologie modulaire complète
Voici comment tous les modules se connectent pour former un réseau d'entreprise complet:
@startuml Complete Modular Network Topology
skinparam backgroundColor #FEFEFE
title Complete Enterprise Modular Network
nwdiag {
internet [shape = cloud, description = "Internet/WAN"];
network Internet_Edge {
address = "Module 1"
color = "#FFE4E1"
description = "INTERNET EDGE MODULE"
internet;
ISP_A [description = "ISP-A"];
ISP_B [description = "ISP-B"];
MPLS [description = "MPLS"];
Edge_RTR [description = "Edge Router"];
FW_A [description = "FW-A"];
FW_B [description = "FW-B"];
}
network Internal_Edge {
address = "Module 2"
color = "#E6E6FA"
description = "INTERNAL EDGE / DMZ MODULE"
FW_A;
FW_B;
IntEdge_A [description = "IntEdge-A"];
IntEdge_B [description = "IntEdge-B"];
WLC [description = "WLC"];
Proxy [description = "Proxy"];
VPN [description = "VPN"];
DNS [description = "DNS/DHCP"];
}
network Core {
address = "Module 3"
color = "#B0E0E6"
description = "CORE MODULE"
IntEdge_A;
IntEdge_B;
Core_A [description = "Core-A"];
Core_B [description = "Core-B"];
}
network Distribution_L3 {
address = "Variation 1"
color = "#98FB98"
description = "DIST - L3 Adjacent\n(Building A)"
Core_A;
Core_B;
Dist_1A [description = "Dist-1A"];
Dist_1B [description = "Dist-1B"];
Access_L3 [description = "Access\n(L3)"];
}
network Distribution_MCLAG {
address = "Variation 2"
color = "#DDA0DD"
description = "DIST - MCLAG\n(Building B)"
Core_A;
Core_B;
Dist_2A [description = "Dist-2A"];
Dist_2B [description = "Dist-2B"];
Access_L2 [description = "Access\n(L2)"];
}
network Datacenter {
address = "Variation 3"
color = "#FFE4B5"
description = "DATACENTER\n(Spine/Leaf)"
Core_A;
Core_B;
Border_Leaf [description = "Border\nLeaf"];
Spine [description = "Spine"];
Leaf [description = "Leaf"];
Servers [description = "Servers\nStorage\nPBX"];
}
network Campus_Users {
address = "End Devices"
color = "#F0FFF0"
description = "Campus Users"
Access_L3;
Access_L2;
Users [description = "Laptops\nPhones\nCameras"];
}
}
@enduml
Stratégie d'adressage IP avec Isolation VRF
Le défi du multisegment, la conception multi-VRF
Lorsque les réseaux grandissent pour inclure plusieurs zones de sécurité, unités d'affaires ou limites de conformité,VRF (acheminement et transmission virtuels)fournit l'isolement de la table de route. Cependant, l'extension des FRV à plusieurs niveaux ajoute de la complexité :
- Chaque houblon L3 nécessite un sous-réseau de transit
- Les sous-interfaces multiplient la complexité de configuration
- Dépannage s'étend sur plusieurs tables de routage
- La documentation doit suivre l'adhésion au VRF à tous les niveaux
Stratégie du schéma sous-net
Un schéma sous-net bien conçu rend les modèles reconnaissables, réduisant la charge cognitive et les erreurs de configuration.
Exemple : Grand site de fabrication (10.0.0.0/13)
Répartition du site :10.0.0.0/13 (Site de fabrication Alpha) - 524 286 hôtes utilisables
@startuml VRF Subnet Schema
skinparam backgroundColor #FEFEFE
title Large Site VRF Allocation Schema (10.0.0.0/13)
nwdiag {
network Corporate_VRF {
address = "VRF: CORPORATE\n10.0.0.0/17"
color = "#98FB98"
description = "Production Users"
Corp_Transit [description = "Transit\n10.0.0.0/23"];
Corp_Users [description = "Users\n10.0.32.0/19"];
Corp_Voice [description = "Voice\n10.0.64.0/19"];
Corp_Wireless [description = "Wireless\n10.0.96.0/19"];
Corp_Server [description = "Servers\n10.0.112.0/20"];
}
network Guest_VRF {
address = "VRF: GUEST\n10.1.0.0/17"
color = "#FFE4B5"
description = "Visitor Network"
Guest_Transit [description = "Transit\n10.1.0.0/23"];
Guest_Users [description = "Users\n10.1.32.0/19"];
}
network Security_VRF {
address = "VRF: SECURITY\n10.2.0.0/17"
color = "#FFDAB9"
description = "Physical Security"
Sec_Transit [description = "Transit\n10.2.0.0/23"];
Sec_Camera [description = "Cameras\n10.2.32.0/19"];
Sec_Badge [description = "Badge Readers\n10.2.64.0/19"];
Sec_NVR [description = "NVR/VMS\n10.2.96.0/20"];
}
network IOT_VRF {
address = "VRF: IOT\n10.3.0.0/17"
color = "#E6E6FA"
description = "Manufacturing OT"
IOT_Transit [description = "Transit\n10.3.0.0/23"];
IOT_PLC [description = "PLCs\n10.3.32.0/19"];
IOT_HMI [description = "HMIs\n10.3.64.0/19"];
IOT_SCADA [description = "SCADA\n10.3.96.0/20"];
}
}
@enduml
Détail du segment de transit (10.0.0.0/23 - 510 IP utilisables):
Description du lien -- -- -- -- -- -- -- 10,0,0,0/30,0 FW-Inside → Édifice interne 10.0.0.4/30.00 FW-Inside → Internal-Edge-B 10.0.0.8/30:00 Interne-Edge-A → Core-A 10.0.0.12/30:00 Interne-Edge-A → Core-B 10.0.0.16/30:00 Interne-Edge-B → Core-A 10.0.0.20/30:00 Interne-Edge-B → Core-B 10.0.0.24/30?Core-A → Distribution-A 10.0.0.28/30 10.0.0.32/30.00 Core-B → Distribution-A 10.0.0.36/30: Core-B → Distribution-B 10.0.0.40/30.00 Distribution-A → Accès-SW-1.00 Répartition-B → Accès-SW-1 (Pattern continue)
Remarque:Les sous-réseaux /31 (RFC 3021) peuvent également être utilisés pour les liens point à point, en conservant l'espace d'adresse.
Avantages liés à la reconnaissance du modèle
Lorsque les modèles de sous-réseau sont cohérents entre les FRV:
Ce que vous savez Ce que vous pouvez déduire - Oui Lien de transit dans l'utilisation de l'entreprise 10.0.0.40/30 Les utilisateurs d'Access-SW-5 sont sur 10.0.36.0/24 Le site Alpha est 10.0.0.0/13
Cela permet aux ingénieurs:
- Prévoir les adresses IP sans consulter la documentation
- Reconnaître immédiatement les sous-réseaux mal configurés
- Créer des modèles d'automatisation qui fonctionnent sur les VRF
- Former le nouveau personnel sur le modèle, pas la mémorisation
Modèles de taille du site
Petit modèle de site (bureau de la succursale)
@startuml Small Site Template
skinparam backgroundColor #FEFEFE
title Small Site Template (< 50 users)
nwdiag {
internet [shape = cloud];
network WAN {
color = "#FFE4E1"
description = "ISP/MPLS Circuit"
internet;
UTM [description = "UTM/SD-WAN\nAppliance\n(Router+FW+VPN+WLC)"];
}
network LAN {
address = "10.100.x.0/24"
color = "#98FB98"
description = "Single Subnet"
UTM;
Access [description = "Access Switch\n(or UTM ports)"];
}
network Endpoints {
color = "#F0FFF0"
description = "End Devices"
Access;
AP [description = "WiFi AP"];
Users [description = "Users"];
Phones [description = "Phones"];
}
}
@enduml
Petits plans de site Remarques :
- Conception supprimée: Toutes les fonctions dans le matériel minimal
- Sous-net: /24 ou /23 par site
- Exemple: 10.100.1.0/24 (Site 001)
Modèle de site moyen (bureau régional)
@startuml Medium Site Template
skinparam backgroundColor #FEFEFE
title Medium Site Template (50-500 users)
nwdiag {
internet [shape = cloud];
network WAN_Edge {
color = "#FFE4E1"
description = "Internet Edge"
internet;
ISP_A [description = "ISP-A"];
ISP_B [description = "ISP-B/MPLS"];
Edge_RTR [description = "Edge Router"];
}
network Firewall_Tier {
color = "#FFDAB9"
description = "Firewall HA Pair"
Edge_RTR;
FW_A [description = "FW-A"];
FW_B [description = "FW-B"];
}
network Distribution {
address = "10.50.x.0/21"
color = "#DDA0DD"
description = "MCLAG Distribution\n(Dist/Core Combined)"
FW_A;
FW_B;
Dist_A [description = "Dist-A"];
Dist_B [description = "Dist-B"];
}
network Access_Tier {
color = "#98FB98"
description = "Access Switches (LACP)"
Dist_A;
Dist_B;
Acc1 [description = "Acc1"];
Acc2 [description = "Acc2"];
Acc3 [description = "Acc3"];
Acc4 [description = "Acc4"];
Acc5 [description = "Acc5"];
}
network Users {
color = "#F0FFF0"
description = "End Devices"
Acc1;
Acc2;
Acc3;
Acc4;
Acc5;
Endpoints [description = "Laptops/Phones\nCameras/APs"];
}
}
@enduml
Conception moyenne du site Remarques :
- Modularité partielle: Edge et niveaux d'accès distincts
- Sous-net: /21 par site (2 046 IP)
- Exemple: 10.50.0.0/21 (Site 050)
Grand modèle de site (Siège/Campus)
@startuml Large Site Template
skinparam backgroundColor #FEFEFE
title Large Site Template (500+ users)
nwdiag {
internet [shape = cloud];
network Internet_Edge {
color = "#FFE4E1"
description = "INTERNET EDGE MODULE"
internet;
ISP_A [description = "ISP-A"];
ISP_B [description = "ISP-B"];
MPLS [description = "MPLS"];
Edge_RTR [description = "Edge-RTR"];
FW_A [description = "FW-A"];
FW_B [description = "FW-B"];
}
network Internal_Edge {
color = "#E6E6FA"
description = "INTERNAL EDGE MODULE"
FW_A;
FW_B;
IntEdge_A [description = "IntEdge-A"];
IntEdge_B [description = "IntEdge-B"];
WLC [description = "WLC"];
Proxy [description = "Proxy"];
VPN [description = "VPN"];
DNS [description = "DNS"];
}
network Core {
color = "#B0E0E6"
description = "CORE MODULE"
IntEdge_A;
IntEdge_B;
Core_A [description = "Core-A"];
Core_B [description = "Core-B"];
}
network Dist_Var1 {
color = "#98FB98"
description = "L3 Adjacent"
Core_A;
Core_B;
Dist_1 [description = "Dist-1"];
Access_1 [description = "Access"];
}
network Dist_Var2 {
color = "#DDA0DD"
description = "MCLAG Trunk"
Core_A;
Core_B;
Dist_2 [description = "Dist-2"];
Access_2 [description = "Access"];
}
network Dist_Var3 {
color = "#FFE4B5"
description = "MCLAG Trunk"
Core_A;
Core_B;
Dist_3 [description = "Dist-3"];
Access_3 [description = "Access"];
}
network Datacenter {
color = "#87CEEB"
description = "SPINE/LEAF DC"
Core_A;
Core_B;
Border [description = "Border-Leaf"];
Spine [description = "Spine"];
Leaf [description = "Leaf"];
Servers [description = "Servers"];
}
}
@enduml
Grandes notes de conception du site :
- Modularité complète: Tous les niveaux physiquement séparés
- Sous-net: /13 à /15 par site (sur la base du nombre de VRF)
- Exemple: 10.0.0.0/13 (AC) - 524 286 IP
Segmentation VRF et L3 : avantages et complexité
Avantages de la segmentation L3 avec sous-interfaces
- Isolation de sécurité: Le trafic entre VRF doit traverser un pare-feu ou un dispositif de police
- Containment au rayonnement de souffle: segment compromis ne peut pas atteindre directement d'autres VRF
- Limites de conformité: réseaux PCI, HIPAA ou OT dans des domaines de routage distincts
- Génie du trafic: Différentes politiques de routage par VRF
L'échange de complexité
Lorsque les segments doivent s'étendre à plusieurs niveaux, chaque limite L3 ajoute des frais généraux de configuration :
@startuml Multi-VRF Path Through Tiers
skinparam backgroundColor #FEFEFE
title Multi-VRF Traffic Path: Camera to NVR
nwdiag {
network Camera_Segment {
address = "VLAN 120\n10.2.36.0/24"
color = "#FFDAB9"
description = "VRF: SECURITY"
Camera [description = "Camera"];
Access_SW [description = "Access-SW\nSub-int: 10.2.0.40/30"];
}
network Access_to_Dist {
address = "10.2.0.40/30"
color = "#DDA0DD"
description = "VRF: SECURITY"
Access_SW;
Distribution [description = "Distribution\nSub-int: 10.2.0.24/30"];
}
network Dist_to_Core {
address = "10.2.0.24/30"
color = "#B0E0E6"
description = "VRF: SECURITY"
Distribution;
Core [description = "Core\nSub-int: 10.2.0.8/30"];
}
network Core_to_IntEdge {
address = "10.2.0.8/30"
color = "#E6E6FA"
description = "VRF: SECURITY"
Core;
Internal_Edge [description = "Internal-Edge\nSub-int: 10.2.0.0/30"];
}
network IntEdge_to_FW {
address = "10.2.0.0/30"
color = "#FFE4E1"
description = "VRF: SECURITY"
Internal_Edge;
Firewall [description = "Firewall\nInter-VRF Policy"];
}
network DC_Path {
address = "VXLAN/EVPN"
color = "#87CEEB"
description = "Datacenter Fabric"
Firewall;
Border_Leaf [description = "Border-Leaf"];
Spine [description = "Spine"];
Leaf [description = "Leaf"];
NVR [description = "NVR"];
}
}
@enduml
Configuration Overhead :
- 5 sous-interfaces par VRF par chemin
- 4 VRF × 5 sous-ints = 20 sous-interfaces par interrupteur
- Adjacences du protocole d'acheminement dans chaque VRF
- Règles de tracé ou de pare-feu pour le trafic inter-VRF
Stratégies d'atténuation
- Nombre limite de VRF: Créer uniquement des VRF pour de véritables exigences d'isolement
- Centraliser le routage inter-VRF: Point unique de politique du pare-feu vs. distribué
- Utiliser VXLAN/EVPN: La superposition réduit l'étalement de la sous-interface physique
- Fourniture automatique: Les modèles assurent une configuration cohérente
- Documenter le modèle: Une fois appris, les modèles sont plus rapides que la recherche
Résumé: Construire un réseau évolutif
L'objectif de la conception modulaire du réseau est de créermodèle répétablequi permet:
Sites de l'échelle C'est quoi, ça Petites 10 000+ Résorption UTM + interrupteur simple, 24 par site Moyenne $ 1 000 + $ Edge + MCLAG distribution + accès, /21 par site Grandes pièces 100+=1 (Edge, Edge Interne, Core, Variantes de distribution, Tissu DC), 13/15 par site
Prises en charge des clés
- Les modules créent des limites: Chaque module a un but et une interface définis
- Les motifs permettent l'échelle: La même conception à chaque site réduit la formation et les erreurs
- Les FRV assurent l'isolement: Mais ajouter la complexité de configuration à chaque niveau
- La matière des schémas subnet: L'adressage prévisible réduit la charge cognitive
- Répartition selon les besoins: L3 adjacent, MCLAG/LACP, ou colonne vertébrale/feuille
- Taille correcte pour le site: N'exagérez pas les petits sites
En établissant ces modèles et en les appliquant de façon cohérente, les organisations peuvent créer des réseaux qui s'étendent d'une seule succursale à une entreprise mondiale, tout en maintenant la simplicité opérationnelle et la sécurité.
Version 2.0 de l'article Publié le 2026-02-02-