0Pricing
Cloud & IT Cert Prep · บทเรียน

สถาปัตยกรรม VPC และบล็อก CIDR

ออกแบบ VPC ด้วยช่วง CIDR ที่เหมาะสม และแบ่งเป็นซับเน็ตสาธารณะและส่วนตัวข้าม Availability Zones

สถาปัตยกรรม VPC และบล็อก CIDR เป็นบทเรียน Cloud & IT Cert Prep ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cloud & IT Cert Prep และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

VPC คืออะไร

Amazon Virtual Private Cloud (VPC) คือเครือข่ายส่วนตัวที่แยกออกจากกันในเชิงตรรกะภายใน Region ของ AWS ซึ่งคุณเป็นผู้กำหนดและควบคุม ทุกบัญชี AWS จะมี VPC เริ่มต้น (CIDR 172.31.0.0/16) ในแต่ละ Region แต่สถาปัตยกรรมระบบจริงจะใช้ VPC ที่กำหนดเองเสมอ VPC ครอบคลุม Availability Zone ทั้งหมดใน Region ของตน และให้คุณควบคุมการกำหนดที่อยู่ IP, subnet, ตารางเส้นทาง เกตเวย์อินเทอร์เน็ต และความปลอดภัยได้อย่างเต็มที่ ทรัพยากรภายใน VPC จะถูกแยกออกจาก VPC อื่นและอินเทอร์เน็ต เว้นแต่คุณจะกำหนดค่าการเชื่อมต่อไว้อย่างชัดเจน

# Create a custom VPC
aws ec2 create-vpc \
  --cidr-block 10.0.0.0/16 \
  --tag-specifications 'ResourceType=vpc,Tags=[{Key=Name,Value=production-vpc}]'

บล็อก CIDR: ช่วงที่อยู่ IP

บล็อก CIDR (Classless Inter-Domain Routing) กำหนดช่วงที่อยู่ IP ของ VPC หรือ subnet โดยใช้รูปแบบ x.x.x.x/prefix ความยาวคำนำหน้าจะกำหนดจำนวนที่อยู่ IP ในช่วงนั้น: /16 = 65,536 ที่อยู่, /24 = 256 ที่อยู่, /28 = 16 ที่อยู่ (ขนาด subnet ขั้นต่ำบน AWS) สำหรับ VPC AWS อนุญาตให้ใช้บล็อก CIDR ตั้งแต่ /16 (ใหญ่ที่สุด) ถึง /28 (เล็กที่สุด) เลือก CIDR ของ VPC ที่ (1) ไม่ทับซ้อนกับเครือข่ายภายในองค์กร (สำหรับ VPN/Direct Connect ในอนาคต) (2) มีขนาดใหญ่พอสำหรับ subnet ที่วางแผนไว้ และ (3) ใช้พื้นที่ที่อยู่ส่วนตัวตาม RFC 1918 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)

# Common VPC CIDR choices:
# 10.0.0.0/16   -> 65,534 usable IPs (largest common choice)
# 10.0.0.0/20   -> 4,094 usable IPs
# 10.0.0.0/24   -> 254 usable IPs (too small for most VPCs)

# AWS reserves 5 IPs in each subnet:
# x.x.x.0   Network address
# x.x.x.1   VPC router
# x.x.x.2   DNS server
# x.x.x.3   Future use
# x.x.x.255  Broadcast

Subnet: การแบ่ง VPC

subnet คือส่วนหนึ่งของช่วงที่อยู่ IP ของ VPC ซึ่งอยู่ภายใน Availability Zone เดียว Subnet แบ่งเป็น สาธารณะ (มีเส้นทางไปยังเกตเวย์อินเทอร์เน็ต) หรือ ส่วนตัว (ไม่มีเส้นทางอินเทอร์เน็ตโดยตรง) แนวทางปฏิบัติที่ดีสำหรับสถาปัตยกรรมสามระดับทั่วไปคือ สร้างระดับ subnet อย่างน้อยสามระดับ ได้แก่ สาธารณะ (ตัวจัดสรรภาระงาน โฮสต์ Bastion), private-app (อินสแตนซ์ EC2 งาน ECS) และ private-data (RDS, ElastiCache) จากนั้นจำลองแต่ละระดับข้าม AZ อย่างน้อยสองแห่งเพื่อให้มีความพร้อมใช้งานสูง

# Create a public subnet in AZ-a
aws ec2 create-subnet \
  --vpc-id vpc-12345678 \
  --cidr-block 10.0.1.0/24 \
  --availability-zone us-east-1a \
  --tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=public-1a}]'

# Create a private subnet in AZ-a
aws ec2 create-subnet \
  --vpc-id vpc-12345678 \
  --cidr-block 10.0.10.0/24 \
  --availability-zone us-east-1a \
  --tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=private-app-1a}]'

การออกแบบโครงร่าง CIDR ของ VPC หลาย AZ

ตัวอย่างการออกแบบ CIDR ทั่วไปสำหรับ VPC ที่มี CIDR 10.0.0.0/16 ครอบคลุมสอง AZ และสามระดับ: Public AZ-a: 10.0.1.0/24; Public AZ-b: 10.0.2.0/24; Private-App AZ-a: 10.0.10.0/24; Private-App AZ-b: 10.0.11.0/24; Private-Data AZ-a: 10.0.20.0/24; Private-Data AZ-b: 10.0.21.0/24 โครงร่างนี้เหลือพื้นที่สำหรับเพิ่ม subnet ของ AZ-c (10.0.3.0/24, 10.0.12.0/24, 10.0.22.0/24) โดยไม่ต้องวางแผนรูปแบบ CIDR ใหม่ทั้งหมด ควรออกแบบโดยคำนึงถึงการเติบโตในอนาคตเสมอ

IP ที่สงวนไว้ในแต่ละ Subnet

AWS สงวน ที่อยู่ IP สี่รายการแรกและรายการสุดท้ายในทุก subnet สำหรับ subnet 10.0.1.0/24: 10.0.1.0 (เครือข่าย), 10.0.1.1 (เราเตอร์ VPC), 10.0.1.2 (DNS/DHCP), 10.0.1.3 (ใช้ในอนาคต) และ 10.0.1.255 (การกระจายสัญญาณ) subnet /24 มี IP ทั้งหมด 256 รายการ หักที่สงวนไว้ 5 รายการ จึงใช้งานได้ 251 รายการ subnet /28 (ขนาดขั้นต่ำ) มี IP 16 รายการ หักที่สงวนไว้ 5 รายการ จึงใช้งานได้ 11 รายการ เรื่องนี้สำคัญเมื่อกำหนดขนาด subnet ให้เหมาะกับจำนวนทรัพยากร (อินสแตนซ์ EC2 ฟังก์ชัน Lambda ที่ใช้ VPC เป็นต้น) ที่คุณวางแผนจะนำไปใช้งาน

บล็อก CIDR รองของ VPC

คุณสามารถเพิ่ม บล็อก CIDR รอง ได้สูงสุดสี่บล็อกให้กับ VPC ที่มีอยู่แล้วโดยไม่ต้องสร้างใหม่ วิธีนี้มีประโยชน์เมื่อ CIDR หลักถูกใช้งานจนเต็มแล้ว (subnets เต็มทั้งหมด) หรือเมื่อคุณต้องการเพิ่มพื้นที่ที่อยู่จากช่วง RFC 1918 อื่นเพื่อกรณีใช้งานเฉพาะ เช่น เครือข่ายสำหรับพ็อด Kubernetes โดยบล็อก CIDR รองจะอยู่ภายใต้ข้อจำกัดบางประการ เช่น ไม่สามารถเพิ่ม CIDR ที่ทับซ้อนกันได้ และไม่สามารถใช้ช่วงที่อยู่สาธารณะที่ไม่ใช่ RFC 1918 บางช่วงได้ ควรวางแผนขนาด CIDR ของ VPC อย่างรอบคอบตั้งแต่ต้น เพื่อลดความจำเป็นในการใช้บล็อก CIDR รอง

# Add a secondary CIDR to an existing VPC
aws ec2 associate-vpc-cidr-block \
  --vpc-id vpc-12345678 \
  --cidr-block 10.1.0.0/16

การเพียร์ VPC: การเชื่อมต่อ VPC

การเพียร์ VPC สร้างการเชื่อมต่อเครือข่ายส่วนตัวระหว่าง VPC สองรายการ ทำให้ทรัพยากรของทั้งสองฝั่งสื่อสารกันโดยใช้ที่อยู่ IP ส่วนตัวได้ VPC ที่เพียร์กันอาจอยู่ในบัญชีเดียวกัน คนละบัญชี หรือแม้แต่คนละ Region (การเพียร์ข้าม Region) ข้อกำหนดคือ CIDR ของ VPC ทั้งสองรายการต้องไม่ทับซ้อนกัน ข้อจำกัดคือการเพียร์ ไม่ทำงานแบบส่งต่อเป็นทอด ๆ—หาก VPC-A เพียร์กับ VPC-B และ VPC-B เพียร์กับ VPC-C, VPC-A จะไม่สามารถสื่อสารกับ VPC-C ผ่าน VPC-B ได้ หากต้องการการเชื่อมต่อแบบเมชเต็มรูปแบบระหว่าง VPC จำนวนมาก ให้ใช้ AWS Transit Gateway แทน

AWS Transit Gateway

AWS Transit Gateway (TGW) ทำหน้าที่เป็นศูนย์กลางเครือข่าย—เราเตอร์บนคลาวด์—ที่เชื่อมต่อ VPC, VPN และการเชื่อมต่อ Direct Connect หลายรายการ แทนที่จะสร้างการเชื่อมต่อการเพียร์ VPC จำนวน N*(N-1)/2 สำหรับเมชเต็มรูปแบบของ VPC จำนวน N คุณสามารถเชื่อมต่อ VPC และการเชื่อมต่อแต่ละรายการเข้ากับ Transit Gateway แล้วให้ระบบกำหนดเส้นทางการรับส่งข้อมูลระหว่างกันได้ TGW รองรับตารางเส้นทางที่ช่วยให้คุณควบคุมได้ว่าการเชื่อมต่อใดสามารถสื่อสารกับการเชื่อมต่อใด ซึ่งทำให้แบ่งส่วนเครือข่ายได้ เช่น แยก VPC สำหรับระบบจริงออกจาก VPC สำหรับการพัฒนา แม้อยู่บน TGW เดียวกัน

การเปิดใช้ DNS ใน VPC

การตั้งค่า DNS สองรายการเป็นตัวควบคุมการแปลงชื่อใน VPC enableDnsSupport: เมื่อเป็น true (ค่าเริ่มต้น) VPC จะใช้ตัวแก้ไข DNS ที่ AWS จัดให้ที่ 169.254.169.253 หรือ IP ลำดับที่สองของ CIDR ของ VPC (เช่น 10.0.0.2 สำหรับ 10.0.0.0/16) enableDnsHostnames: เมื่อเป็น true (ต้องเปิดใช้สำหรับ VPC ที่กำหนดเอง และเปิดไว้เป็นค่าเริ่มต้นสำหรับ VPC เริ่มต้น) อินสแตนซ์ EC2 ใน VPC จะได้รับชื่อโฮสต์ DNS เช่น ip-10-0-1-15.ec2.internal ต้องเปิดใช้ทั้งสองรายการจึงจะใช้งานโซนโฮสต์ส่วนตัวของ Route 53 ภายใน VPC ได้

# Enable DNS support and DNS hostnames in a VPC
aws ec2 modify-vpc-attribute \
  --vpc-id vpc-12345678 \
  --enable-dns-support '{"Value": true}'
aws ec2 modify-vpc-attribute \
  --vpc-id vpc-12345678 \
  --enable-dns-hostnames '{"Value": true}'

บันทึกโฟลว์ VPC

บันทึกโฟลว์ VPC จะเก็บข้อมูลเมตาเกี่ยวกับการรับส่งข้อมูลเครือข่ายที่ไหลผ่าน VPC ได้แก่ IP ต้นทางและปลายทาง พอร์ต โปรโตคอล จำนวนไบต์ที่ถ่ายโอน และการรับหรือปฏิเสธการรับส่งข้อมูล บันทึกโฟลว์สามารถเผยแพร่ไปยัง CloudWatch Logs (เพื่อค้นหาด้วย Logs Insights) หรือ S3 (เพื่อวิเคราะห์ด้วย Athena) ได้ บันทึกเหล่านี้มีคุณค่ามากสำหรับการสืบสวนด้านความปลอดภัย (ใครเชื่อมต่อกับอะไร) การวิเคราะห์การรับส่งข้อมูล (ระบุโฟลว์ที่ใช้แบนด์วิดท์สูง) และการแก้ไขปัญหา (เหตุใดการเชื่อมต่อจึงถูกปฏิเสธ) บันทึกโฟลว์ทำงานได้ในระดับ VPC, subnet หรือ ENI แต่ละรายการ

# Enable flow logs for a VPC, deliver to CloudWatch
aws ec2 create-flow-logs \
  --resource-type VPC \
  --resource-ids vpc-12345678 \
  --traffic-type ALL \
  --log-destination-type cloud-watch-logs \
  --log-group-name /aws/vpc/flowlogs \
  --deliver-logs-permission-arn arn:aws:iam::123456789012:role/FlowLogsRole

การวางแผนการเชื่อมต่อ

ก่อนสร้าง VPC ควรวางแผนความต้องการด้านการเชื่อมต่อในอนาคตทั้งหมด: การเชื่อมต่อกับเครือข่ายภายในองค์กร (VPN หรือ Direct Connect)—ตรวจสอบให้แน่ใจว่า CIDR ของ VPC ไม่ทับซ้อนกับ subnets ภายในองค์กร; การเชื่อมต่อระหว่าง VPC (การเพียร์หรือ Transit Gateway)—วางแผน CIDR ที่ไม่ทับซ้อนกันระหว่าง VPC ทั้งหมดในองค์กร; การเข้าถึงบริการ AWS (ปลายทาง VPC สำหรับ S3, DynamoDB และ SSM เพื่อหลีกเลี่ยงการส่งการรับส่งข้อมูลผ่านอินเทอร์เน็ต); และ การกำหนดขนาด subnet—เผื่อพื้นที่ในแต่ละ subnet สำหรับการใช้ที่อยู่ IP จากพ็อด EKS ฟังก์ชัน Lambda และอินเทอร์เฟซเครือข่ายแบบยืดหยุ่น

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความเข้าใจแนวคิด AWS Solutions Architect (SAA-C03) จากบทเรียนนี้

สรุปบทเรียน

ในบทเรียนนี้ คุณได้เรียนรู้ว่า VPC คือเครือข่ายที่แยกออกจากกันในเชิงตรรกะภายใน Region ซึ่งกำหนดด้วยบล็อก CIDR ที่แบ่งออกเป็น subnets สาธารณะและส่วนตัวในหลาย AZ, AWS สงวน IP ไว้ 5 รายการในทุก subnet ดังนั้นจึงต้องคำนึงถึงการลดจำนวนนี้เมื่อกำหนดขนาด subnet และ การเพียร์ VPC กับ Transit Gateway เชื่อมต่อ VPC แบบส่วนตัว แต่ช่วง CIDR ต้องไม่ทับซ้อนกัน บทถัดไปเราจะศึกษา Internet Gateways และตารางเส้นทาง

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

บทเรียน “สถาปัตยกรรม VPC และบล็อก CIDR” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “สถาปัตยกรรม VPC และบล็อก CIDR” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cloud & IT Cert Prep ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “สถาปัตยกรรม VPC และบล็อก CIDR”

ออกแบบ VPC ด้วยช่วง CIDR ที่เหมาะสม และแบ่งเป็นซับเน็ตสาธารณะและส่วนตัวข้าม Availability Zones คุณปฏิบัติ Cloud & IT Cert Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cloud & IT Cert Prep หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cloud & IT Cert Prep บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “สถาปัตยกรรม VPC และบล็อก CIDR” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cloud & IT Cert Prep นี้ได้ไหม

ได้ บทเรียน Cloud & IT Cert Prep ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. สถาปัตยกรรม VPC และบล็อก CIDR
  2. เกตเวย์อินเทอร์เน็ตและตารางเส้นทาง
  3. เกตเวย์ NAT และซับเน็ตส่วนตัว
  4. ACL เครือข่ายเทียบกับกลุ่มความปลอดภัย
← กลับไปที่ Cloud & IT Cert Prep