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

  1. Isolation de sécurité: Le trafic entre VRF doit traverser un pare-feu ou un dispositif de police
  2. Containment au rayonnement de souffle: segment compromis ne peut pas atteindre directement d'autres VRF
  3. Limites de conformité: réseaux PCI, HIPAA ou OT dans des domaines de routage distincts
  4. 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

  1. Nombre limite de VRF: Créer uniquement des VRF pour de véritables exigences d'isolement
  2. Centraliser le routage inter-VRF: Point unique de politique du pare-feu vs. distribué
  3. Utiliser VXLAN/EVPN: La superposition réduit l'étalement de la sous-interface physique
  4. Fourniture automatique: Les modèles assurent une configuration cohérente
  5. 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

  1. Les modules créent des limites: Chaque module a un but et une interface définis
  2. Les motifs permettent l'échelle: La même conception à chaque site réduit la formation et les erreurs
  3. Les FRV assurent l'isolement: Mais ajouter la complexité de configuration à chaque niveau
  4. La matière des schémas subnet: L'adressage prévisible réduit la charge cognitive
  5. Répartition selon les besoins: L3 adjacent, MCLAG/LACP, ou colonne vertébrale/feuille
  6. 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-