เมื่อเครือข่าย OSPF มีขนาดใหญ่ขึ้น การวาง Router ทุกตัวไว้ใน Area เดียว อาจไม่ใช่โครงสร้างที่เหมาะสม OSPF จึงรองรับ Multi-Area Architecture เพื่อแบ่ง Routing Domain ออกเป็นหลาย Area โดยมี Area 0 เป็น Backbone สำคัญของระบบ
การออกแบบ Multi-Area OSPF ทำให้เกิด Router Roles และ Area Types เพิ่มขึ้น เช่น ABR, ASBR, Standard Area, Stub Area, Totally Stubby Area และ NSSA ซึ่งแต่ละแบบควบคุม Routing Information และ LSA แตกต่างกัน
บทความนี้จะเชื่อมความรู้จาก OSPF Neighbor, LSA และ LSDB เข้าสู่การออกแบบ OSPF แบบหลาย Area พร้อมตัวอย่าง Cisco และแนวทาง Troubleshooting
สารบัญ
- ทำไมต้องใช้ Multi-Area OSPF?
- โครงสร้าง Multi-Area OSPF
- Area 0 คืออะไร?
- OSPF Router Roles
- ABR คืออะไร?
- ASBR คืออะไร?
- Standard Area
- Stub Area
- Totally Stubby Area
- NSSA คืออะไร?
- Totally NSSA
- LSA กับ Area Type
- OSPF Route Types
- แนวทางออกแบบ Area
- Cisco Multi-Area Lab
- Stub Area Lab
- NSSA Lab
- Verification
- Troubleshooting
- Command Cheat Sheet
- FAQ
ภาค 1: Multi-Area OSPF Architecture
ทำไมต้องใช้ Multi-Area OSPF?
ใน Single-Area OSPF Routers ภายใน Area รักษา Link-State Information ของ Area นั้น
+--------------------------------------+
| Area 0 |
| |
| R1 --- R2 --- R3 --- R4 --- R5 |
| \ / \ / |
| R6 ------R7-------R8------R9 |
| |
+--------------------------------------+
เมื่อ Topology มีขนาดใหญ่ขึ้น การแบ่ง Network ออกเป็นหลาย Area ช่วยสร้างโครงสร้าง Routing Domain ที่เป็นลำดับชั้น
Area 1
|
|
ABR
|
|
Area 0
/ \
/ \
ABR ABR
| |
| |
Area 2 Area 3
ประโยชน์เชิงสถาปัตยกรรม ได้แก่:
- แบ่ง Link-State Topology ออกเป็น Area
- จำกัด Scope ของ Type 1 และ Type 2 LSA
- ลดขอบเขตของ SPF Calculation บางส่วน
- สร้าง Hierarchical Routing Design
- รองรับ Inter-Area Route Summarization ที่ ABR
- ควบคุม External Routing Information ผ่าน Area Types
โครงสร้าง Multi-Area OSPF
OSPF ใช้แนวคิด Hierarchical Area Architecture โดย Backbone Area มีบทบาทเป็นแกนกลาง
+----------+
| Area 1 |
| R1 -- R2 |
+----+-----+
|
ABR
|
+----+-------------------+
| Area 0 |
| R3 ---- R4 |
+----+--------------+----+
| |
ABR ABR
| |
+----+-----+ +---+------+
| Area 2 | | Area 3 |
| R5 -- R6 | | R7 -- R8 |
+----------+ +----------+
Area 0 คืออะไร?
Area 0 คือ OSPF Backbone Area และเป็นส่วนสำคัญ ของ Multi-Area OSPF
แนวคิดพื้นฐาน:
Area 1
|
ABR
|
v
Area 0
|
ABR
|
v
Area 2
Inter-Area Routing ถูกออกแบบให้สัมพันธ์ กับ Backbone Area
ดังนั้นการออกแบบ OSPF หลาย Area ควรวาง Backbone Connectivity อย่างถูกต้องตั้งแต่ต้น
ภาค 2: OSPF Router Roles
OSPF Router มีบทบาทอะไรบ้าง?
| Role | ความหมาย |
|---|---|
| Internal Router | OSPF Interfaces ทั้งหมดของ Router อยู่ใน Area เดียวกัน |
| Backbone Router | มี OSPF Interface อย่างน้อยหนึ่ง Interface อยู่ใน Area 0 |
| ABR | Area Border Router เชื่อม Area และ Backbone ตาม OSPF Architecture |
| ASBR | Autonomous System Boundary Router นำ External Routing Information เข้าสู่ OSPF |
Router หนึ่งตัว สามารถมีมากกว่าหนึ่ง Role ได้
ตัวอย่าง:
Static Routes
|
v
R2
ASBR
|
Area 1
|
|
R3
ABR
|
Area 0
ABR คืออะไร?
ABR — Area Border Router เป็น Router ที่ทำหน้าที่ เชื่อม OSPF Areas ตาม Multi-Area Architecture
Area 1
|
|
R2
ABR
|
|
Area 0
ABR มีบทบาทสำคัญ เช่น:
- รักษา LSDB แยกตาม Area ที่เกี่ยวข้อง
- คำนวณ SPF สำหรับ Area ที่เกี่ยวข้อง
- แลกเปลี่ยน Inter-Area Routing Information
- สร้าง Type 3 LSA ตาม OSPF Rules
- รองรับ Inter-Area Route Summarization
- มีบทบาทในการควบคุม LSA ตาม Area Type
ASBR คืออะไร?
ASBR — Autonomous System Boundary Router คือ Router ที่นำ Routing Information จากภายนอก OSPF เข้ามาใน OSPF Domain ผ่าน Redistribution
Static / RIP / EIGRP / BGP
|
v
ASBR
|
v
OSPF Domain
ตัวอย่างเชิงแนวคิด:
router ospf 1
redistribute static subnets
ภาค 3: OSPF Area Types
Standard Area คืออะไร?
Standard Area คือ Area ปกติ ที่ไม่ได้กำหนดเป็น Stub, NSSA หรือรูปแบบพิเศษอื่น
External Routes
|
v
ASBR
|
v
Area 0
|
ABR
|
v
Standard Area
Standard Area สามารถรับ Inter-Area และ External Routing Information ตาม OSPF Design ปกติ
Stub Area คืออะไร?
Stub Area ออกแบบมาเพื่อลด External Routing Information ภายใน Area
External Routes
|
v
Area 0
|
ABR
|
v
+----------------+
| Stub Area |
| |
| R1 --- R2 |
+----------------+
โดยทั่วไป Stub Area ไม่รับ Type 5 External LSA เข้ามาใน Area
ABR จะให้ Default Route เพื่อให้ Routers ภายใน Stub Area สามารถส่ง Traffic ไปยัง Destination ภายนอก ที่ไม่ได้มี Route Specific ภายใน Area
Stub Router
|
| 0.0.0.0/0
v
ABR
|
v
Outside Area
Stub Area ยังสามารถมี Type 3 Inter-Area Information ตามปกติ
Totally Stubby Area คืออะไร?
Totally Stubby Area ลด Routing Information ภายใน Area ลงมากกว่า Standard Stub Area
แนวคิด:
Other Areas
External Networks
|
v
ABR
|
| Default Route
v
+--------------------+
| Totally Stubby |
| |
| R1 ----- R2 |
+--------------------+
โดยทั่วไป Routers ภายใน Area ใช้ Default Route ผ่าน ABR แทนการรับ Inter-Area Prefixes จำนวนมาก
NSSA คืออะไร?
NSSA — Not-So-Stubby Area เหมาะกับกรณีที่ต้องการ คุณสมบัติคล้าย Stub Area แต่ยังต้องการให้ Router ภายใน Area สามารถเป็น ASBR และนำ External Route เข้าสู่ OSPF ได้
External Network
|
v
ASBR
|
v
+------------------+
| NSSA |
| |
| ASBR ------ ABR |
+-------------+----+
|
v
Area 0
External Route ที่เกิดจาก ASBR ภายใน NSSA ถูก Advertise ภายใน NSSA ด้วย Type 7 LSA
External Route
|
v
NSSA ASBR
|
v
Type 7 LSA
|
v
NSSA
|
v
ABR
|
v
Type 5 LSA
as appropriate
ABR มีบทบาทในการ Type 7-to-Type 5 Translation ตาม OSPF NSSA Rules และ Translator Election ที่เกี่ยวข้อง
Totally NSSA คืออะไร?
Totally NSSA เป็นแนวทางที่เพิ่มข้อจำกัด ของ Inter-Area Information ให้กับ NSSA พร้อมยังรองรับ External Routes ที่เกิด ภายใน NSSA
External
|
v
ASBR
|
+-------------------+
| Totally NSSA |
| |
| ASBR ------- ABR |
+--------------+----+
|
v
Area 0
บน Cisco
แนวคิดนี้มักกำหนด
ผ่าน NSSA ร่วมกับ
no-summary
ที่ ABR
เปรียบเทียบ LSA กับ Area Type
| Area Type | Type 3 | Type 5 | Type 7 | External ASBR ภายใน Area |
|---|---|---|---|---|
| Standard | รองรับ | รองรับ | ไม่ใช่ NSSA Type | รองรับ |
| Stub | รองรับโดยทั่วไป | ไม่รับ | ไม่ใช้ | ไม่รองรับ External Redistribution แบบ ASBR ภายใน Stub |
| Totally Stubby | ถูกจำกัดอย่างมาก ยกเว้น Default ตาม Cisco Behavior | ไม่รับ | ไม่ใช้ | ไม่รองรับแบบ Stub |
| NSSA | รองรับตาม NSSA Design | External จากภายนอกถูกจำกัดตาม Area Rules | รองรับ | รองรับผ่าน Type 7 |
| Totally NSSA | ถูกจำกัดพร้อม Default Route ตาม Design | จำกัดตาม NSSA Rules | รองรับ | รองรับผ่าน Type 7 |
Route Types ที่เห็นใน Multi-Area OSPF
ตรวจด้วย:
show ip route ospf
ตัวอย่าง Codes:
| Code | ความหมาย |
|---|---|
O |
Intra-Area Route |
O IA |
Inter-Area Route |
O E1 |
External Type 1 |
O E2 |
External Type 2 |
O N1 |
NSSA External Type 1 |
O N2 |
NSSA External Type 2 |
ตัวอย่าง:
O 192.168.10.0/24 [110/20] via 10.0.12.2
O IA 192.168.20.0/24 [110/30] via 10.0.12.2
O E2 172.16.50.0/24 [110/20] via 10.0.12.2
O N2 172.16.60.0/24 [110/20] via 10.0.12.2
ค่า Metric เป็นเพียงตัวอย่าง และขึ้นอยู่กับ Topology และ Configuration จริง
ภาค 4: แนวทางออกแบบ Multi-Area OSPF
ควรแบ่ง OSPF Area อย่างไร?
ไม่มีจำนวน Router หรือจำนวน Area เดียว ที่เหมาะกับทุก Network
ควรพิจารณา:
- Topology
- จำนวน Routers และ Links
- Failure Domains
- LSDB Size
- SPF Processing
- Route Summarization Strategy
- Redundancy
- ABR Placement
- WAN Architecture
- Operational Complexity
- Hardware/Software Capabilities
แนวคิดที่อ่านง่าย:
Area 10
Branches
|
|
ABR
|
|
+-------+-------+
| Area 0 |
| Backbone |
+-------+-------+
|
ABR
|
|
Area 20
Data Center
ภาค 5: Cisco Multi-Area OSPF Lab
Lab: Area 1 → Area 0 → Area 2
Topology:
LAN-A
192.168.10.0/24
|
|
R1
|
Area 1
|
10.0.12.0/30
|
R2
ABR
|
Area 0
|
10.0.23.0/30
|
R3
ABR
|
Area 2
|
10.0.34.0/30
|
R4
|
|
LAN-D
192.168.40.0/24
R1 — Area 1
R1(config)# router ospf 1
R1(config-router)# router-id 1.1.1.1
R1(config-router)# network 192.168.10.0 0.0.0.255 area 1
R1(config-router)# network 10.0.12.0 0.0.0.3 area 1
R2 — ABR ระหว่าง Area 1 และ Area 0
R2(config)# router ospf 1
R2(config-router)# router-id 2.2.2.2
R2(config-router)# network 10.0.12.0 0.0.0.3 area 1
R2(config-router)# network 10.0.23.0 0.0.0.3 area 0
R3 — ABR ระหว่าง Area 0 และ Area 2
R3(config)# router ospf 1
R3(config-router)# router-id 3.3.3.3
R3(config-router)# network 10.0.23.0 0.0.0.3 area 0
R3(config-router)# network 10.0.34.0 0.0.0.3 area 2
R4 — Area 2
R4(config)# router ospf 1
R4(config-router)# router-id 4.4.4.4
R4(config-router)# network 10.0.34.0 0.0.0.3 area 2
R4(config-router)# network 192.168.40.0 0.0.0.255 area 2
ตรวจ Neighbor
R1# show ip ospf neighbor
R2# show ip ospf neighbor
R3# show ip ospf neighbor
R4# show ip ospf neighbor
ตรวจ R1 Routing Table
R1# show ip route ospf
Network จาก Area 2 สามารถปรากฏบน R1 เป็น Inter-Area Route เช่น:
O IA 192.168.40.0/24 [110/xx] via 10.0.12.2
ตรวจ R4
R4# show ip route ospf
Network
192.168.10.0/24
จาก Area 1
สามารถปรากฏเป็น
Inter-Area Route
บน R4
Lab: เปลี่ยน Area 2 เป็น Stub Area
Stub Configuration ต้องสอดคล้องกัน บน OSPF Routers ที่เกี่ยวข้องภายใน Area
R3 ซึ่งเป็น ABR:
R3(config)# router ospf 1
R3(config-router)# area 2 stub
R4:
R4(config)# router ospf 1
R4(config-router)# area 2 stub
ตรวจ:
R4# show ip route ospf
R4# show ip ospf database
ควรสังเกต Default Route ที่ ABR ให้กับ Stub Area และความแตกต่างของ External LSA
Lab: Totally Stubby Area บน Cisco
ที่ ABR:
R3(config)# router ospf 1
R3(config-router)# area 2 stub no-summary
Internal Router:
R4(config)# router ospf 1
R4(config-router)# area 2 stub
สังเกตว่า
no-summary
กำหนดที่ ABR
เพื่อ Suppress
Inter-Area Summary Information
ตาม Cisco Behavior
ตรวจ:
R4# show ip route ospf
R4# show ip ospf database
Lab: NSSA และ External Route
สมมติ Area 2 ต้องมี R4 เป็น ASBR:
Static Network
172.16.50.0/24
|
|
R4
ASBR
|
Area 2
NSSA
|
R3
ABR
|
Area 0
R3:
R3(config)# router ospf 1
R3(config-router)# area 2 nssa
R4:
R4(config)# ip route 172.16.50.0 255.255.255.0 null0
R4(config)# router ospf 1
R4(config-router)# area 2 nssa
R4(config-router)# redistribute static subnets
ตรวจบน R4:
R4# show ip ospf database nssa-external
R4# show ip route ospf
ตรวจบน ABR:
R3# show ip ospf database
R3# show ip route ospf
Null0
ในตัวอย่างนี้ใช้สร้าง Prefix
สำหรับ Routing Lab เท่านั้น
Traffic จริงที่ส่งไป Prefix นี้
จะถูกทิ้งหากไม่มี
Route ที่ Specific กว่า
ดังนั้นอย่านำ Configuration นี้
ไปใช้กับ Production โดยไม่เข้าใจผล
ภาค 6: Verification และ Troubleshooting
ตรวจ Multi-Area OSPF อย่างไร?
1. ตรวจ OSPF Process
show ip ospf
2. ตรวจ Interface และ Area
show ip ospf interface brief
3. ตรวจ Neighbor
show ip ospf neighbor
4. ตรวจ LSDB
show ip ospf database
5. ตรวจ Summary LSA
show ip ospf database summary
6. ตรวจ External LSA
show ip ospf database external
7. ตรวจ NSSA External LSA
show ip ospf database nssa-external
8. ตรวจ Routing Table
show ip route ospf
Multi-Area OSPF Troubleshooting
ใช้ Workflow:
Physical / Interface
|
v
IP Connectivity
|
v
OSPF Interface
|
v
Correct Area?
|
v
Neighbor State
|
v
Area Type Match?
|
v
LSDB
|
v
Type 1 / 2 / 3 / 5 / 7
|
v
Routing Table
|
v
Forward + Return Path
|
v
Application Test
ปัญหา 1 — Neighbor ไม่ขึ้นหลังเปลี่ยนเป็น Stub
ตรวจ Configuration ของ Routers ใน Area:
show running-config | section router ospf
show ip ospf
show ip ospf neighbor
หาก Area Options ไม่สอดคล้องกัน Neighbor อาจไม่สร้าง Adjacency
ปัญหา 2 — Neighbor Full แต่ไม่มี Inter-Area Route
ตรวจ:
show ip ospf database summary
show ip route ospf
show ip ospf border-routers
จากนั้นตรวจ:
- ABR Configuration
- Backbone Connectivity
- Area Assignment
- Type 3 LSA
- Route Filtering
- Summarization
- Route Selection
ปัญหา 3 — External Route ไม่เข้า Stub Area
นี่อาจเป็น Behavior ที่ถูกต้องตาม Stub Design เพราะ Type 5 External LSA ถูกจำกัด
ตรวจว่า Router มี:
0.0.0.0/0
ผ่าน ABR ตาม Area Design หรือไม่
ปัญหา 4 — ต้องการ ASBR ภายใน Stub Area
Standard Stub Area ไม่เหมาะกับ Requirement นี้
ควรพิจารณาว่า NSSA เหมาะกับ Architecture หรือไม่ แทนการเปลี่ยน Configuration แบบเฉพาะหน้า
ปัญหา 5 — NSSA External Route ไม่ออกไป Area อื่น
ตรวจ:
show ip ospf database nssa-external
show ip ospf database external
show ip ospf border-routers
show ip route ospf
ตรวจ:
- ASBR มี Route ต้นทางจริงหรือไม่
- Redistribution ทำงานหรือไม่
- Type 7 ถูกสร้างหรือไม่
- ABR Translation ทำงานหรือไม่
- Route Filtering หรือ Policy
ข้อผิดพลาดที่พบบ่อยในการออกแบบ OSPF Area
| ข้อผิดพลาด | ผลที่อาจเกิดขึ้น |
|---|---|
| สร้างหลาย Area โดยไม่มีเหตุผล | เพิ่ม Operational Complexity |
| ออกแบบ Backbone ไม่ต่อเนื่อง | Inter-Area Routing มีปัญหาและอาจต้องพึ่ง Virtual Link |
| Stub Configuration ไม่ตรงกัน | Neighbor Adjacency อาจไม่เกิด |
| ใช้ Stub แต่ต้องการ ASBR ภายใน Area | Requirement ขัดกับ Standard Stub Design |
| เข้าใจ Totally Stubby เป็นมาตรฐานทุก Vendor | เกิดปัญหา Multi-Vendor Compatibility/Design |
| Redistribute โดยไม่มี Routing Policy | เสี่ยง Route Feedback หรือ Routing Loop |
| ดูแต่ Routing Table ไม่ดู LSDB | หา Root Cause ของ OSPF Control Plane ได้ยาก |
Cisco Multi-Area OSPF Command Cheat Sheet
| Command | หน้าที่ |
|---|---|
show ip ospf |
ตรวจ OSPF Process, Router ID และ Area Information |
show ip ospf interface brief |
ดู OSPF Interfaces และ Area |
show ip ospf neighbor |
ตรวจ Neighbor State |
show ip ospf database |
ตรวจ LSDB |
show ip ospf database router |
ตรวจ Type 1 LSA |
show ip ospf database network |
ตรวจ Type 2 LSA |
show ip ospf database summary |
ตรวจ Type 3 LSA |
show ip ospf database external |
ตรวจ Type 5 LSA |
show ip ospf database nssa-external |
ตรวจ Type 7 LSA |
show ip ospf border-routers |
ตรวจข้อมูล ABR/ASBR ที่ OSPF รู้จัก |
show ip route ospf |
ตรวจ OSPF Routes |
show ip protocols |
ตรวจ Routing Protocol Configuration |
show running-config | section router ospf |
ตรวจ OSPF Configuration บน Platform ที่รองรับ Syntax นี้ |
คำถามที่พบบ่อย — FAQ
Multi-Area OSPF คืออะไร?
คือการแบ่ง OSPF Routing Domain ออกเป็นหลาย Area โดยใช้ Area 0 เป็น Backbone สำหรับ Multi-Area Architecture
Network ขนาดเล็กจำเป็นต้องแบ่งหลาย Area หรือไม่?
ไม่จำเป็นเสมอไป Single-Area OSPF สามารถเหมาะสมกว่า หาก Network ยังไม่ซับซ้อน และไม่มีเหตุผลด้าน Scale หรือ Architecture ที่ต้องแบ่ง Area
Area 0 สำคัญอย่างไร?
Area 0 เป็น Backbone Area ที่มีบทบาทสำคัญ ต่อ Inter-Area Routing ใน OSPF Architecture
ABR คืออะไร?
ABR หรือ Area Border Router เป็น Router ที่เชื่อม Areas และมีบทบาทในการแลกเปลี่ยน Inter-Area Routing Information
ASBR คืออะไร?
ASBR หรือ Autonomous System Boundary Router เป็น Router ที่นำ External Routing Information เข้าสู่ OSPF Domain ผ่าน Redistribution
ABR กับ ASBR เป็น Router ตัวเดียวกันได้หรือไม่?
ได้ Router หนึ่งตัว สามารถมีหลาย OSPF Roles หาก Configuration และตำแหน่งใน Topology ทำให้ Router มีคุณสมบัติ ของทั้งสอง Role
Stub Area คืออะไร?
เป็น Area ที่จำกัด External Routing Information โดย Type 5 External LSA ไม่ถูกนำเข้ามาตาม Stub Rules และ ABR ให้ Default Route แก่ Area
Totally Stubby Area ต่างจาก Stub อย่างไร?
Totally Stubby Area ลด Inter-Area Routing Information เพิ่มเติมและใช้ Default Route มากขึ้น โดยเป็น Cisco Extension ที่ต้องพิจารณา Vendor Support
NSSA ใช้เมื่อใด?
ใช้เมื่อ Area ต้องการ คุณสมบัติแบบ Stub บางส่วน แต่ยังต้องมี ASBR เพื่อ Redistribute External Route จากภายใน Area
NSSA ใช้ LSA Type ใดสำหรับ External Route?
ใช้ Type 7 NSSA External LSA ภายใน NSSA และสามารถมีการ Translate เป็น Type 5 ที่ ABR ตาม OSPF Rules
Totally Stubby และ Totally NSSA เป็นมาตรฐานเดียวกันทุก Vendor หรือไม่?
ไม่ควรสันนิษฐานเช่นนั้น Totally Stubby และรูปแบบ Totally NSSA ที่พบใน Cisco มี Vendor-specific Behavior จึงต้องตรวจสอบ Documentation เมื่อทำ Multi-Vendor Network
ทุก Area ต้องเชื่อมตรงกับ Area 0 หรือไม่?
ใน OSPF Multi-Area Architecture ปกติ Non-Backbone Areas ต้องมีความสัมพันธ์กับ Backbone ผ่าน ABR ตามกฎของ OSPF Virtual Link สามารถรองรับ สถานการณ์เฉพาะได้ แต่ไม่ควรใช้เพื่อชดเชย Network Design ที่ไม่เหมาะสม โดยไม่มีเหตุผล
สรุป
Multi-Area OSPF เปลี่ยน OSPF จาก Routing Domain แบบ Area เดียว เป็น Hierarchical Architecture ที่แบ่ง Topology ออกเป็นหลาย Area
Area 10
|
ABR
|
v
Area 0
OSPF Backbone
/ \
/ \
ABR ABR
| |
v v
Area 20 Area 30
Router Roles สำคัญ:
Internal Router
|
+-- Inside an Area
Backbone Router
|
+-- Connected to Area 0
ABR
|
+-- Connects OSPF Areas
ASBR
|
+-- Redistributes External Routes
Area Types สำคัญ:
Standard Area
|
+-- Normal OSPF Area
Stub Area
|
+-- Blocks Type 5
+-- Uses Default Route
Totally Stubby
|
+-- Further limits summaries
+-- Cisco extension
NSSA
|
+-- Allows internal ASBR
+-- Uses Type 7
Totally NSSA
|
+-- NSSA with further
summary restriction
หัวใจของการเลือก Area Type ไม่ใช่การเลือกแบบที่ “ลด Route ได้มากที่สุด” แต่คือการเลือก Architecture ให้ตรงกับ Routing Requirements ของ Area นั้น
หลังจากเข้าใจ Multi-Area OSPF แล้ว บทความลำดับต่อไปควรเป็น OSPF Route Summarization: การสรุป Route ที่ ABR และ ASBR พร้อมหลักการออกแบบ Address Plan เพราะเป็นเทคนิคสำคัญ ในการลดจำนวน Routes และสร้าง Routing Architecture ที่จัดการได้ง่ายขึ้น
Share your thoughts here
Join the conversation and share your perspective on this article.