Giải thích chi tiết cách tính subnet và CIDR trong mạng IPv4

Bài viết này giúp bạn hiểu rõ cách tính subnet và CIDR trong mạng IPv4, giải thích ý nghĩa của các ký hiệu như /24, /32, cách xác định số lượng IP, subnet mask và phạm vi địa chỉ sử dụng. Nội dung được trình bày từ cơ bản đến thực tế, phù hợp cho lập trình viên, DevOps và quản trị hệ thống.

Giải thích chi tiết cách tính subnet và CIDR trong mạng IPv4

1. Giới thiệu: Vì sao cần hiểu CIDR và subnet?

Trong hệ thống mạng máy tính, việc chia nhỏ mạng (subnetting) là kỹ năng nền tảng nhưng cực kỳ quan trọng đối với:

  • Quản trị hệ thống (SysAdmin)

  • DevOps / Cloud Engineer

  • Lập trình viên làm việc với Docker, Kubernetes, VPN, Firewall

CIDR (Classless Inter-Domain Routing) là cách biểu diễn dải IP hiện đại, thay thế cho mô hình Class A/B/C cũ, giúp việc phân chia mạng linh hoạt và hiệu quả hơn.

2. Cấu trúc của địa chỉ IPv4

Một địa chỉ IPv4 có 32 bit, thường được viết thành 4 octet (mỗi octet 8 bit):


192.168.1.10 = 11000000.10101000.00000001.00001010

Trong đó:

  • Một phần dùng để xác định mạng (network)

  • Phần còn lại dùng để xác định thiết bị (host)

CIDR chính là cách nói bao nhiêu bit trong 32 bit này thuộc về network.

3. CIDR là gì? (ký hiệu /24, /32, …)

CIDR được viết dưới dạng:

<IP>/<số bit network>

Ví dụ:

  • 192.168.1.0/24

  • 10.0.0.5/32

Ý nghĩa:

  • /24 → 24 bit đầu là network

  • /32 → 32 bit đều là network

4. Công thức tính subnet cơ bản

4.1 Số bit host

Số bit host = 32 − CIDR

4.2 Số lượng IP trong subnet

Tổng số IP = 2^(số bit host)

4.3 Số IP sử dụng được

IP usable = Tổng IP − 2

Trừ 2 vì:

  • 1 IP network

  • 1 IP broadcast

5. Ví dụ chi tiết: mạng /24

5.1 Phân tích

192.168.1.0/24
  • Bit network: 24

  • Bit host: 32 − 24 = 8

  • Tổng IP: 2⁸ = 256

  • IP dùng được: 254

5.2 Subnet mask

/24 = 255.255.255.0

Dạng nhị phân:

11111111.11111111.11111111.00000000

5.3 Dải IP

Loại Địa chỉ
Network 192.168.1.0
Host đầu 192.168.1.1
Host cuối 192.168.1.254
Broadcast 192.168.1.255

6. Ví dụ đặc biệt: mạng /32

8.8.8.8/32

Đặc điểm:

  • Bit host = 0

  • Tổng IP = 1

  • Không có broadcast

  • Không có dải

Dùng khi:

  • Firewall whitelist

  • Route đến 1 máy duy nhất

  • VPN / WireGuard / Tailscale

7. Các CIDR thường gặp và cách hiểu nhanh

CIDR Subnet mask Tổng IP Ý nghĩa thực tế
/32 255.255.255.255 1 1 host
/30 255.255.255.252 4 Point-to-point
/29 255.255.255.248 8 Mini subnet
/28 255.255.255.240 16 Nhóm nhỏ
/24 255.255.255.0 256 LAN phổ biến
/16 255.255.0.0 65,536 Network lớn

8. Cách tính nhanh không cần giấy bút

  • Mỗi octet có giá trị tối đa 256

  • CIDR chia hết cho 8 → subnet mask rất dễ nhớ:

    • /8 → 255.0.0.0

    • /16 → 255.255.0.0

    • /24 → 255.255.255.0

  • CIDR lẻ (vd /26):

    /26 → 32 − 26 = 6 bit host
         → 2⁶ = 64 IP

9. Ứng dụng thực tế trong hệ thống

Firewall

allow from 203.113.10.5/32

→ Chỉ cho đúng 1 IP

Docker network

subnet: 172.18.0.0/24

→ 254 container

Cloud / VPN

  • AWS Security Group

  • WireGuard AllowedIPs

  • Kubernetes Pod CIDR

10. Kết luận

Hiểu CIDR không chỉ là kiến thức mạng cơ bản mà là chìa khóa để thiết kế hệ thống an toàn, tối ưu và mở rộng tốt.

Chỉ cần nắm:

  • IPv4 có 32 bit

  • CIDR = số bit network

  • Host = 32 − CIDR

  • IP = 2^(host)

Bạn đã có thể làm chủ subnetting trong hầu hết các tình huống thực tế.

Tài liệu này phù hợp cho:

  • Dev mới học hạ tầng

  • SysAdmin

  • DevOps

  • Cloud Engineer