Modular Network Design: A Scalable Architecture Framework

طراحی شبکه استاندارد: چارچوب معماری مقیاس پذیر

مقدمه ای بر طراحی شبکه های مجتمع

ماژولار شبکه عمل طراحی شبکه به عنوان بخش های متصل، هدف ساخته شده به جای ساختارهای تکlithic است. هر ماژول به یک تابع خاص خدمت می کند، مرزهای تعریف شده دارد و به ماژول های مجاور از طریق رابط های به خوبی درک می شود. این رویکرد طراحی شبکه را از یک هنر به یک رشته مهندسی تکراری تبدیل می کند.

قدرت مدولار بودن در توانایی خود برای ایجادالگوهای قابل پیش بینیاین می تواند به طور مداوم در سراسر کل زیرساخت سازمان اعمال شود - چه شامل ده ها هزار سایت کوچک، هزاران سایت متوسط، و یا صدها دانشگاه بزرگ کسب و کار.

چرا صلاحیت اهمیت دارد

مزایای در تمام مقیاس های شبکه

مزایای | سایت های کوچک | سایت های متوسط | سایت های بزرگ | | | | | 😉ساده سازی عیب یابییک مهندس واحد می تواند کل توپولوژی را درک کند، تیم ها می توانند با ماژول ها تخصص داشته باشند: مسیر پیشرفت بین صاحبان ماژول 😉مقیاس پذیری قابل پیش بینیماژول ها را همانطور که لازم است اضافه کنید - الگوهای ثابت شده Clone بدون طراحی مجدد گسترش می یابد 😉امنیت مستمر● سیاست های مشابه در همه جا - وضعیت انطباق یکنواخت - مرزهای قابل حسابرسی 😉کارایی عملیاتی· استقرار مبتنی بر الگو | ارائه خودکار | استاندارد سازی مدیریت تغییر 😉کنترل هزینهاندازه مناسب هر ماژول | خرید فله با نوع ماژول | مدیریت چرخه زندگی توسط لایه |

چالش مقیاس

سازمان ها به ندرت ثابت می مانند. یک طراحی مدولار باید شامل:

  • ۱۰۰۰۰+ سایت کوچکدفاتر شعبه، مکان های خرده فروشی، امکانات از راه دور
  • 1000+ سایتادارات منطقه ای، مراکز توزیع، کارخانه های تولیدی
  • 100+ سایت بزرگسرفصل ها، مراکز داده، دانشگاه های بزرگ

بدون مدولار بودن، هر سایت تبدیل به یک دانه برف منحصر به فرد نیاز به اسناد سفارشی، آموزش تخصصی، و یک عیب یابی. با مدولار بودن، یک مهندس که الگوی را درک می کند می تواند به طور موثر در هر سایت کار کند.


ماژول های شبکه Core

ماژول 1: Internet Edge Segment

اینترنت Edge جایی است که سازمان شما با جهان خارجی ملاقات می کند. این ماژول شامل:

  • مدارهای WAN / اینترنت(MPLS، DIA، پهنای باند، LTE/5G)
  • روترهای Edge(BGP همتا، خاتمه WAN)
  • فایروال ها(بررسی دولتی، NAT، خاتمه VPN)
  • تقسیم بندی VLANبرای جدایی عملکردی
@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

اصول طراحی کلیدی:

  • مدارهای Redundant از ارائه دهندگان متنوع
  • دانلود بازی Firewall High- در دسترس بودن جفت ها
  • مرزهای شفاف VLAN بین مناطق اعتماد
  • لینک های نقطه به نقطه بین روتر و فایروال

ماژول 2: Internal Edge / DMZ درجه

برای سایت های متوسط و بزرگ، Edge داخلی یک لایه تجمعی برای خدماتی که نیاز به قرار گرفتن در معرض کنترل دارند یا به عنوان نقاط انتقال بین مناطق امنیتی خدمت می کنند، فراهم می کند.

@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

خدمات به طور معمول در داخل Edge:

  • کنترل کننده های Wireless LAN (WLC)
  • پروکسی های وب و فیلترهای محتوا
  • سازنده VPN
  • زیرساخت های DNS/DHCP
  • Load balancers
  • سرورهای Jump Host / Bacstion

ماژول 3: Core Layer

Core ستون فقرات با سرعت بالا است که تمام ماژول های دیگر را متصل می کند. باید بهینه سازی شود برای:

  • حداکثر از طریق
  • حداقل تاخیر
  • دسترسی بالا
  • ساده و سریع ارسال
@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

اصول طراحی هسته:

  • دستگاه های کاربر نهایی به طور مستقیم متصل نیستند
  • مسیریابی L3 بین سوئیچ های هسته ای (بدون درخت پوش)
  • Multipath (ECMP) برای توزیع بار
  • پروتکل های همگرایی سریع

ماژول 4: لایه توزیع

لایه توزیع، سوئیچ های دسترسی را جمع می کند و سیاست را اجرا می کند. این جایی است که انتخاب های طراحی شبکه بیشترین تنوع را بر اساس الزامات سایت دارند.


توزیع تنوع

تنوع 1: L3 Adjacent (Roaded Access)

در این طراحی، لایه های توزیع و دسترسی هستندL3 مجاور- هر سوئیچ دسترسی دارای Subnet IP و مسیرهای خود به طور مستقیم به توزیع است.

@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:

لینک | Subnet | | توزیع به Core | 10.x.1.0/30, 10.x.1.4/30 | Dist-A to Access-1 | 10.x.2.0/30 | | Dist-B to Access-1 | 10.x.2.4/30 | • Access-1 User VLAN | 10.x.32.0/24 • Access-2 User VLAN | 10.x.33.0/24

مزایای:

  • جداسازی دامنه پخش در هر سوئیچ دسترسی
  • عیب یابی ساده (مسائل مربوط به Subnet)
  • هیچ درختی بین توزیع و دسترسی
  • انتشار امکان پذیر در لایه توزیع

ملاحظات:

  • نیاز به L3 سوئیچ دسترسی
  • تنظیمات رله DHCP در هر سوئیچ دسترسی
  • مدیریت آدرس IP پیچیده تر

تغییرات 2: MCLAG با LACP Trunks

این طراحی استفاده می کندMulti-Chassis Link Aggregation (MCLAG)توزیع بااوراق قرضه LACPبرای دسترسی به سوئیچ هایی که VLAN را حمل می کنند.

فروش دهنده Terminologyسیسکو این vPC (Virtual Port Channel)، Arista از MLAG استفاده می کند، Juniper از MC-LAG استفاده می کند و HPE/Aruba از VSX استفاده می کند. رفتار عملکردی در سراسر فروشندگان مشابه است.

@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 Placement (VRRP VIP در توزیع Pair):

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

VLAN Trunk Configuration:

| Port-Channel | VLANs | | Po1 (MCLAG) 100،110، 120 | Po2 (MCLAG) | 100,110,120,130 | Access-2 | | Po3 (MCLAG) | 100,110 | Access-3 | | بومی VLAN | 999 (unuse)

مزایای MCLAG:

  • انتقال فعال (هر دو لینک مورد استفاده)
  • شکست های بعدی
  • یک تغییر منطقی از منظر دسترسی
  • بدون مسدود کردن درخت

ملاحظات:

  • VLAN ها دارای چندین سوئیچ دسترسی ( دامنه های پخش بزرگ تر) هستند
  • MCLAG-link می تواند تبدیل به تنگنا شود
  • STP هنوز به عنوان پشتیبان گیری از حلقه مورد نیاز است

Variation 3: Frontier Leaf for Spine/Leafcenter Data

در محیط های مرکز داده، لایه توزیع تبدیل به لایه توزیع می شودمرز →اتصال بدنه ستون فقرات / قطعه به بقیه شبکه شرکت.

@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

اطلاعات مرکز اطلاعات جزئیات:

| تابع | | | 😉زیرنویسeBGP (ASN در هر سوئیچ) یا OSPF 😉OverlayVXLAN با هواپیمای کنترل EVPN 😉مرز →دروازه VXLAN-to-VLAN، مسیرهای خارجی، مسیریابی Inter-VRF 😉دانلود بازی Leaf Workloads● تکمیل، ذخیره سازی، Voice/UC، زیرساخت

مزایای:

  • مقیاس افقی بزرگ (دو جفت برگ اضافی به عنوان مورد نیاز)
  • معماری غیر بلوکی
  • Multi-tenancy از طریق VRF/VNI
  • الگوهای ترافیک شرق-غرب

ملاحظات:

  • پیچیدگی عملیاتی VXLAN / EVPN
  • مهارت های تخصصی مورد نیاز
  • هزینه های تجهیزات عالی

ماژول 5: Access Layer

لایه دسترسی جایی است که دستگاه های نهایی متصل می شوند. صرف نظر از توپولوژی توزیع، سوئیچ های دسترسی ارائه می دهند:

@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 :

  • 802.1X / MAB Authentication
  • Dynamic VLAN
  • امنیت پورت
  • DHCP
  • Dynamic ARP
  • IP Source Guard

Topology کامل

در اینجا چگونگی اتصال تمام ماژول ها به شکل یک شبکه کامل سازمانی:

@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 با VRF Isolation

چالش Multi-Segment، Multi-VRF Design

هنگامی که شبکه ها رشد می کنند تا چندین منطقه امنیتی، واحدهای تجاری یا مرزهای انطباق را شامل شوند،,VRF (Virtual Routing and Forwarding)انزوای جدول مسیر را فراهم می کند. با این حال، گسترش VRF از طریق چندین کراوات، پیچیدگی را اضافه می کند:

  • هر L3 پرش نیاز به یک Subnet حمل و نقل دارد
  • Sub-interfaces پیچیدگی تنظیمات را ضرب می کند
  • عیب یابی طول می کشد چندین جدول مسیریابی
  • مستندات باید عضویت VRF را در هر لایه ردیابی کنند

استراتژی Subnet Schema

یک طرح فرعی به خوبی طراحی شده الگوهای قابل تشخیص، کاهش بارگذاری شناختی و خطاهای پیکربندی را ایجاد می کند.

مثال: سایت بزرگ تولید (10.0.0.0/10)

سایت Allocation:0.0.0/10 (مدیریت سایت آلفا) - 524،286 میزبان قابل استفاده

@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

جزئیات بخش حمل و نقل (10.0.0.0 / 23 - 510 IP قابل استفاده):

Subnet | Link Description | | | | 0.0.0/30 | FW-Inside 0.0.4/30 | FW-Inside | Internal-Edge-B | 0.0.8/30 | Internal-Edge-A 10.0.0.12/30 | Internal-Edge-A 10.0.0.16/30 | Internal-Edge-B 10.0.0.20/30 | Internal-Edge-B 10.0.0.24/30 | Core-A 10.0.0.28/30 | Core-A 10.0.0.32/30 | Core-B 10.0.0.36/30 | Core-B 10.0.0.40/30 | توزیع-A 10.0.0.44/30 | توزیع-B | Access-SW-1 | (Pattern همچنان ادامه دارد)

توجه:/ 31 subnets (RFC 3021 همچنین می تواند برای لینک های نقطه به نقطه، حفظ فضای آدرس استفاده شود.

مزایای تشخیص الگو

هنگامی که الگوهای Subnet در VRFs سازگار هستند:

آنچه شما می دانید، آنچه شما می توانید آن را استنتاج کنید | | | پیوند حمل و نقل در شرکت از 10.0.0.40/30 استفاده می کند، معادل مهمان 10.1.0.40/30 است کاربران Access-SW-5 در 10.0.36.0 /24 قرار دارند، دوربین های امنیتی در همان سوئیچ 10.2.36.0 /24 هستند سایت Alpha به ۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۱٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۱٫۰٫۱٫۱٫۱٫۱٫۱٫۱٫۱٫۰٫۱٫۱٫۱٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۱٫۱٫۱٫۱٫۰٫۱٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰٫۰

این اجازه می دهد تا مهندسان:

  • پیش بینی آدرس های IP بدون مستندات مشاوره
  • شناسایی Subnet های پیکربندی شده بلافاصله
  • ایجاد قالب های اتوماسیون که در VRFs کار می کنند
  • آموزش کارکنان جدید در الگوی، نه حفظ

قالب های اندازه سایت

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

یادداشت های طراحی سایت کوچک:

  • طراحی شکست خوردههمه توابع در حداقل سخت افزار
  • Subnet/24 یا /23 در هر سایت
  • مثال10.100.1.0/24 (سایت 001)

قالب سایت متوسط (اداره منطقه ای)

@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

یادداشت های طراحی سایت متوسط:

  • پیچیدگی های جزئیDistinct Edge و Access کراوات
  • Subnet288 در هر سایت (2,046 IPs)
  • مثال10.50.0.0/21 (سایت 050)

قالب سایت بزرگ (Headaries/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

یادداشت های طراحی سایت بزرگ:

  • کامل بودنهمه کراوات ها از نظر فیزیکی جداگانه
  • Subnet/10/15 در هر سایت (بر اساس آمار VRF)
  • مثال0.0.0/10 (HQ) - 524,286 IPs

VRF و L3 بخش بندی: مزایا و پیچیدگی

مزایای تقسیم بندی L3 با Sub-interfaces

  1. امنیت حلترافیک بین VRF ها باید یک فایروال یا ابزار سیاسی را عبور دهد
  2. دانلود بازی Blast Radius Containmentبخش تکمیل شده نمی تواند به طور مستقیم به سایر VRF ها برسد
  3. هماهنگی BoundariesPCI، HIPAA یا شبکه های OT در دامنه های جداگانه مسیریابی
  4. مهندسی ترافیکسیاست های مسیریابی مختلف در VRF

پیچیدگی تجارت

هنگامی که بخش ها باید از طریق چندین کراوات گسترش یابند، هر مرز L3 دامنه پیکربندی را اضافه می کند:

@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

پیکربندی Overhead:

  • 5 Sub-interfaces در هر مسیر
  • ۴ VRFs × ۵ sub-ints = ۲۰ Sub-interfaces در هر سوئیچ
  • پروتکل مسیریابی در هر VRF
  • خط لوله یا قوانین فایروال برای ترافیک بین المللی

استراتژی های پذیرش

  1. شمارش محدود VRFفقط VRF را برای نیازهای انزوای واقعی ایجاد کنید
  2. مسیر inter-VRFنقطه سیاست تک فایروال در مقابل توزیع شده
  3. استفاده از VXLAN/EVPNOverlay کاهش می دهد زیر فضای فیزیکی گسترده
  4. خودکارسازیقالب ها اطمینان از پیکربندی ثابت
  5. الگو را مستند کنیدهنگامی که آموخته شد، الگوهای سریعتر از نگاه کردن هستند

ساخت یک الگوی شبکه مقیاس پذیر

هدف طراحی شبکه مدولار ایجاد یکالگوی تکراریاین امکان را فراهم می کند:

مقیاس | سایت | الگو | | | | | کوچک | 10,000+ | سقوط UTM + یک سوئیچ، /24 در هر سایت | | Medium | 1000+ | Edge + MCLAG توزیع + دسترسی، 288 در هر سایت | بزرگ | 100+ | Full مدولار (Edge، Internal Edge، Core، انواع توزیع، پارچه DC)، /10-/15 در هر سایت

Key Takeaways

  1. ماژول ها مرزهای ایجاد می کنندهر ماژول دارای یک هدف و رابط تعریف شده است
  2. الگو ها مقیاس را فعال می کنندطراحی مشابه در هر سایت کاهش آموزش و خطا
  3. VRF ها انزوا را فراهم می کننداضافه کردن پیچیدگی پیکربندی در هر لایه
  4. طرح های فرعی مهمپاسخ قابل پیش بینی کاهش بار شناختی
  5. توزیع با نیاز متفاوت استL3 مجاور، MCLAG/LACP، یا ستون فقرات/leaf
  6. اندازه مناسب برای سایتسایت های کوچک بیش از حد مهندسی نکنید

با ایجاد این الگوها و استفاده از آنها به طور مداوم، سازمان ها می توانند شبکه هایی را بسازند که از یک دفتر واحد به یک شرکت جهانی اندازه گیری می کنند – همه در حالی که سادگی عملیاتی و حالت امنیتی را حفظ می کنند.


نسخه ماده 2.0 | منتشر شده 2026-02-02-02-02 | به روز رسانی با نمودارهای گیاهیUML nwdiag