Modular Network Design: A Scalable Architecture Framework
Модулен дизайн на мрежа: Скалируема рамка за архитектура
Въведение в модулен дизайн на мрежа
Мрежовата модулност е практика на проектиране на мрежи като взаимосвързана, целенасочена, а не монолитна структура. Всеки модул обслужва специфична функция, има определени граници и се свързва със съседни модули чрез добре разбрани интерфейси. Този подход превръща мрежовия дизайн от изкуство в повтаряща се инженерна дисциплина.
Силата на модулността се крие в способността му да създавапредсказуеми моделикоято може да се прилага последователно в цялата инфраструктура на организацията, независимо дали обхваща десетки хиляди малки обекти, хиляди средни обекти или стотици големи предприятия кампуси.
Защо модулността има значение
Ползи във всички мрежови мащаби
| Benefit | Small Sites | Medium Sites | Large Sites | ...------------------- - ДаОпростено отстраняване на неизправностиНеобвързан инженер може да разбере цялата топология отборите могат да се специализират чрез модул - ДаПредвидимо скалиранеДобави модули, както е необходимо . - ДаПоследователна сигурностСъщите политики навсякъде, несигурна поза за спазване на изискванията - ДаОперативна ефективностВладеене на ценни книжа - ДаКонтрол на разходитеЗакупуване на всеки модул по тип модул
Предизвикателство за наклоняване
Организациите рядко остават статични. Модулният дизайн трябва да отговаря на:
- 10 000+ малки обекти: Клонове, търговски обекти, отдалечени съоръжения
- 1000+ средни места: Регионални офиси, разпределителни центрове, производствени предприятия
- 100+ големи обекта: Щаб, центрове за данни, големи кампуси
Без модулност всеки сайт се превръща в уникална снежинка, която изисква персонализирана документация, специализирано обучение и еднократно отстраняване на проблеми. С модулността, инженер, който разбира модела, може да работи ефективно на всяко място.
Основни мрежови модули
Модул 1: Интернет изходен сегмент
Интернет Edge е мястото, където вашата организация среща външния свят. Този модул съдържа:
- WAN/Internet вериги(MPLS, DIA, широколентов, LTE/5G)
- Сачмени рутери(BGP peering, WAN termination)
- Защитни стени(статуална проверка, 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
Принципи на ключовия дизайн:
- Презареждане на веригите от различни доставчици
- Защитна стена с висока мощност
- Изчистване на границите на VLAN между доверителните зони
- L3 връзки от точка до точка между рутер и защитна стена
Модул 2: Вътрешен край / DMZ Подреждане
За средни и големи обекти вътрешният ръб осигурява агрегация на слой за услуги, които изискват контролирана експозиция или служат като преходни точки между зоните за сигурност.
@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
Услуги Обикновено във вътрешния край:
- Безжични контролери за LAN (WLC)
- Уеб проксита и филтри за съдържание
- Концентратори на VPN
- DNS/DHCP инфраструктура
- Товарни везни
- Настолни / бастионни сървъри
Модул 3: Основен слой
Ядрото е високоскоростен гръбнак, който свързва всички други модули. Той трябва да бъде оптимизиран за:
- Максимална пропускателна способност
- Минимална латентност
- Висока наличност
- Проста, бърза превъртане
@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 маршрутизиране между ядрото на прекъсвачите (без гребло)
- Мултипати на равни разходи (ECMP) за разпределение на товара
- Протоколи за бързо сближаване
Модул 4: Разпределителен слой
Слоят на дистрибуцията е с възможност за достъп до превключватели и налага политика. Това е мястото, където изборът на мрежови дизайн имат най-много промени въз основа на изискванията на сайта.
Вариации на капитала от първи ред на разпределение
Вариация 1: L3 Adjacent (Routed Access)
В този дизайн, разпределението и достъпа слоеве саL3 съседнаВсеки ключ за достъп има своя собствена 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
Пример за разпределение на подмрежата:
Превод и субтитри: - Не Дистрибуция на ядрото 10.x.1.0/30, 10.x.1.4/30 Dist-A до Access-1 10.x.2.0/30 Dist-B до Access-1 10.x.2.4/30 год год
Ползи:
- Излъчване на домейни на всеки превключвател за достъп
- Опростено отстраняване на неизправности (тъкани, съдържащи се в подмрежата)
- Няма гребло между разпространението и достъпа
- Възможност за обобщаване на разпределения слой
Въпроси:
- Изисква превключватели за достъп с възможност за достъп до L3
- Конфигурация на DHCP релето на всеки ключ за достъп
- По-сложно IP адрес управление
Вариация 2: MCLAG с багажници на L АКТБ
Този дизайн използваMulti-Chassis Link Aggregation (MCLAG)при разпределение сОблигации от АКТБза достъп до превключватели, превозващи VLAN.
Търговци на едро: Cisco нарича този 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 on Distribution Pair):
- VLAN 100: 10.x.32.1/24
- VLAN 110: 10.x.64.1/24
- VLAN 120: 10.x.96.1/24
Конфигурация на багажника VLAN:
Пристанищен канал ВЛАНС - Да По1 (MCLAG) 100,110,120 год год год
Ползи от MCLAG:
- Активно-активна спедиция (и двете използвани връзки)
- Подсекундно прекъсване
- Един логичен превключвател от гледна точка на достъпа
- Не обхващане на дървото блокиране
Въпроси:
- VLAN обхваща множество превключватели за достъп (по-големи домейни за излъчване)
- MCLAG peer-link може да стане boltneck
- STP все още се изисква като резервен цикъл превенция
Вариация 3: Граничен лист за Spine/Leaf Datacenter
В средата на центъра на данните, дистрибуторският слой се превръща вГранична листасвързване на гръбначната/листната тъкан с останалата част от мрежата на предприятието.
@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
Данни за центъра на данните:
това е функция - Не - ДаUnderlay| eBGP (ASN per switch) or OSPF | - ДаОвърлей| VXLAN with EVPN control plane | - ДаГранична листаVXLAN-to-VLAN gateway, външни маршрути, Inter-VRF.. - ДаЛистни товариКомпют, съхранение, глас/UC, инфраструктура
Ползи:
- Масивна хоризонтална скала (добавете двойки листа при необходимост)
- Архитектура на неблокиращи тъкани
- Multi-tenance via VRF/VNI
- Оптимален източно-западен трафик
Въпроси:
- Оперативна сложност на VXLAN/EVPN
- Необходими специализирани умения
- По-високи разходи за оборудване
Модул 5: Достъп до слой
Слоят Access е мястото, където крайните устройства се свързват. Независимо от топологията на разпределението, превключвателите за достъп осигуряват:
@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
Достъп до функции за сигурност на слой:
- 802.1X / MAB удостоверяване
- Динамична задача на VLAN
- Охрана на пристанището
- DHCP душене
- Динамична проверка на ARP
- IP Source Guard
Пълна модулна топология
Ето как всички модули се свързват, за да формират цялостна корпоративна мрежа:
@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
Предизвикателството на мултисегмента, мулти-VRF дизайн
Когато мрежите растат, за да включват множество зони за сигурност, бизнес звена или граници за съответствие,VRF (Виртуален маршрут и спедиция)осигурява изолация на маршрутната маса. Въпреки това разширяването на ДПС чрез няколко подреждания добавя сложност:
- Всеки L3 хоп изисква транзитна подмрежа
- Под interfaces умножават сложността на конфигурацията
- Отстраняването обхваща множество таблици за маршрутизиране
- Документацията трябва да проследява членството на VRF на всяко ниво
Subnet Schema Strategy
Добре проектираната подмрежа прави моделите разпознаваеми, намалявайки когнитивния товар и конфигурационните грешки.
Пример: Голям производствен сайт (10.0.0.0/13)
Разпределение на обекта:10.0.0.0/13 (Производителски сайт Алфа) - 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.00/23 - 510 използваеми IPs):
Описание на линка - Не год год год год. 10.0.12/30 год. 10.0.16/30 год. 10.0.20/30 год. 10.0.24/30 . 10.0.02.28/30 . . Core-A . . год. 10.0.32/30 год. 10.0.36/30 год. 10.0.40/30 10.0.0.44/30 год год
Забележка:/31 подмрежи (RFC 3021) могат да се използват и за връзки от точка до точка, пестене на адрес пространство.
Ползи от разпознаването на модели
Когато моделите на подмрежата са съгласувани между VRFs:
Какво знаеш? Какво можеш да направиш - Не, не, не годежен линк в корпоративните приложения 10.0.40/30 год Потребителите на Access-SW-5 са на 10.0.36.0/24 . Сайт Алфа е 10.0.0/13
Това позволява на инженерите да:
- Предсказуеми IP адреси без документация
- Разпознаване на погрешно конфигурирани подмрежи веднага
- Създаване на модели за автоматизация, които работят през VRFs
- Тренирай нов персонал на модела, не запомняне
Шаблони за размер на сайта
Образец на малък сайт (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
Бележки за дизайн на малък сайт:
- Сгъваем дизайн: Всички функции в минимален хардуер
- Подмрежа: /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
Медиум Design Notes:
- Частична модулация: Distance Edge and Access Seals
- Подмрежа: / 21 на място (2,046 IPs)
- Пример: 10.50.0/21 (сайт 050)
Образец на голям сайт (глави/кампус)
@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
Бележки за дизайн на голям сайт:
- Пълна модулация: Всички нива са физически разделени
- Подмрежа: /13 до /15 на място (въз основа на броя на VRF)
- Пример: 10.0.0.0/13 (HQ) - 524.286 IPs
VRF и L3 сегментация: Ползи и комплексност
Ползи от сегментирането на L3 с подинтерфейс
- Изолиране на сигурността: Трафикът между VRF трябва да пресече защитна стена или политическо устройство
- Съдържание на взривния радиус: Компрометираният сегмент не може да достигне директно други VRFs
- Граници на съответствието: PCI, HIPA или OT мрежи в отделни области за маршрутизиране
- Трафик инженеринг: Различни правила за маршрутизиране на 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
Надстройка на настройките:
- 5 междинни лица на VRF на път
- 4 VRF × 5 подинта = 20 подинтерфейса на превключвател
- Рутинг протокол adjacents във всеки VRF
- Правила за пропускане на маршрут или защитна стена за между-VRF трафик
Стратегии за уреждане на спорове
- Граничен брой VRF: Само създаване на VRF за истински изисквания за изолация
- Централизиране на маршрута между VRF: Единична защитна стена точка срещу разпределена
- Използване на VXLAN/EVPN: Овърлей намалява физическите под-интерфейс splow
- Автоматизиране: Шаблоните осигуряват последователна конфигурация
- Документиране на модела: Веднъж научили, моделите са по-бързи от търсенето
Резюме: Изграждане на скалируем мрежов модел
Целта на модулния дизайн на мрежата е да се създадеповтаряем моделкоето позволява:
Сателитни обекти - Не по-малък по 10 000+ год Edge + MCLAG разпределение + достъп, /21 на сайт по-голям гол 100+ год
Ключови принадлежности
- Модулите създават граници: Всеки модул има определена цел и интерфейс
- Моделите позволяват мащаб: Един и същ дизайн на всеки сайт намалява обучението и грешките
- VRF осигурява изолация: Но добавете конфигурационна сложност на всяко ниво
- Субнетните схеми имат значение: Предвидимото адресиране намалява когнитивния товар
- Разпределението варира според нуждите: L3 в съседство, MCLAG/LACP, или гръбнака/листта
- Десен размер за сайта: Не пренареждайте малки обекти
Чрез създаването на тези модели и прилагането им последователно, организациите могат да изградят мрежи, които мащабират от един офис клон до световно предприятие, като същевременно поддържат оперативна простота и поза сигурност.
Версия на статията (0) Публикувана на 2026 (***)