Bỏ qua

01.IP plan

Hướng Dẫn Chi Tiết Thiết Kế Mạng & Lập Kế Hoạch IP cho AWS VPC

Dành cho người học chứng chỉ và kỹ sư triển khai thực tế


1. Tổng quan về VPC và vai trò của IP Planning

VPC (Virtual Private Cloud) là dịch vụ AWS cho phép bạn tạo mạng riêng ảo, nơi bạn toàn quyền kiểm soát dải IP, subnet, routing, NAT...
IP Planning là bước xác định cách phân chia, sử dụng địa chỉ IP cho toàn bộ hệ thống. Đây là bước cực kỳ quan trọng vì:

  • Khó (gần như không thể) thay đổi sau khi hệ thống đã vận hành ổn định.
  • Ảnh hưởng đến khả năng mở rộng, bảo mật, kết nối hybrid (on-premise, multi-cloud, cross-account).
  • Nhiều câu hỏi trong các đề thi AWS Solutions Architect/DevOps/SysOps đều liên quan đến subnetting, routing, overlapping CIDR...

2. Các bước lập kế hoạch mạng cho VPC

Bước 1: Thu thập yêu cầu thực tế

  • Có bao nhiêu site/văn phòng, region, account AWS?
  • Có kết nối với mạng nội bộ/on-premise, cloud khác (Azure, GCP), vendor/partner không?
  • Có cần HA (high availability), DR (disaster recovery) không?

Bước 2: Liệt kê & loại trừ các dải IP đã sử dụng

  • Lấy danh sách toàn bộ CIDR blocks đã dùng ở các hệ thống khác (on-premise, site cũ, cloud, vendor).
  • Không được phép trùng lặp (overlap) với các dải này!

Ví dụ thực tế: - 192.168.10.0/24: Văn phòng Brisbane - 10.0.0.0/16: AWS pilot - 172.31.0.0/16: Azure pilot - 10.128.0.0/9: Google Cloud default (rộng từ 10.128.0.0 → 10.255.255.255) - 192.168.15.0/24: London - 192.168.20.0/24: New York - 192.168.25.0/24: Seattle

chọn dải 10.16.0.0/12 → 10.127.255.255 (vừa rộng vừa tránh trùng default cloud/vendor). - Tránh các dải phổ biến như 10.0.0.0/16, 10.1.0.0/16, 10.10.0.0/16 vì nhiều nơi dùng mặc định.

Bước 4: Dự tính số lượng VPC/subnet cần thiết

  • Số region dự kiến (production, DR, future growth)
  • Số account AWS (prod/dev/test/ops/security)
  • Mỗi account có thể cần nhiều VPC (prod, staging, test...)
  • Mỗi VPC nên có ít nhất 2-3 subnet (multi-tier: web, app, db) × số AZ (2-3 zone)

Cách tính dự phòng:
Giả sử có 5 region, mỗi region cần 2 VPC, có 4 account:
5 regions × 2 VPC × 4 accounts = 40 VPC
→ Mỗi VPC cấp 1 CIDR block riêng, không trùng nhau.


3. Thiết kế phân chia subnet và routing

a. Thiết kế phân tầng (multi-tier subnetting)

  • Public Subnet: Đặt Load Balancer, NAT Gateway (các resource cần internet)
  • Private Subnet: Đặt EC2 server, App server, không public internet
  • DB Subnet: Đặt database, chỉ cho phép truy cập private, thường nằm ở AZ riêng

Ví dụ:
- VPC 10.16.0.0/16
- Public: 10.16.1.0/24
- Private: 10.16.2.0/24
- DB: 10.16.3.0/24

b. High Availability với Availability Zone

  • Mỗi subnet/tier phải chia ra nhiều AZ (vd: 10.16.1.0/24 tại AZ1, 10.16.101.0/24 tại AZ2...)
  • Đảm bảo khi 1 AZ fail, hệ thống vẫn hoạt động.

c. Routing và kết nối

  • Route Table cho phép định tuyến subnet đến internet, NAT Gateway, hoặc VPN/Direct Connect về on-premise.
  • Security GroupNetwork ACL để kiểm soát traffic vào/ra subnet/instance.

4. Lưu ý thực tế khi vận hành (đi làm)

  • Không dùng default VPC cho production (rất nhiều cloud engineer mắc lỗi này → rủi ro bảo mật và dễ trùng dải IP).
  • Document rõ toàn bộ sơ đồ mạng, dải IP, mapping subnet (dễ cho vận hành, troubleshooting và audit sau này).
  • Chỉ phân subnet đủ dùng, không để quá nhỏ (nhiều dịch vụ AWS cần IP riêng: ENI, ALB, NAT, ...)
  • Kiểm tra và quản lý IP Exhaustion: Khi subnet quá nhỏ, cạn IP, autoscaling sẽ fail.
  • Tích hợp CloudFormation/Terraform để quản lý IaC: Giúp versioning và scale hạ tầng dễ dàng.
  • Đặt tên resource hợp lý, có quy chuẩn: VD: vpc-prod-us-east-1, subnet-app-a, subnet-db-b...

5. Một số câu hỏi thi chứng chỉ AWS thường gặp về VPC & Subnet

  1. Bạn có một VPC 10.10.0.0/16. Muốn tạo 4 subnet không trùng nhau, mỗi subnet ít nhất 500 IP. Hãy xác định CIDR cho từng subnet.
    → Đáp án: /23 sẽ đủ (510 usable IP/subnet), ví dụ:
  2. 10.10.0.0/23
  3. 10.10.2.0/23
  4. 10.10.4.0/23
  5. 10.10.6.0/23

  6. Bạn cần kết nối VPC với on-premise qua VPN, nhưng CIDR của VPC trùng với on-premise. Giải pháp?
    → Đổi CIDR VPC hoặc dùng NAT/Proxy/Transit Gateway, nhưng tốt nhất đổi CIDR VPC ngay từ đầu.

  7. Subnet nào sẽ cho EC2 ra internet trực tiếp?
    → Subnet có default route (0.0.0.0/0) trỏ về Internet Gateway.

  8. Subnet có thể nằm trên nhiều AZ không?
    → Không! Một subnet chỉ nằm trên một AZ.

  9. Có thể mở rộng CIDR block cho VPC sau khi tạo không?
    → Có, với một số giới hạn (AWS cho phép add thêm secondary CIDR, nhưng không xóa/giảm CIDR cũ).


6. Checklist khi triển khai thực tế

  • [ ] Thu thập toàn bộ CIDR đã sử dụng (on-prem, cloud, vendor)
  • [ ] Chọn dải CIDR mới, tránh overlap
  • [ ] Chia subnet theo tier và AZ
  • [ ] Cấu hình route table, NAT, IGW
  • [ ] Đặt tên và document rõ ràng
  • [ ] Test kết nối (internal, external, VPN)
  • [ ] Đưa vào quản lý IaC (CloudFormation/Terraform)

7. Tài liệu tham- VPC Subnet Calculator


Hy vọng bài viết này giúp bạn vững vàng cả khi ôn thi lẫn khi triển khai hệ thống thực tế! Nếu muốn xem ví dụ code Terraform hoặc có thắc mắc thực tế, hãy để lại phản hồi nhé!

Bình luận