Mạng và phân phối nội dung
VPC, subnet, route table, Security Group / NACL, NAT, endpoint, kết nối giữa các VPC và về on-prem, Route 53, CloudFront, Global Accelerator.
- DomainThiết kế bảo mật
- DomainThiết kế chịu lỗi
- DomainThiết kế hiệu năng cao
- DomainTối ưu chi phí
- 11 sơ đồ
- 10 tình huống
- 13 dịch vụ
5 phút phải nhớ
- VPC nằm trong một Region; subnet nằm trong đúng một AZ.Muốn chịu lỗi một AZ thì mỗi tầng (ALB, app, NAT, database) phải có mặt ở ít nhất 2 AZ.
- Subnet "public" chỉ vì route table của nó có 0.0.0.0/0 → Internet Gateway.Không có công tắc public/private nào khác. Instance còn cần IP công khai (tự gán hoặc Elastic IP) mới ra vào internet trực tiếp được.
- CIDR của VPC và subnet: từ /16 đến /28; mỗi subnet mất 5 địa chỉ (4 đầu, 1 cuối)./24 còn 251 địa chỉ dùng được, /28 còn 11. Không đổi kích thước CIDR đã tạo; thiếu thì thêm CIDR phụ.
- Security Group: gắn vào ENI, chỉ có luật allow, stateful. NACL: gắn vào subnet, có allow và deny, stateless, xét theo số thứ tự.Chặn một IP cụ thể: dùng NACL (hoặc WAF với web). NACL phải mở cả chiều trả lời (cổng tạm 1024–65535).
- NAT Gateway cho máy trong subnet private đi ra internet, không cho ai từ ngoài gọi vào.Kiểu zonal (mặc định) đặt trong subnet public, mỗi AZ một cái để AZ này sập không kéo AZ kia mất internet. Từ 11/2025 có thêm kiểu regional tự trải qua các AZ.
- Gateway endpoint (chỉ S3 và DynamoDB) miễn phí, là một đích trong route table. Interface endpoint (PrivateLink) là ENI có IP riêng, tính tiền theo giờ và GB.Truy cập S3 từ subnet private mà không qua NAT: gateway endpoint, vừa rẻ vừa không ra internet. Từ on-prem hoặc qua Transit Gateway thì phải dùng interface endpoint.
- VPC peering không bắc cầu và không cho CIDR trùng nhau.A–B và B–C không có nghĩa A tới được C. Nhiều VPC cần nói chuyện với nhau, hoặc dùng chung đường về on-prem: Transit Gateway.
- Site-to-Site VPN: mã hoá IPsec qua internet, dựng trong vài phút, mỗi tunnel tới 1,25 Gbps (tunnel băng thông lớn tới 5 Gbps).Hợp làm kết nối tạm hoặc đường dự phòng cho Direct Connect.
- Direct Connect: đường riêng, độ trễ ổn định, cổng 1/10/100/400 Gbps, mất nhiều tuần để có. Mặc định không mã hoá.Cần mã hoá: VPN chạy trên Direct Connect, hoặc MACsec ở cổng hỗ trợ.
- Route 53 có 8 kiểu định tuyến: simple, weighted, latency, failover, geolocation, geoproximity, IP-based, multivalue answer.Đề hay hỏi chọn kiểu nào theo yêu cầu: DR active-passive → failover; theo nước của người dùng → geolocation; nhanh nhất → latency.
- CloudFront cache nội dung ở edge; khoá bucket S3 bằng OAC (Origin Access Control) để chỉ CloudFront đọc được.OAI là cách cũ, không hỗ trợ SSE-KMS hay PUT/DELETE; AWS khuyên dùng OAC.
- Global Accelerator cho 2 IP tĩnh anycast, đưa traffic TCP/UDP vào mạng AWS từ edge gần nhất và chuyển vùng khi endpoint hỏng.Cần IP cố định để khách whitelist, game / VoIP dùng UDP, hay failover nhanh không phụ thuộc cache DNS: Global Accelerator chứ không phải CloudFront.
- Mọi IPv4 công khai đều tính phí theo giờ, kể cả Elastic IP đang gắn vào instance.Đề cũ hay nói EIP gắn vào máy đang chạy là miễn phí: không còn đúng.
Sơ đồ
VPC hai AZ: subnet public, subnet private, NAT mỗi AZ
Từng bước
- Request từ internet vào qua Internet Gateway tới ALB ở subnet public.
- ALB chia tải cho app ở subnet private của cả hai AZ; app không có IP công khai.
- App ghi vào RDS primary; RDS sao chép đồng bộ sang standby ở AZ kia (Multi-AZ).
- App tải bản vá: đi ra qua NAT Gateway cùng AZ rồi tới Internet Gateway; chiều ngược lại không ai khởi tạo được.
Một request đi qua NACL và Security Group
VPC peering không bắc cầu; Transit Gateway làm trung tâm
Từng bước
- Peering là kết nối một-một. A–B và B–C có peering.
- Peering không bắc cầu: A không đi qua B để tới C được; muốn thế phải tạo thêm peering A–C.
- Transit Gateway: mỗi VPC, VPN hay Direct Connect là một attachment; route table của TGW quyết định ai tới được ai.
Direct Connect làm đường chính, Site-to-Site VPN dự phòng
Từng bước
- Bình thường: traffic đi Direct Connect (độ trễ ổn định, băng thông lớn, không mã hoá sẵn).
- DX hỏng: BGP chuyển sang Site-to-Site VPN qua internet, mã hoá IPsec, băng thông thấp hơn.
- Nối nhiều VPC hoặc nhiều Region thì thay virtual private gateway bằng Transit Gateway / Direct Connect gateway.
Gateway endpoint và interface endpoint
Từng bước
- Tới S3 / DynamoDB: route table có prefix list của dịch vụ trỏ tới gateway endpoint. Không qua NAT, không mất phí endpoint.
- Dịch vụ khác: interface endpoint là ENI; private DNS làm tên dịch vụ trỏ về IP riêng này.
- Từ on-prem (hay qua Transit Gateway, peering khác Region) chỉ dùng được interface endpoint.
PrivateLink: cho khách gọi dịch vụ của bạn bằng IP riêng
Từng bước
- App của khách gọi IP riêng của interface endpoint trong VPC của chính họ.
- Traffic đi trong mạng AWS tới NLB của bạn; không cần peering, IGW hay NAT, CIDR trùng không sao.
CloudFront trước S3 riêng tư (OAC) và ALB
Từng bước
- Người dùng vào edge location gần nhất; WAF lọc request trước khi tới cache.
- Cache trượt: CloudFront ký request bằng OAC; bucket policy chỉ cho đúng distribution này, nên không ai đọc thẳng bucket được.
- Đường dẫn /api/* đi tới ALB; có thể cache theo cache policy hoặc không cache.
Route 53 failover giữa hai Region
Từng bước
- Bình thường: health check của primary khoẻ, Route 53 trả địa chỉ Region chính.
- Health check hỏng: Route 53 trả bản ghi secondary; người dùng sang Region phụ khi cache DNS hết TTL.
Global Accelerator: 2 IP tĩnh anycast trước nhiều Region
Từng bước
- Khách whitelist 2 IP tĩnh; traffic vào mạng AWS ngay ở edge gần người chơi.
- Global Accelerator chọn endpoint khoẻ theo vị trí, trọng số và traffic dial; endpoint hỏng thì kết nối mới đi sang Region khác ngay.
DNS hai chiều với Route 53 Resolver endpoint
Từng bước
- On-prem hỏi tên trong private hosted zone: DNS công ty chuyển tiếp tới IP của inbound endpoint.
- EC2 hỏi tên corp.example: Resolver thấy forwarding rule, gửi qua outbound endpoint về DNS công ty.
IPv6: egress-only Internet Gateway
Từng bước
- IPv6 đi ra qua egress-only IGW; chiều trả lời tự được cho qua (stateful).
- IPv4 vẫn đi NAT Gateway như thường.
- Kết nối IPv6 khởi tạo từ internet vào bị chặn.
So sánh nhanh
Security Group và Network ACL
| Security Group | Network ACL | |
|---|---|---|
| Gắn vào | ENI (instance, ALB, RDS…) | Subnet |
| Loại luật | Chỉ allow | Allow và deny |
| Trạng thái | Stateful: chiều trả lời tự được phép | Stateless: phải mở cả chiều vào và chiều ra |
| Thứ tự | Xét tất cả luật | Xét theo số thứ tự, gặp luật khớp là dừng |
| Mặc định | SG mới: chặn mọi chiều vào, cho mọi chiều ra | NACL mặc định: cho tất cả; NACL tự tạo: chặn tất cả |
| Tham chiếu | Được trỏ tới SG khác (ví dụ: chỉ cho SG của ALB gọi vào) | Chỉ dùng dải IP |
Kết nối on-prem với AWS
| Cách | Đi qua | Mã hoá | Băng thông | Thời gian dựng | Dùng khi |
|---|---|---|---|---|---|
| Site-to-Site VPN | Internet | Có (IPsec) | Tới 1,25 Gbps mỗi tunnel (tunnel băng thông lớn: 5 Gbps) | Vài phút | Cần nhanh, rẻ, hoặc làm đường dự phòng |
| Direct Connect | Đường riêng tới DX location | Không, trừ khi thêm VPN hoặc MACsec | Cổng 1/10/100/400 Gbps | Vài tuần | Lượng dữ liệu lớn, cần độ trễ ổn định |
| DX + VPN dự phòng | Cả hai | Theo từng đường | Như DX | Như DX | Cần đường riêng nhưng không chấp nhận mất kết nối khi DX hỏng |
| Client VPN | Internet, từ máy từng người | Có (TLS) | Theo người dùng | Vài phút | Nhân viên làm từ xa vào VPC |
VPC endpoint
| Gateway endpoint | Interface endpoint (PrivateLink) | |
|---|---|---|
| Dịch vụ | Chỉ S3 và DynamoDB | Phần lớn dịch vụ AWS, dịch vụ của bên khác |
| Cách hoạt động | Một đích trong route table | ENI có IP riêng trong subnet của bạn |
| Chi phí | Miễn phí | Theo giờ mỗi AZ + theo GB |
| Dùng từ on-prem, VPC peering khác Region, Transit Gateway | Không | Có |
| Kiểm soát | Endpoint policy + bucket policy (aws:sourceVpce) | Endpoint policy + Security Group |
CloudFront và Global Accelerator
| CloudFront | Global Accelerator | |
|---|---|---|
| Mục đích | Cache và phân phối nội dung HTTP(S) | Đưa traffic vào mạng AWS sớm nhất, chọn endpoint khoẻ |
| Giao thức | HTTP, HTTPS, WebSocket | TCP, UDP |
| Cache | Có | Không |
| Địa chỉ | Tên miền, IP thay đổi | 2 IP tĩnh anycast (dual-stack: thêm 2 IPv6) |
| Failover | Origin group (dự phòng origin) | Tự chuyển sang endpoint khoẻ, không chờ cache DNS hết hạn |
| Hợp với | Web, ảnh, video, API cần cache | Game, VoIP, IoT, ứng dụng cần IP cố định để whitelist |
Route 53: chọn routing policy
| Policy | Trả lời theo | Ví dụ đề |
|---|---|---|
| Simple | Một bản ghi (có thể nhiều IP, trả ngẫu nhiên, không health check) | Một website đơn giản |
| Weighted | Tỉ lệ phần trăm | Chuyển dần 10% traffic sang phiên bản mới |
| Latency | Region có độ trễ thấp nhất với người dùng | Người dùng toàn cầu, app chạy ở nhiều Region |
| Failover | Health check: chính hỏng thì sang phụ | DR active-passive |
| Geolocation | Châu lục / quốc gia / bang của người dùng | Nội dung theo luật từng nước, chặn quốc gia |
| Geoproximity | Khoảng cách tới tài nguyên, có thể nới rộng bằng bias | Kéo thêm traffic về một Region mới |
| IP-based | Dải IP nguồn của người dùng (CIDR) | Khách từ nhà mạng X đi endpoint Y |
| Multivalue answer | Tối đa 8 bản ghi khoẻ, chọn ngẫu nhiên | Cân bằng tải đơn giản ở tầng DNS có health check |
Tình huống đề hay gặp
1EC2 trong subnet private cần tải bản vá từ internet, nhưng không được để ai từ internet kết nối vào. Làm gì?
Xem đáp án
Đúng: NAT Gateway ở subnet public (mỗi AZ một cái), route 0.0.0.0/0 của subnet private trỏ tới NAT Gateway cùng AZ
NAT chỉ cho kết nối khởi tạo từ trong ra. Một NAT dùng chung cho nhiều AZ thì AZ chứa NAT sập là các AZ khác mất internet.
Sai: Gắn Elastic IP cho EC2
Muốn dùng được EIP thì subnet phải có route tới Internet Gateway, tức là thành public: máy lộ ra internet.
Sai: Tạo Internet Gateway và route 0.0.0.0/0 từ subnet private tới nó
Subnet sẽ thành public.
2Ứng dụng trong subnet private đọc ghi S3 rất nhiều; hoá đơn NAT Gateway tăng vọt. Cách rẻ nhất?
Xem đáp án
Đúng: Gateway endpoint cho S3 và thêm vào route table của subnet private
Traffic tới S3 đi thẳng qua endpoint, không qua NAT, không tính phí endpoint.
Sai: Thay NAT Gateway bằng NAT instance
Rẻ hơn chút nhưng phải tự vận hành, vẫn trả tiền truyền dữ liệu, không giải quyết gốc vấn đề.
Sai: Interface endpoint cho S3
Dùng được nhưng tốn tiền theo giờ và GB; gateway endpoint làm được việc này miễn phí.
3Cần chặn một dải IP đang tấn công vào ALB công khai.
Xem đáp án
Đúng: Luật deny trong NACL của subnet chứa ALB, hoặc AWS WAF với IP set gắn vào ALB
NACL có deny theo dải IP; WAF chặn được ở tầng HTTP và còn lọc theo nhiều tiêu chí khác.
Sai: Thêm luật deny vào Security Group của ALB
Security Group không có luật deny.
4Công ty có 15 VPC ở nhiều tài khoản cần nói chuyện với nhau và dùng chung một đường Direct Connect về on-prem.
Xem đáp án
Đúng: Transit Gateway làm trung tâm (chia sẻ qua RAM giữa các tài khoản), gắn Direct Connect gateway vào Transit Gateway
Hub-and-spoke: mỗi VPC một attachment, route table của Transit Gateway quyết định ai đi tới ai.
Sai: Peering đôi một giữa các VPC
15 VPC cần 105 kết nối peering, và peering không bắc cầu nên không dùng chung đường về on-prem được.
5Cần kết nối riêng, băng thông lớn, độ trễ ổn định về on-prem, và không được mất kết nối nếu đường đó hỏng; ngân sách hạn chế.
Xem đáp án
Đúng: Direct Connect làm đường chính, Site-to-Site VPN làm đường dự phòng
Rẻ hơn hai đường DX. Khi cần độ sẵn sàng cao nhất thì dùng hai đường DX ở hai DX location khác nhau.
Sai: Chỉ một đường Direct Connect
Một điểm hỏng duy nhất.
Sai: Hai đường Site-to-Site VPN
Đi qua internet nên độ trễ không ổn định, băng thông giới hạn.
6Bạn bán một dịch vụ chạy sau NLB cho hàng trăm khách hàng; khách muốn gọi bằng IP riêng trong VPC của họ, CIDR của khách có thể trùng với của bạn.
Xem đáp án
Đúng: AWS PrivateLink: tạo endpoint service trên NLB, khách tạo interface endpoint trong VPC của họ
Chỉ lộ đúng dịch vụ, một chiều từ khách tới bạn, CIDR trùng không sao.
Sai: VPC peering với từng khách
Không cho CIDR trùng, khó quản lý hàng trăm kết nối, mở cả mạng thay vì một dịch vụ.
7Website tĩnh trên S3 cần phân phối toàn cầu với HTTPS và không ai được đọc thẳng từ bucket.
Xem đáp án
Đúng: CloudFront với origin là bucket S3 riêng tư, bật OAC, bucket policy chỉ cho đúng distribution đó
Người dùng chỉ vào được qua CloudFront (có cache, HTTPS, WAF), bucket vẫn private.
Sai: Bật S3 static website hosting và để bucket public
Ai cũng đọc thẳng được bucket; website endpoint của S3 không hỗ trợ HTTPS.
Sai: Dùng OAI
Vẫn chạy nhưng là cách cũ; không hỗ trợ SSE-KMS và PUT/DELETE.
8Ứng dụng chạy ở hai Region. Bình thường mọi người vào Region chính; Region chính hỏng thì tự chuyển sang Region phụ.
Xem đáp án
Đúng: Route 53 failover routing: bản ghi primary có health check, bản ghi secondary trỏ sang Region phụ
Health check hỏng thì Route 53 trả bản ghi secondary.
Sai: Latency routing
Chia người dùng ra cả hai Region theo độ trễ, không phải active-passive.
Sai: Weighted 100/0 không health check
Không tự chuyển khi Region chính hỏng.
9Game nhiều người chơi dùng UDP ở 3 Region; khách hàng doanh nghiệp đòi danh sách IP cố định để mở tường lửa.
Xem đáp án
Đúng: AWS Global Accelerator
2 IP tĩnh anycast, hỗ trợ UDP, chọn endpoint khoẻ gần nhất, failover không chờ DNS.
Sai: CloudFront
Chỉ cho HTTP(S)/WebSocket, IP thay đổi.
Sai: Route 53 latency routing
IP vẫn là IP của từng Region và đổi khi thay endpoint; failover phụ thuộc cache DNS.
10Máy chủ on-prem cần phân giải tên trong private hosted zone của Route 53, và EC2 cần phân giải tên miền nội bộ của công ty.
Xem đáp án
Đúng: Route 53 Resolver: inbound endpoint (on-prem hỏi vào VPC) và outbound endpoint + forwarding rule (VPC hỏi ra DNS on-prem)
Đây là cách AWS cho DNS hai chiều trong mạng lai qua VPN hoặc Direct Connect.
Sai: Chép bản ghi DNS sang hai phía bằng tay
Dễ lệch, không tự cập nhật.
Chọn nhanh
Cần nối cái gì với cái gì?
| Khi cần | Dùng |
|---|---|
| Máy trong subnet private cần ra internet (một chiều) | NAT Gateway (zonal: mỗi AZ một cái; hoặc chế độ regional) · xem sơ đồ |
| Từ VPC tới S3 / DynamoDB, không qua internet | Gateway endpoint (miễn phí) · xem sơ đồ |
| Từ VPC tới dịch vụ AWS khác, hoặc tới S3 từ on-prem | Interface endpoint (PrivateLink) · xem sơ đồ |
| Vài VPC cần nói chuyện trực tiếp, CIDR không trùng | VPC peering · xem sơ đồ |
| Nhiều VPC, nhiều tài khoản, dùng chung đường về on-prem | Transit Gateway · xem sơ đồ |
| Cho khách gọi một dịch vụ của mình, CIDR có thể trùng | PrivateLink (endpoint service trên NLB) · xem sơ đồ |
| On-prem ↔ AWS, cần ngay hoặc làm dự phòng | Site-to-Site VPN · xem sơ đồ |
| On-prem ↔ AWS, lưu lượng lớn, độ trễ ổn định | Direct Connect (+ VPN dự phòng) · xem sơ đồ |
| Phân phối web/ảnh/video toàn cầu, có cache | CloudFront (+ OAC cho S3) · xem sơ đồ |
| TCP/UDP toàn cầu, cần IP tĩnh, failover nhanh | Global Accelerator · xem sơ đồ |
| Chuyển sang Region phụ khi Region chính hỏng (DNS) | Route 53 failover routing + health check · xem sơ đồ |
Bẫy hay gặp
- Một NAT Gateway (zonal) dùng chung cho mọi AZ: AZ chứa NAT sập thì các AZ còn lại mất internet.
- NAT Gateway đặt trong subnet private: không ra internet được (NAT kiểu zonal phải nằm ở subnet public có route tới IGW).
- Mở NACL chiều vào mà quên chiều ra cho cổng tạm 1024–65535: kết nối treo vì gói trả lời bị chặn.
- Tưởng peering A–B, B–C thì A tới được C.
- Peering hai VPC có CIDR trùng nhau: không tạo được.
- Dùng Security Group để "chặn" một IP: SG không có deny.
- Truy cập S3 từ subnet private qua NAT trong khi gateway endpoint làm miễn phí.
- Dùng gateway endpoint cho traffic từ on-prem hay qua Transit Gateway: không được, phải dùng interface endpoint.
- Cho rằng Direct Connect tự mã hoá: không, cần VPN trên DX hoặc MACsec.
- Chọn CloudFront cho traffic UDP hoặc khi đề đòi IP tĩnh: đó là Global Accelerator.
- Chọn latency routing cho yêu cầu active-passive: đó là failover routing.
- Nghĩ rằng Elastic IP gắn vào máy đang chạy thì miễn phí.
Dịch vụ trong module
VPCmạng riêng trên AWS
ELBchia tải request
Route 53DNS, trỏ tên miền
Route 53 ResolverDNS nội bộ cho VPC
CloudFrontCDN, cache gần người dùng
Global Acceleratortăng tốc mạng toàn cầu
Transit Gatewayhub trung tâm nối VPC
PrivateLinkkết nối private tới service
Site-to-Site VPNVPN nối mạng on-prem
Client VPNVPN cho người dùng từ xa
Direct Connectđường truyền riêng tới AWS
VPC Latticemạng service-to-service
Network Firewallfirewall mạng cho VPC
Số liệu dễ thay đổi (đã kiểm với tài liệu AWS)
- NAT Gateway hỗ trợ 5 Gbps, tự tăng tới 100 Gbps; 1 triệu gói/giây, tự tăng tới 10 triệu; không gắn Security Group. kiểm ngày 2026-10-16 ↗
- NAT Gateway có chế độ regional, tự trải qua các AZ có workload, không cần subnet public (ra mắt 11/2025). kiểm ngày 2026-10-16 ↗
- IPv4 công khai tính 0,005 USD/giờ, kể cả Elastic IP đang gắn vào tài nguyên. kiểm ngày 2026-10-16 ↗
- Route 53 có 8 routing policy: simple, failover, geolocation, geoproximity, latency, IP-based, multivalue answer, weighted. kiểm ngày 2026-10-16 ↗
- Transit Gateway: tới 100 Gbps mỗi chiều cho mỗi VPC attachment mỗi AZ. kiểm ngày 2026-10-16 ↗
- Direct Connect dedicated: cổng 1, 10, 100, 400 Gbps. kiểm ngày 2026-10-16 ↗
- Site-to-Site VPN: tunnel thường tới 1,25 Gbps, tunnel băng thông lớn tới 5 Gbps; MTU 1446. kiểm ngày 2026-10-16 ↗
- AWS khuyên dùng OAC thay OAI; OAI không hỗ trợ SSE-KMS, PUT/DELETE, Region mới. kiểm ngày 2026-10-16 ↗
- Subnet IPv4 từ /28 tới /16; 4 địa chỉ đầu và 1 địa chỉ cuối bị giữ lại. kiểm ngày 2026-10-16 ↗
- VPC IPv4 từ /16 tới /28; không đổi kích thước CIDR đã có, chỉ thêm CIDR phụ. kiểm ngày 2026-10-16 ↗
- Gateway endpoint miễn phí; không dùng được từ on-prem, peering khác Region, hay qua Transit Gateway. kiểm ngày 2026-10-16 ↗
- Global Accelerator cấp 2 IPv4 tĩnh anycast (dual-stack: thêm 2 IPv6); health check và chuyển endpoint tự động. kiểm ngày 2026-10-16 ↗