Modular Network Design: A Scalable Architecture Framework

Modulares Netzwerkdesign: Ein skalierbarer Architekturrahmen

Einführung in modulares Netzwerkdesign

Netzwerk-Modularität ist die Praxis, Netzwerke als vernetzte, zielgerichtete Segmente zu gestalten, anstatt monolithische Strukturen. Jedes Modul dient einer bestimmten Funktion, hat definierte Grenzen und verbindet sich über gut verstandene Schnittstellen mit benachbarten Modulen. Dieser Ansatz verwandelt Netzwerkdesign aus einer Kunst in eine wiederholbare Ingenieurdisziplin.

Die Kraft der Modularität liegt in ihrer Fähigkeit zu schaffenvorhersehbare musterdie sich durchweg über den gesamten infrastruktur-fußabdruck einer organisation anwenden lässt – ob es sich um zehntausende kleiner standorte, tausende mittlerer standorte oder hunderte von großen unternehmens-campuses handelt.

Warum Modularität

Vorteile über alle Netzwerkwaagen

| Vorteile | Small Sites | Medium Sites | Large Sites | .. |Vereinfachte Fehlerbehebung| Einzelingenieur kann ganze Topologie verstehen | Teams können sich auf Modul | Klare Eskalationswege zwischen Modulbesitzern | |Vorhersehbare SkalierungFügen Sie Module nach Bedarf hinzu | Clone-erprobte Muster | Erweitern ohne Umgestaltung | |Kontinuierliche Sicherheit| Gleiche Politiken überall | Gleiche Compliance-Bewahrung | Zulässige Grenzen | |Betriebseffizienz| Vorlagebasierter Einsatz | Automatisierte Bereitstellung | Standardisiertes Änderungsmanagement | |Kostenkontrolle| Rechte Größe jedes Modul | Bulk Einkauf nach Modultyp | Lifecycle Management by tier |

Die Scaling Challenge

Organisationen bleiben selten statisch. Ein modulares Design muss unterbringen:

  • 10.000+ kleine standorte: Zweigniederlassungen, Einzelhandelsgeschäfte, Fernabfertigung
  • 1.000+ mittlere standorte: Regionalbüros, Vertriebszentren, Fertigungsanlagen
  • 100+ große standorte: Hauptsitze, Rechenzentren, Hauptlager

Ohne Modularität wird jede Seite zu einer einzigartigen Schneeflocke, die benutzerdefinierte Dokumentation, spezialisierte Ausbildung und einmalige Fehlersuche erfordert. Mit Modularität kann ein Ingenieur, der das Muster versteht, an jedem Ort effektiv arbeiten.


Kernnetzwerkmodule

Modul 1: Internet Edge Segment

Das Internet Edge ist, wo Ihre Organisation die Außenwelt trifft. Dieses Modul enthält:

  • WAN/Internetkreise(MPLS, DIA, Breitband, LTE/5G)
  • Randrouten(BGP-Peering, WAN-Abbruch)
  • Firewalls(Staatliche Inspektion, NAT, VPN-Kündigung)
  • VLAN Segmentierungfür funktionstrennung
@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

Schlüsselprinzipien:

  • Redundante Schaltungen verschiedener Anbieter
  • Firewall-Hochverfügbarkeitspaare
  • Klare VLAN Grenzen zwischen Vertrauenszonen
  • L3 Punkt-zu-Punkt-Verbindungen zwischen Router und Firewall

Modul 2: Innenrand / DMZ Tierarzneimittel

Für mittlere und große Standorte bietet der Interne Rand eine Aggregationsschicht für Dienste, die eine kontrollierte Exposition erfordern oder als Übergangsstellen zwischen Sicherheitszonen dienen.

@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

Dienstleistungen Typischerweise im Innenrand:

  • Wireless LAN Controller (WLC)
  • Web-Proxis und Inhaltsfilter
  • VPN-Konzentratoren
  • DNS/DHCP-Infrastruktur
  • Lastausgleich
  • Jump Hosts / Bastion Server

Modul 3: Kernebene

Der Core ist das schnelle Rückgrat, das alle anderen Module miteinander verbindet. Es sollte optimiert werden für:

  • Maximaler Durchsatz
  • Mindestlatenz
  • Hohe Verfügbarkeit
  • Einfache, schnelle Weiterleitung
@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

Kernprinzipien:

  • Keine direkt angebrachten Endverbrauchereinrichtungen
  • L3-Routing zwischen Kernschaltern (kein Spannbaum)
  • Kostengleicher Mehrweg (ECMP) für die Lastverteilung
  • Schnelle Konvergenzprotokolle

Modul 4: Verteilungsebene

Die Verteilungsschicht aggregiert Zugriff schaltet und durchsetzt Politik. Hier haben Netzwerkdesign-Auswahlen die meisten Variationen basierend auf Standortanforderungen.


Verteilung der Tiervariationen

Variation 1: L3 Adjacent (Routed Access)

Bei dieser Ausgestaltung sind die Verteilungs- und ZugriffsschichtenL3 benachbart— jeder Zugriffsschalter hat ein eigenes IP-Subnetz und Routen direkt zur Verteilung.

@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

Subnet Allocation Beispiel:

| Link | Subnet | |------------------- | Verteilung auf Kern | 10.x.1.0/30, 10.x.1.4/30 | | Dist-A zu Access-1 | 10.x.2.0/30 | | Dist-B zu Access-1 | 10.x.2.4/30 | | Access-1 Benutzer VLAN | 10.x.32.0/24 | | Access-2 Benutzer VLAN | 10.x.33.0/24 |

Vorteile:

  • Broadcast-Domänenisolation bei jedem Zugriffsschalter
  • Vereinfachte Fehlerbehebung (im Subnetz enthaltene Ausgaben)
  • Kein überspannender Baum zwischen Verteilung und Zugriff
  • Summarisierung möglich bei Verteilungsschicht

Erwägungen:

  • Erfordert L3-fähige Zugangsschalter
  • DHCP-Relaiskonfiguration auf jedem Zugriffsschalter
  • Mehr komplexe IP-Adressenverwaltung

Variation 2: MCLAG mit LACP Trunks

Dieses Design verwendetMulti-Chassis Link Aggregation (MCLAG)bei verteilung mitLACP-Anleihenzutrittsschalter mit angeschlossenen VLANs.

Terminologie des Verkäufers: Cisco nennt diesen vPC (Virtual Port Channel), Arista verwendet MLAG, Juniper verwendet MC-LAG und HPE/Aruba verwendet VSX. Das funktionale Verhalten ist ähnlich gegenüber Anbietern.

@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

SVI Platzierung (VRRP VIP auf Verteilungspaar):

  • VLAN 100: 10.x.32.1/24
  • VLAN 110: 10.x.64.1/24
  • VLAN 120: 10.x.96.1/24

VLAN Trunk Konfiguration:

| Port-Channel | VLANs | Reiseziel | ------------------------ | Po1 (MCLAG) | 100,110,120 | Access-1 | | Po2 (MCLAG) | 100,110,120,130 | Zugang-2 | | Po3 (MCLAG) | 100,110 | Zugang-3 | | Native VLAN 999 999 (ungenutzt) | — |

MCLAG Vorteile:

  • Aktiv-aktive Weiterleitung (beide Uplinks verwendet)
  • Subsekunden-Versagen
  • Einfacher logischer Schalter aus der Zugriffsperspektive
  • Kein überspannender Baum blockiert

Erwägungen:

  • VLANs überspannen mehrere Zugriffsschalter (größere Sendedomänen)
  • MCLAG Peerlink kann Engpass werden
  • STP noch benötigt als Schleifensicherung Backup

Variation 3: Bordblatt für Spine/Leaf Datacenter

In Rechenzentren wird die Verteilungsschicht zumGrenzblattverbinden der wirbelsäule/blattgewebe mit dem rest des unternehmensnetzwerks.

@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

Datacenter Stoff Details:

| Komponente | Funktion | |------------------------ |Untergang| eBGP (ASN pro Schalter) oder OSPF | |Overlay| VXLAN mit EVPN Steuerebene | |Grenzblatt| VXLAN-zu-VLAN Gateway, Externe Routen, Inter-VRF Routing | |Blattlasten| Compute, Storage, Voice/UC, Infrastructure |

Vorteile:

  • Massive horizontale Skala (add Blattpaare nach Bedarf)
  • Nichtblockierende Stoffarchitektur
  • Multi-Tenancy über VRF/VNI
  • Optimale ostwestliche Verkehrsmuster

Erwägungen:

  • Operationelle Komplexität von VXLAN/EVPN
  • Spezialisierte Fähigkeiten erforderlich
  • Höhere Gerätekosten

Modul 5: Zugriffsebene

Die Access-Schicht ist, wo Endgeräte verbinden. Unabhängig von der Verteilungstopologie bieten Zugriffsschalter:

@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

Access Layer Security Features:

  • 802.1X / MAB-Authentifizierung
  • Dynamische VLAN-Beauftragung
  • Hafensicherheit
  • DHCP-Schleifen
  • Dynamische ARP-Prüfung
  • IP Source Guard

Modulare Topologie

So verbinden sich alle Module zu einem kompletten Unternehmensnetzwerk:

@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

IP Adressierung Strategie mit VRF Isolation

Die Herausforderung von Multi-Segment, Multi-VRF Design

Wenn Netzwerke wachsen, um mehrere Sicherheitszonen, Geschäftseinheiten oder Compliance-Grenzen einschließen,VRF (Virtual Routing und Forwarding)stellt Routentabellenisolation bereit. Die Erweiterung von VRFs durch mehrere Ebenen bringt jedoch Komplexität:

  • Jeder L3-Hop erfordert ein Transit-Subnet
  • Teilbereiche multiplizieren die Komplexität der Konfiguration
  • Fehlerbehebung erstreckt sich über mehrere Routing-Tabellen
  • Die Dokumentation muss die VRF-Mitgliedschaft auf jeder Ebene verfolgen

Subnet Schema Strategie

Ein gut gestaltetes Subnet-Schema macht Muster erkennbar, wodurch kognitive Last- und Konfigurationsfehler reduziert werden.

Beispiel: Große Fertigungsstätte (10.0.0.0/13)

Standortvergabe:10.0.0.0/13 (Hersteller Site Alpha) - 524.286 nutzbare Gastgeber

@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

Transit Segment Detail (10.0.0.0/23 - 510 nutzbare IPs):

| Subnet | Link Beschreibung | |---------------------------- | 10.0.0.0/30 | FW-Inside → Intern-Edge-A | | 10.0.0.4/30 | FW-Inside → Intern-Edge-B | | 10.0.0.8/30 | Intern-Edge-A → Core-A | | 10.0.0.12/30 | Intern-Edge-A → Core-B | | 10.0.0.16/30 | Intern-Edge-B → Core-A | | 10.0.0.20/30 | Intern-Edge-B → Core-B | | 10.0.0.24/30 | Core-A → Distribution-A | | 10.0.0.28/30 | Core-A → Distribution-B | | 10.0.0.32/30 | Core-B → Distribution-A | | 10.0.0.36/30 | Core-B → Distribution-B | | 10.0.0.40/30 | Distribution-A → Access-SW-1 | | 10.0.0.44/30 | Distribution-B → Access-SW-1 | | ... | (Pattern fährt fort) |

Anmerkung:/31 Subnetze (RFC 3021) können auch für Punkt-zu-Punkt-Verbindungen verwendet werden, die den Adressraum konservieren.

Vorteile der Mustererkennung

Wenn Subnet-Muster über VRF konsistent sind:

| Was Sie wissen | Was Sie können Infer | |---------------------------------------- | Transit-Link in Corporate verwendet 10.0.0.40/30 | Gastäquivalent ist 10.1.0.40/30 | | Access-SW-5 Benutzer sind auf 10.0.36.0/24 | Sicherheitskameras auf demselben Schalter sind 10.2.36.0/24 | | Site Alpha ist 10.0.0.0/13 | Site Beta könnte 10.8.0.0/13 |

Dies ermöglicht Ingenieuren:

  • Predict IP-Adressen ohne Beratungsdokumentation
  • Unkonfigurierte Subnetze sofort erkennen
  • Erstellen von Automatisierungsvorlagen, die über VRFs arbeiten
  • Trainieren Sie neue Mitarbeiter auf dem Muster, nicht Erinnerung

Seitengröße Vorlagen

Small Site Template (Branch Office)

@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

Small Site Design Hinweise:

  • Versäumtes Design: Alle Funktionen in minimaler Hardware
  • Subnet: /24 oder /23 pro seite
  • Beispiel: 10.100.1.0/24

Medium Site Template (Regionalbüro)

@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

Medium Site Design Hinweise:

  • Teilweise Modularität: Begrenzte Kanten- und Zugriffsplattformen
  • Subnet: /21 pro Seite (2,046 IPs)
  • Beispiel: 10.50.0.0/21 (Site 050)

Große Website-Vorlage (Hauptsitz/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

Große Site Design Hinweise:

  • Volle Modularität: Alle Zeichner physisch getrennt
  • Subnet: /13 bis /15 pro Seite (basierend auf VRF-Anzahl)
  • Beispiel: 10.0.0.0/13 (HQ) - 524.286 IPs

VRF und L3 Segmentierung: Vorteile und Komplexität

Vorteile der Segmentierung L3 mit Sub-Interfaces

  1. Sicherheitsisolierung: Verkehr zwischen VRF muss eine Firewall oder ein Policy-Gerät durchlaufen
  2. Blast Radius Containment: Ausgeglichenes Segment kann nicht direkt andere VRF erreichen
  3. Compliance Bounding: PCI-, HIPAA- oder OT-Netzwerke in separaten Routing-Domains
  4. Verkehrstechnik: Verschiedene Routing-Politiken pro VRF

The Complexity Tradeoff

Wenn Segmente sich durch mehrere Zeichner erstrecken müssen, fügt jede L3 Begrenzung Konfigurations-Overhead hinzu:

@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

Konfiguration Overhead:

  • 5 Unterbereiche pro VRF pro Pfad
  • 4 VRFs × 5 Sub-ints = 20 Sub-Interfaces pro Schalter
  • Routing Protokoll-Adjacencies in jedem VRF
  • Routen- oder Firewallregeln für Inter-VRF-Verkehr

Mitigationsstrategien

  1. Begrenzung VRF-Anzahl: Nur VRF für echte Isolationsanforderungen erstellen
  2. Zentralisieren inter-VRF Routing: Einheitliche Firewall-Politik
  3. VXLAN/EVPN verwenden: Overlay reduziert physische Unter-Interface-Sprawl
  4. Automate Bereitstellung: Vorlagen sorgen für konsistente Konfiguration
  5. Dokumentieren Sie das Muster: Einmal gelernt, Muster sind schneller als Lookup

Zusammenfassung: Aufbau eines skalierbaren Netzwerkmusters

Ziel des modularen Netzwerkdesigns ist es, einwiederkehrendes musterdas ermöglicht:

| Skala | Websites | Muster | |------------------------ | Small | 10.000+ | Verstrichen UTM + Einzelschalter, /24 pro Seite | | Medium | 1.000+ | Edge + MCLAG Distribution + Zugriff, /21 pro Website | | Large | 100+ | Vollmodul (Edge, Innenrand, Kern, Verteilungsvarianten, DC-Gewebe), /13-/15 pro Aufstellungsort |

Schlüsselanhänger

  1. Module schaffen Grenzen: Jedes Modul hat einen definierten Zweck und eine Schnittstelle
  2. Muster ermöglichen Skala: Gleiches Design an jeder Stelle reduziert Training und Fehler
  3. VRFs bieten Isolation: Fügen Sie jedoch die Konfigurationskomplexität in jeder Ebene hinzu
  4. Subnet Schemas Materie: Vorhersehbare Adressierung reduziert kognitive Belastung
  5. Verteilung variiert je nach Bedarf: L3 benachbart, MCLAG/LACP oder Spine/Blatt
  6. Rechtsgröße für die Website: Nicht über-engineer kleine Aufstellungsorte

Durch die Einrichtung dieser Muster und ihre konsequente Anwendung können Organisationen Netzwerke aufbauen, die von einer einzigen Zweigstelle zu einem globalen Unternehmen skaliert werden – und zwar unter Beibehaltung der betrieblichen Einfachheit und der Sicherheit.


Artikelversion 2.0 | Veröffentlicht 2026-02-02 | Aktualisiert mit PlantUML nwdiag Diagramme