Khi học IPv4 Subnetting, rất nhiều người bắt đầu bằng việc học thuộc:
/25 = 126 host
/26 = 62 host
/27 = 30 host
/28 = 14 host
Hoặc cố nhớ bảng:
128 → 192 → 224 → 240 → 248 → 252 → 254
Nhưng nếu hiểu các bit thực sự thay đổi như thế nào, bạn sẽ không cần phụ thuộc quá nhiều vào việc học thuộc.
Chỉ cần nắm một quy luật:
Và công thức đứng phía sau chính là:
🔢 1. 2ⁿ – CON SỐ ĐỨNG SAU SUBNETTING
Một địa chỉ IPv4 có tổng cộng 32 bits, gồm:
Network Bits + Host Bits = 32 bits
Khi thực hiện subnetting, chúng ta mượn một số bit từ phần Host để tạo thêm các subnet.
Gọi số bit được mượn là n.
Trong bài toán chia một network thành các subnet bằng nhau:
Ví dụ:
Điều quan trọng cần nhìn ra:
Nhưng đổi lại, chúng ta mất đi 1 Host Bit, khiến số host có thể chứa trong mỗi subnet giảm xuống.
Đây chính là sự đánh đổi cốt lõi của Subnetting.
🌐 2. BÀI TOÁN: CHIA /24 THÀNH 8 SUBNET
Giả sử có network:
192.168.1.0/24
Yêu cầu:
Trước tiên, cần tìm số bit phải mượn:
2ⁿ ≥ 8
→ 2³ = 8
→ n = 3
Như vậy, cần mượn 3 Host Bits.
Prefix ban đầu:
/24
Sau khi mượn 3 bit:
24 + 3 = /27
Subnet Mask:
255.255.255.224
Chúng ta vừa biến một network /24 thành 8 subnet /27.
🧮 3. TẠI SAO /27 LẠI TẠO ĐƯỢC 8 SUBNET?
Hãy nhìn octet cuối dưới dạng binary.
Với /24:
11111111.11111111.11111111.00000000
Sau khi chuyển sang /27:
11111111.11111111.11111111.11100000
Ba bit đầu tiên của phần Host đã được mượn để làm Subnet Bits:
111 | 00000
Trong đó:
Ba Subnet Bits có thể tạo ra 8 tổ hợp:
000 → 001 → 010 → 011 → 100 → 101 → 110 → 111
Tức là:
Vì vậy, /27 không phải là một con số cần học thuộc rằng “có 8 subnet”.
Mà là:
💻 4. VẬY 30 HOST TỪ ĐÂU RA?
IPv4 có 32 bits.
Khi prefix là /27:
32 − 27 = 5 Host Bits
5 Host Bits tạo ra:
Trong subnet IPv4 thông thường:
Vì vậy:
Kết quả:
/27 → 8 subnet → 32 addresses/subnet → 30 usable hosts/subnet
Điểm quan trọng:
8 subnet và 30 host không xuất phát từ cùng một phép tính.
🧠 5. NHÌN SUBNETTING BẰNG 3 CÔNG THỨC
Thay vì học thuộc từng prefix, hãy hình thành một “tam giác tư duy”: Subnet Bits
n = số bit mượn
→ 2ⁿ = số subnet Host Bits
h = 32 − Prefix Length
→ 2ʰ = tổng số địa chỉ/subnet Usable Hosts
→ 2ʰ − 2 = số host sử dụng được
Áp dụng với /27:
Mượn 3 bit
→ 2³ = 8 subnet
Còn 5 Host Bits
→ 2⁵ = 32 addresses
Usable
→ 32 − 2 = 30 hosts
Chỉ với 3 bước này, bạn có thể tự tính rất nhiều bài toán subnetting thay vì phải nhớ một bảng cố định.
📋 6. 8 SUBNET THỰC TẾ ĐƯỢC TẠO RA NHƯ THẾ NÀO?
Với:
192.168.1.0/27
Subnet Mask:
255.255.255.224
Block Size:
256 − 224 = 32
Vì vậy Network Address sẽ tăng từng 32:
.0 → .32 → .64 → .96 → .128 → .160 → .192 → .224
Bây giờ nhìn từng subnet:
.0 → .31
Network: .0 | Usable: .1 – .30 | Broadcast: .31
.32 → .63
Network: .32 | Usable: .33 – .62 | Broadcast: .63
.64 → .95
Network: .64 | Usable: .65 – .94 | Broadcast: .95
.96 → .127
Network: .96 | Usable: .97 – .126 | Broadcast: .127
.128 → .159
Network: .128 | Usable: .129 – .158 | Broadcast: .159
.160 → .191
Network: .160 | Usable: .161 – .190 | Broadcast: .191
.192 → .223
Network: .192 | Usable: .193 – .222 | Broadcast: .223
.224 → .255
Network: .224 | Usable: .225 – .254 | Broadcast: .255
Nhìn vào đây, có thể thấy rất rõ:
🎯 7. GẶP BÀI TOÁN MỚI, ĐỪNG VỘI NHỚ BẢNG
Ví dụ:
Đừng tìm ngay trong bảng Subnet Mask.
Hãy tính:
2³ = 8 → chưa đủ.
2⁴ = 16 → đủ.
→ Cần mượn 4 bits.
Prefix mới:
/24 + 4 = /28
Host Bits còn lại:
32 − 28 = 4 bits
Số địa chỉ mỗi subnet:
2⁴ = 16
Usable Hosts:
16 − 2 = 14
Kết quả:
Bạn không cần học thuộc:
Bạn vừa tự tính ra kết quả từ các bit.
🔥 8. QUY LUẬT CẦN NHỚ
Hãy nhìn Subnetting theo một chiều:
Mượn thêm bit
↓
Nhiều Subnet Bits hơn
↓
Nhiều subnet hơn
↓
Ít Host Bits hơn
↓
Ít host hơn trên mỗi subnet
Ví dụ:
/24 → /25 → /26 → /27 → /28
Số subnet khi chia từ một /24 tăng:
2 → 4 → 8 → 16 → 32
Trong khi số usable host mỗi subnet giảm:
126 → 62 → 30 → 14 → 6
Đó không phải những con số rời rạc.
Tất cả đều là kết quả của việc dịch chuyển các bits.
🚀 KẾT
Subnetting không đơn giản là bài toán học thuộc bảng.
Nó là bài toán đọc và hiểu bit.
Khi biết mượn bao nhiêu bit, còn lại bao nhiêu Host Bits, những con số như 8 subnet, 32 địa chỉ hay 30 usable hosts sẽ tự xuất hiện.
Và đó cũng là lý do 2ⁿ là một trong những công thức quan trọng khi học IPv4 Subnetting.
Đừng học thuộc Subnetting. Hãy hiểu vì sao những con số đó xuất hiện.
/25 = 126 host
/26 = 62 host
/27 = 30 host
/28 = 14 host
Hoặc cố nhớ bảng:
128 → 192 → 224 → 240 → 248 → 252 → 254
Nhưng nếu hiểu các bit thực sự thay đổi như thế nào, bạn sẽ không cần phụ thuộc quá nhiều vào việc học thuộc.
Chỉ cần nắm một quy luật:
Mượn bit → tăng số subnet → giảm số host.
Và công thức đứng phía sau chính là:
2ⁿ
🔢 1. 2ⁿ – CON SỐ ĐỨNG SAU SUBNETTING
Một địa chỉ IPv4 có tổng cộng 32 bits, gồm:
Network Bits + Host Bits = 32 bits
Khi thực hiện subnetting, chúng ta mượn một số bit từ phần Host để tạo thêm các subnet.
Gọi số bit được mượn là n.
Trong bài toán chia một network thành các subnet bằng nhau:
Số subnet = 2ⁿ
Ví dụ:
- Mượn 1 bit → 2¹ = 2 subnet
- Mượn 2 bit → 2² = 4 subnet
- Mượn 3 bit → 2³ = 8 subnet
- Mượn 4 bit → 2⁴ = 16 subnet
Điều quan trọng cần nhìn ra:
Mỗi lần mượn thêm 1 bit, số subnet tăng gấp đôi.
Nhưng đổi lại, chúng ta mất đi 1 Host Bit, khiến số host có thể chứa trong mỗi subnet giảm xuống.
Đây chính là sự đánh đổi cốt lõi của Subnetting.
🌐 2. BÀI TOÁN: CHIA /24 THÀNH 8 SUBNET
Giả sử có network:
192.168.1.0/24
Yêu cầu:
Chia network này thành 8 subnet bằng nhau.
Trước tiên, cần tìm số bit phải mượn:
2ⁿ ≥ 8
→ 2³ = 8
→ n = 3
Như vậy, cần mượn 3 Host Bits.
Prefix ban đầu:
/24
Sau khi mượn 3 bit:
24 + 3 = /27
Subnet Mask:
255.255.255.224
Chúng ta vừa biến một network /24 thành 8 subnet /27.
🧮 3. TẠI SAO /27 LẠI TẠO ĐƯỢC 8 SUBNET?
Hãy nhìn octet cuối dưới dạng binary.
Với /24:
11111111.11111111.11111111.00000000
Sau khi chuyển sang /27:
11111111.11111111.11111111.11100000
Ba bit đầu tiên của phần Host đã được mượn để làm Subnet Bits:
111 | 00000
Trong đó:
- 111 → 3 Subnet Bits
- 00000 → 5 Host Bits còn lại
Ba Subnet Bits có thể tạo ra 8 tổ hợp:
000 → 001 → 010 → 011 → 100 → 101 → 110 → 111
Tức là:
2³ = 8 subnet
Vì vậy, /27 không phải là một con số cần học thuộc rằng “có 8 subnet”.
Mà là:
/27 mượn 3 bit từ /24 → 2³ = 8 subnet.
💻 4. VẬY 30 HOST TỪ ĐÂU RA?
IPv4 có 32 bits.
Khi prefix là /27:
32 − 27 = 5 Host Bits
5 Host Bits tạo ra:
2⁵ = 32 địa chỉ/subnet
Trong subnet IPv4 thông thường:
- 1 địa chỉ dành cho Network Address
- 1 địa chỉ dành cho Broadcast Address
Vì vậy:
2⁵ − 2 = 30 usable hosts
Kết quả:
/27 → 8 subnet → 32 addresses/subnet → 30 usable hosts/subnet
Điểm quan trọng:
8 subnet và 30 host không xuất phát từ cùng một phép tính.
- 3 bit được mượn → 2³ = 8 subnet
- 5 Host Bits còn lại → 2⁵ − 2 = 30 usable hosts
🧠 5. NHÌN SUBNETTING BẰNG 3 CÔNG THỨC
Thay vì học thuộc từng prefix, hãy hình thành một “tam giác tư duy”: Subnet Bits
n = số bit mượn
→ 2ⁿ = số subnet Host Bits
h = 32 − Prefix Length
→ 2ʰ = tổng số địa chỉ/subnet Usable Hosts
→ 2ʰ − 2 = số host sử dụng được
Áp dụng với /27:
Mượn 3 bit
→ 2³ = 8 subnet
Còn 5 Host Bits
→ 2⁵ = 32 addresses
Usable
→ 32 − 2 = 30 hosts
Chỉ với 3 bước này, bạn có thể tự tính rất nhiều bài toán subnetting thay vì phải nhớ một bảng cố định.
📋 6. 8 SUBNET THỰC TẾ ĐƯỢC TẠO RA NHƯ THẾ NÀO?
Với:
192.168.1.0/27
Subnet Mask:
255.255.255.224
Block Size:
256 − 224 = 32
Vì vậy Network Address sẽ tăng từng 32:
.0 → .32 → .64 → .96 → .128 → .160 → .192 → .224
Bây giờ nhìn từng subnet:
.0 → .31
Network: .0 | Usable: .1 – .30 | Broadcast: .31
.32 → .63
Network: .32 | Usable: .33 – .62 | Broadcast: .63
.64 → .95
Network: .64 | Usable: .65 – .94 | Broadcast: .95
.96 → .127
Network: .96 | Usable: .97 – .126 | Broadcast: .127
.128 → .159
Network: .128 | Usable: .129 – .158 | Broadcast: .159
.160 → .191
Network: .160 | Usable: .161 – .190 | Broadcast: .191
.192 → .223
Network: .192 | Usable: .193 – .222 | Broadcast: .223
.224 → .255
Network: .224 | Usable: .225 – .254 | Broadcast: .255
Nhìn vào đây, có thể thấy rất rõ:
Mỗi subnet có 32 địa chỉ và cách nhau 32 đơn vị.
🎯 7. GẶP BÀI TOÁN MỚI, ĐỪNG VỘI NHỚ BẢNG
Ví dụ:
Có network /24, cần ít nhất 12 subnet.
Đừng tìm ngay trong bảng Subnet Mask.
Hãy tính:
2³ = 8 → chưa đủ.
2⁴ = 16 → đủ.
→ Cần mượn 4 bits.
Prefix mới:
/24 + 4 = /28
Host Bits còn lại:
32 − 28 = 4 bits
Số địa chỉ mỗi subnet:
2⁴ = 16
Usable Hosts:
16 − 2 = 14
Kết quả:
16 subnet, 14 usable hosts/subnet
Bạn không cần học thuộc:
/28 = 14 hosts
Bạn vừa tự tính ra kết quả từ các bit.
🔥 8. QUY LUẬT CẦN NHỚ
Hãy nhìn Subnetting theo một chiều:
Mượn thêm bit
↓
Nhiều Subnet Bits hơn
↓
Nhiều subnet hơn
↓
Ít Host Bits hơn
↓
Ít host hơn trên mỗi subnet
Ví dụ:
/24 → /25 → /26 → /27 → /28
Số subnet khi chia từ một /24 tăng:
2 → 4 → 8 → 16 → 32
Trong khi số usable host mỗi subnet giảm:
126 → 62 → 30 → 14 → 6
Đó không phải những con số rời rạc.
Tất cả đều là kết quả của việc dịch chuyển các bits.
🚀 KẾT
Subnetting không đơn giản là bài toán học thuộc bảng.
Nó là bài toán đọc và hiểu bit.
Khi biết mượn bao nhiêu bit, còn lại bao nhiêu Host Bits, những con số như 8 subnet, 32 địa chỉ hay 30 usable hosts sẽ tự xuất hiện.
Và đó cũng là lý do 2ⁿ là một trong những công thức quan trọng khi học IPv4 Subnetting.
Đừng học thuộc Subnetting. Hãy hiểu vì sao những con số đó xuất hiện.