เครือข่ายสาธารณูปโภค เป็นการฝึกการออกแบบเครือข่ายเป็นส่วนต่างๆ ที่ไม่ต่อเนื่องกัน แต่ละโมดูลมีฟังก์ชันเฉพาะ, ได้กําหนดขอบเขต, และเชื่อมต่อกับโมดูลที่ชิด ผ่านส่วนเชื่อมต่อแบบละเอียด วิธี นี้ จะ เปลี่ยน รูป แบบ เครือ ข่าย จาก ศิลปะ มา เป็น วินัย ทาง วิศวกรรม แบบ ซ้ํา ได้.
พลังของความเหลื่อมล้ํา คือความสามารถในการสร้างสรรค์รูปแบบที่คาดเดาได้ซึ่งสามารถนําไปใช้ได้อย่างต่อเนื่อง ตลอดระบบโครงสร้างพื้นฐานขององค์กร ไม่ว่าจะเป็นพื้นที่กว่าหมื่นแห่ง.
○ ได้ รับ ประโยชน์ |----------------------------------------- |--- ○การยิงแบบขยาย○ วิศวกร โสด สามารถ เข้าใจ ระบบ นิเวศ วิทยา ทั้ง หมด ○ ทีม ต่าง ๆ สามารถ ทํา งาน ได้ โดย โมดูล ○ ทํา ความ เข้าใจ เส้น ทาง เดิน เรือ ที่ เป็น เส้น ทาง ระหว่าง เจ้าของ มอดูล ○ ○การไล่เลขทศนิยม○ เพิ่ม โมดูล ตาม ความ จําเป็น ○ความปลอดภัยที่สอดคล้องกัน○ นโยบาย เดียว กัน ทุก หน ทุก แห่ง ○ความเที่ยงตรงของปฏิบัติการ○ การใช้โปรแกรมแม่แบบอัตโนมัติ ○ การจัดการการเปลี่ยนแปลงมาตรฐาน ○ ○ควบคุมค่าใช้จ่าย○ กําหนดขนาดให้ขวา ○ บักด์ สวาป โดยประเภทโมดูล | ไลฟ์ซีเคิลจัดการโดย Lunner |
องค์กรไม่ค่อยสงบ การ ออก แบบ แบบ แบบ เครื่อง บิน ต้อง จุ ได้:
โดยไม่ต้องมีความคล่องตัว แต่ละเว็บไซต์จะกลายเป็นเกล็ดหิมะที่ไม่ซ้ํากัน ต้องการเอกสารที่กําหนดเอง ด้วย ความ ยืดหยุ่น วิศวกร ที่ เข้าใจ รูป แบบ สามารถ ทํา งาน ได้ อย่าง มี ประสิทธิภาพ ใน สถาน ที่ ใด ก็ ได้.
The Internet Edge คือที่ที่องค์กรของคุณพบกับโลกภายนอก มอดูลนี้บรรจุ:
@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
หลักการการออกแบบกุญแจ:
สําหรับ เว็บไซต์ ขนาด กลาง และ ขนาด ใหญ่ ขอบ ด้าน ภาย ใน เป็น ชั้น ที่ ใช้ สําหรับ บริการ ซึ่ง ต้อง มี การ ควบคุม การ รับ แสง หรือ ใช้ เป็น จุด เปลี่ยน ระหว่าง เขต ปลอด ภัย.
@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
บริการโดยทั่วไปในขอบภายใน:
แกนเป็นกระดูกสันหลังความเร็วสูง ที่เชื่อมต่อโมดูลอื่น ๆ ทั้งหมด มันน่าจะเหมาะกับ:
@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สวิตช์การเข้าถึงแต่ละตัวมีเครือข่าย 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 | - ○ กระจาย ไป ยัง โคเร 10x 1.0/30, 10.x.4/30 | | Det-A เข้าถึง 1 | 10.x 2.0/30 | | Det-B to access-1 | 10.x.4/30 | ○ เข้าถึง 1 ผู้ใช้ VANDN | 10.x.32. 0/24 | ○ ผู้ใช้ October-2 VANDNAN | 10.x33.0/24 |
ประโยชน์:
การพิจารณา:
การออกแบบนี้ใช้เชื่อมโยงแบบหลาย ๆ แบบที่การกระจายตัวด้วยพันธบัตร LACPเพื่อเปิดสวิตซ์ที่มีวีเลน.
จุลชีพ ผู้ ผลิต2561: ซิสโก้เรียกรายการนี้ว่า VPC (ช่องพอร์ตวิกิตา) อาริสต้าใช้เอ็มแอลเอจี, จูนิเปอร์ใช้เอ็มซี-ลาจี และเอชพี/อารูบาใช้ 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 (VRP VIP บนช่องวางจําหน่าย):
การปรับแต่ง vlan Truk:
○ ท่า เรือ ชาแนล |--------------------------------- | Po1 (MCLAG) | 100,110,120 | เข้าถึง 1 | | PO2 (MCLAG) | 100,110,120,130 | เข้าถึง-2 | | พ.ศ ○ ชน พื้น เมือง VANDN | 999 (ไม่ เคย ใช้) | — |
MALAG ประโยชน์:
การพิจารณา:
ในสภาพแวดล้อมที่จุด้วยข้อมูล, ชั้นการกระจายตัวจะกลายเป็นเส้นขอบเชื่อมต่อผ้าสันหลัง/ลาฟ กับส่วนอื่นของเครือข่าย enterprise.
@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
รายละเอียด Fabric
| ส่วนประกอบ | ฟังก์ชัน | |--------------- ○อันเดอร์เลย์○ เอบีจีพี (ASAN ต่อสวิตช์) หรือ OPF | ○โอเวอร์เลย์| VXLAN กับเครื่องควบคุม EVPN | ○เส้นขอบ| VXLANN-ถึง VVAND, เส้นทางภายนอก, Inter-VRF routing | ○Name=ไดเรกทอรีNameสืบค้นเมื่อ:
ประโยชน์:
การพิจารณา:
เลเยอร์ที่อุปกรณ์สิ้นสุดเชื่อมต่ออยู่ ไม่ ว่า จะ มี การ จําหน่าย จ่าย แจก มาก แค่ ไหน ก็ ตาม การ เปลี่ยน แปลง ทาง การ ค้า ก็ ทํา ให้ มี:
@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
คุณสมบัติความปลอดภัยระดับการเข้าใช้:
นี่เป็นวิธีเชื่อมต่อทุกโมดูลกับเครือข่ายของ enterprise ทั้งหมด
@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
เมื่อเครือข่ายเติบโตมา รวมถึงพื้นที่รักษาความปลอดภัยหลายแห่ง หน่วยธุรกิจ หรือขอบเขตการปฏิบัติตาม,VRF (บันทึกและส่งต่อ)จัดโต๊ะแยกเส้นทาง อย่างไรก็ตาม การขยาย VRFs ผ่าน Times หลายตัว เพิ่มความซับซ้อน
Subnet Chema ออกแบบมาอย่างดี ทําให้รูปแบบที่สังเกตได้ ลดการโหลดการคิดและการตั้งค่าผิดพลาด.
การจัดวางของไซต์:10.0.0.0/13 (Manuture Sitle Alpha) - 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/23 - 510 IPs ใช้ได้):
| Subnet สืบค้นเมื่อ | |---------------------- ○ 10.0.0/30 | เอฟดับเบิลยู-อินไซด์ → Internal-Edge-A | | 10.0.4/30 | เอฟดับเบิลยู-อินไซด์ → Internal-Edge-B | | 10.0.8/30. | Internal-Edge-A → Core-A | 10.0.12/30. | Internal-Edge-A→ Core-B | | 10.0.16/30. | Internal-Edge-B→ Core-A | | 10.0.20/30 | Internal-Edge-B→ Core-B | | 10.0.24/30. | โคเร-เอ ชวาช-เอ | ○ 10.0.28/30 | Core-A ○ 10.0.32/30 | Core-B | 10.0.36/30 | Core-B. สืบค้นเมื่อ 12 พฤษภาคม พ.ศ | 10.0.40/30. | Distribution access-SW-1 | | 10.0.44/30. สืบค้นเมื่อ 17 พฤษภาคม พ.ศ | | (พ.ศ
หมายเหตุ:/31 เครือข่ายย่อย (RFC 3021) ยังสามารถใช้สําหรับลิงก์จุดต่อจุด, พื้นที่อนุรักษ์.
เมื่อรูปแบบของเครือข่ายย่อยมีความสอดคล้องกัน ข้าม VRFs:
○ สิ่ง ที่ คุณ รู้ |------------------------------------- | ส่วน เชื่อม ทรานซิท ใน นิติ บุคคล ใช้ 10.0.40/30 guest เท่ากันคือ 10.1.0.40/30 | ○ ผู้ใช้เข้าใช้ TOP-SW-5 อยู่ที่ 10.0.36.0/24 | กล้องรักษาความปลอดภัยบนสวิตต์เดียวกันคือ 10.2.36.0/24 | | Site Alpha คือ 10.0.0/13 | Site Beta อาจจะเป็น 10.8.0/13 |
นี่ทําให้วิศวกร:
@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
บันทึกการออกแบบไซต์เล็ก:
@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
โน้ต ออก แบบ ปานกลาง:
@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
บันทึกการออกแบบไซต์ขนาดใหญ่:
เมื่อส่วนต้องขยายผ่าน tiers หลาย ๆ ขอบแต่ละ 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
การปรับแต่งส่วนหัว:
เป้าหมายของการออกแบบเครือข่ายรูปแบบที่ซ้ําได้ซึ่งทําให้:
○ สเกล ○ ซิ ตส เตอร์ |------------------------ | ขนาดเล็ก | 10,000+ | Collapse Collapse Collapse Collapse ยูทีเอ็ม + สวิตช์เดี่ยว, /24 ต่อเว็บไซต์ | | ปานกลาง | 1,000+ | Edge + MCLAG การกระจายตัว + เข้าถึง, /21 ต่อเว็บไซต์ | | ขนาด ใหญ่ | 100+ | Full Directer (Edge, Eddge, Internal Edge, Core, distributions, DC Fil), /13-15 ต่อเว็บไซต์ |
โดยการสร้างรูปแบบเหล่านี้ และนําไปใช้อย่างสม่ําเสมอ องค์กรสามารถสร้างเครือข่ายที่ขยายจากสํานักงานสาขาเดียว.
มาตราเวอร์ชัน 2. 0 | จัดพิมพ์ 2026-02-02 | ปรับปรุงด้วยแผนภาพ PlanumL nwdiag