
IPv4 Subnetting: คำนวณ Subnet อย่างรวดเร็วด้วยวิธีง่ายๆ
Subnetting เป็นทักษะพื้นฐานที่ network engineer ต้องมี ใช้ในการแบ่ง network ออกเป็น subnets เล็กๆ เพื่อจัดการ IP addresses อย่างมีประสิทธิภาพ ลด broadcast domain และเพิ่ม security แต่หลายคนเรียน subnetting แล้วรู้สึกยาก เพราะต้องแปลง binary คำนวณ AND operation
บทความนี้จะสอน วิธีคำนวณ subnet อย่างรวดเร็ว โดยใช้ “magic number method” ที่ไม่ต้องแปลง binary ให้คำนวณได้ในหัวภายในวินาที เหมาะสำหรับสอบ CCNA และใช้งานจริง
พื้นฐาน IPv4 Address
โครงสร้าง
IPv4 address = 32 bits แบ่งเป็น 4 octets (8 bits × 4) เขียนเป็น dotted decimal: 192.168.1.100 แต่ละ octet มีค่า 0-255 ประกอบด้วย 2 ส่วน: Network portion (ระบุ network) + Host portion (ระบุอุปกรณ์ใน network)
Subnet Mask
Subnet mask บอกว่า bits ไหนเป็น network ไหนเป็น host ตัวอย่าง: /24 = 255.255.255.0 (24 bits เป็น network, 8 bits เป็น host) /25 = 255.255.255.128 (25 bits เป็น network, 7 bits เป็น host) /16 = 255.255.0.0 (16 bits เป็น network, 16 bits เป็น host)
CIDR Notation และ Subnet Mask
| CIDR | Subnet Mask | จำนวน Hosts | Usable Hosts |
|---|---|---|---|
| /24 | 255.255.255.0 | 256 | 254 |
| /25 | 255.255.255.128 | 128 | 126 |
| /26 | 255.255.255.192 | 64 | 62 |
| /27 | 255.255.255.224 | 32 | 30 |
| /28 | 255.255.255.240 | 16 | 14 |
| /29 | 255.255.255.248 | 8 | 6 |
| /30 | 255.255.255.252 | 4 | 2 |
| /31 | 255.255.255.254 | 2 | 2 (point-to-point) |
| /32 | 255.255.255.255 | 1 | 1 (host route) |
สูตร: จำนวน hosts = 2^(32 – prefix length), Usable hosts = จำนวน hosts – 2 (network address + broadcast address)
Magic Number Method
วิธีคำนวณ
Magic Number = 256 – subnet mask value ของ octet ที่เป็น “interesting octet” (octet ที่ subnet mask ไม่ใช่ 0 หรือ 255)
ตัวอย่าง: subnet mask 255.255.255.192 (/26) interesting octet = octet ที่ 4 (192) Magic Number = 256 – 192 = 64 subnets เริ่มที่: .0, .64, .128, .192 (เพิ่มทีละ magic number)
ตัวอย่าง: หา Network Address ของ 192.168.1.100/26
Step 1: Subnet mask /26 = 255.255.255.192 Step 2: Magic Number = 256 – 192 = 64 Step 3: Subnets: .0, .64, .128, .192 Step 4: 100 อยู่ระหว่าง .64 กับ .128 คำตอบ: Network = 192.168.1.64/26 First usable = 192.168.1.65 Last usable = 192.168.1.126 Broadcast = 192.168.1.127
ตัวอย่าง: หา Network Address ของ 10.5.200.50/20
Step 1: /20 = 255.255.240.0 interesting octet = octet ที่ 3 (240) Step 2: Magic Number = 256 – 240 = 16 Step 3: Subnets (octet 3): .0, .16, .32, .48, … .192, .208 Step 4: 200 อยู่ระหว่าง .192 กับ .208 คำตอบ: Network = 10.5.192.0/20 Broadcast = 10.5.207.255 Usable: 10.5.192.1 – 10.5.207.254 (4094 hosts)
VLSM (Variable Length Subnet Masking)
แบ่ง Subnet ไม่เท่ากัน
VLSM ใช้ subnet mask ต่างกันสำหรับ subnet ที่ต้องการจำนวน hosts ต่างกัน แทนที่จะใช้ /24 ทุก subnet (เสีย IP เปล่าสำหรับ subnet ที่มี hosts น้อย) ตัวอย่าง: ได้รับ 192.168.1.0/24 ต้องการ: LAN A: 100 hosts → ใช้ /25 (126 usable) = 192.168.1.0/25 LAN B: 50 hosts → ใช้ /26 (62 usable) = 192.168.1.128/26 LAN C: 20 hosts → ใช้ /27 (30 usable) = 192.168.1.192/27 WAN links: 2 hosts × 2 links → ใช้ /30 (2 usable) × 2 = 192.168.1.224/30, 192.168.1.228/30
กฎ VLSM
Allocate subnet ใหญ่ก่อน (จำนวน hosts มากที่สุดก่อน) แล้วค่อยย่อย ทุก subnet ต้อง start ที่ address ที่หารด้วย block size ลงตัว อย่าให้ subnets overlap กัน
Supernetting (Route Summarization)
รวม Subnets
Supernetting ตรงข้ามกับ subnetting รวม subnets เล็กๆ เป็น summary route ตัวอย่าง: 10.1.0.0/24, 10.1.1.0/24, 10.1.2.0/24, 10.1.3.0/24 สามารถ summarize เป็น 10.1.0.0/22 (ครอบ .0-.3) ลด routing table entries ทำให้ routing เร็วขึ้น
เคล็ดลับจำ
| จำ | ค่า |
|---|---|
| Powers of 2 | 2, 4, 8, 16, 32, 64, 128, 256 |
| /24 = 256 hosts | เพิ่ม 1 bit = hosts × 2, ลด 1 bit = hosts ÷ 2 |
| Subnet mask values | 128, 192, 224, 240, 248, 252, 254, 255 |
| Magic number | 256 – mask value = block size = subnet increment |
ทิ้งท้าย: ฝึกจนคำนวณได้ในหัว
Subnetting เป็นทักษะที่ต้องฝึก ไม่ใช่แค่เข้าใจ ใช้ magic number method คำนวณ network address, broadcast, usable range ฝึกวันละ 10 ข้อ ภายใน 1-2 สัปดาห์จะคำนวณได้ในหัวอย่างรวดเร็ว
อ่านเพิ่มเติมเกี่ยวกับ IPAM IP Address Management และ Network Segmentation VLAN ที่ siamlancard.com หรือจาก icafeforex.com และ siam2r.com