ข้ามไปเนื้อหาหลัก
เครือข่าย· ~16 นาที· อัปเดตล่าสุด

Subnet: Public และ Private

แบ่งโซนในเครือข่าย โซนไหนออกเน็ตได้ โซนไหนซ่อนไว้

แบ่งโซนในบ้าน

การแบ่ง Subnet เหมือนแบ่งโซนในบ้าน — Public Subnet คือหน้าร้านที่ลูกค้าเดินเข้ามาซื้อของได้ ส่วน Private Subnet คือห้องนิรภัยด้านในที่คนนอกไม่มีทางเข้าถึงได้

สิ่งที่แยกความแตกต่างระหว่าง Subnet สองแบบคือ "เส้นทางออก" หรือที่เรียกว่า Route Table. หาก Subnet นั้นมีเส้นทางเชื่อมออกสู่ Internet Gateway (IGW - ประตูสู่อินเทอร์เน็ต) มันจะกลายเป็น Public Subnet แต่ถ้าไม่มี มันก็จะเป็น Private Subnet ซึ่งจะปลอดภัยกว่ามาก

VPC: subnet สาธารณะออกเน็ตได้ ส่วน private ถูกซ่อน

Internet
VPC 10.0.0.0/16
Public Subnet 10.0.1.0/24
IGWประตูเน็ต
EC2 (web)มี public IP
NAT GWทางออก private
Private Subnet 10.0.2.0/24
EC2 (app)ไม่มี public IP
RDSฐานข้อมูล

เน็ตเข้าถึง public subnet ผ่าน IGW ได้ · private subnet ออกเน็ตผ่าน NAT ได้ แต่เน็ตเข้าตรง ๆ ไม่ได้

VPC / Subnet Visualizer

สร้าง subnet แล้วลองส่ง request จากอินเทอร์เน็ต — ดูว่าทำไม private subnet ถึงเข้าตรง ๆ ไม่ได้

Internet
VPC 10.0.0.0/16
Public Subnet

route → IGW (มี public IP)

Private Subnet

ไม่มีเส้นทางจากเน็ตเข้าตรง ๆ

ลองเพิ่ม subnet แล้วส่ง request ดูว่า public/private ต่างกันยังไง
  • Public Subnet (โซนสาธารณะ) — เอาไว้วางของที่ต้องรับ traffic จากอินเทอร์เน็ตโดยตรง เช่น Web Server, Load Balancer, NAT Gateway
  • Private Subnet (โซนส่วนตัว) — เอาไว้วางของที่ควรซ่อน ไม่ให้คนเข้าถึงตรงๆ เช่น Application Server, ฐานข้อมูล (RDS)
  • แพตเทิร์นยอดนิยมในการออกแบบ: ชั้น Web อยู่ Public, ส่วนชั้น App และ Database อยู่ Private

สรุป Key Takeaways

  • public subnet = route ออก IGW ได้, private subnet = ไม่มีเส้นทางตรงสู่เน็ต
  • วาง web/LB/NAT ใน public · วาง app/DB ใน private
  • ห้ามวางฐานข้อมูลใน public subnet

คำถามที่พบบ่อย

Public กับ private subnet ต่างกันตรงไหนกันแน่

ต่างที่ route table ไม่ใช่ตัว subnet — subnet ที่มี route 0.0.0.0/0 ชี้ไป Internet Gateway = public ส่วนที่ไม่มี = private นี่คือนิยามที่ข้อสอบใช้จริง ไม่ใช่ชื่อที่เราตั้ง

วาง subnet ยังไงให้ได้ HA

สร้าง subnet คู่ (public+private) ในอย่างน้อย 2 AZ แล้วกระจายทรัพยากรข้ามโซน — ALB ต้องการ subnet อย่างน้อย 2 AZ อยู่แล้ว และ RDS Multi-AZ ก็ต้องมี subnet group ครอบหลายโซน — โครง 2 AZ × (public+private) คือแบบแผนมาตรฐานของทุกโจทย์

ลองทำ Quiz ท้ายบท

คำถามแนวข้อสอบของโมดูลนี้ 5 ข้อ · เฉลยทันที

อ่านจบแล้วอย่าลืมทำเครื่องหมาย