Công Cụ Tính Subnet IPv4 Làm Được Gì?
Công cụ tính subnet IPv4 này nhận hai giá trị bạn nhập vào — một Địa Chỉ IP và một Subnet Mask — rồi lập tức tính ra những thông tin quan trọng của mạng mà địa chỉ đó thuộc về. Thay vì phải làm phép AND/OR nhị phân bằng tay, bạn nhận ngay được địa chỉ mạng (network address), địa chỉ broadcast, dải host khả dụng, tổng số host có thể dùng, lớp mạng (network class) và wildcard mask chỉ trong một bước. Công cụ áp dụng cho địa chỉ IPv4 32-bit theo chuẩn dùng phổ biến trên toàn thế giới.
Giải Thích Các Giá Trị Nhập Vào
- Địa Chỉ IP — bất kỳ địa chỉ IPv4 nào ở dạng thập phân có dấu chấm, ví dụ
192.168.1.10. - Subnet Mask — mask ở dạng thập phân có dấu chấm, ví dụ
255.255.255.0, dùng để xác định bao nhiêu bit đại diện cho phần mạng và bao nhiêu bit cho phần host.
Cách Tính Hoạt Động Như Thế Nào
Công cụ xử lý từng octet một cách độc lập:
$$\text{Network} = \text{IP} \mathbin{\&} \text{Mask}$$ $$\text{where (per octet)}\quad \left\{ \begin{aligned} \text{Network} &= \text{IP} \mathbin{\&} \text{Mask} \\ \text{Broadcast} &= \text{IP} \mathbin{|} (\text{Mask} \oplus 255) \\ \text{Wildcard} &= 255 - \text{Mask} \end{aligned} \right.$$ $$\text{CIDR} = \sum_{\text{octets}} \operatorname{bitCount}\!\left(\text{Mask}\right) \qquad \text{Hosts} = 2^{\,32 - \text{CIDR}} - 2$$- Địa chỉ mạng (Network address) = IP AND mask (theo bit). Mỗi octet của IP được mask:
ipOctet & maskOctet. - Địa chỉ broadcast = IP OR mask đảo ngược:
ipOctet | (maskOctet ^ 255). - Tổng số host khả dụng = \(2^{32 - \text{CIDR}} - 2\), trong đó CIDR là số bit 1 có trong mask. Phần −2 là để loại bỏ địa chỉ mạng và địa chỉ broadcast.
- Host đầu tiên = địa chỉ mạng + 1; Host cuối cùng = địa chỉ broadcast − 1.
- Lớp mạng (Network class) được xác định từ octet đầu tiên: 1–126 = A, 128–191 = B, 192–223 = C, 224–239 = D (Multicast), 240–255 = E (Dự phòng).
- Wildcard mask = giá trị nghịch đảo của subnet mask.
Ví Dụ Cụ Thể
Nhập IP 192.168.1.10 và mask 255.255.255.0:
- Địa chỉ mạng: 192.168.1.10 AND 255.255.255.0 = 192.168.1.0
- Địa chỉ broadcast: 192.168.1.10 OR 0.0.0.255 = 192.168.1.255
- CIDR = 24 bit, nên tổng số host = \(2^{32-24} - 2 = 254\)
- Host đầu tiên: 192.168.1.1; Host cuối cùng: 192.168.1.254
- Lớp mạng: C; Wildcard mask: 0.0.0.255
Câu Hỏi Thường Gặp
Tại sao lại trừ đi 2 trong số host? Địa chỉ đầu tiên trong một subnet được dành làm địa chỉ định danh mạng (network identifier) và địa chỉ cuối cùng làm địa chỉ broadcast, nên cả hai đều không thể gán cho thiết bị nào.
Wildcard mask dùng để làm gì? Đây là giá trị nghịch đảo theo bit của subnet mask (ví dụ 255.255.255.0 → 0.0.0.255) và thường được dùng trong danh sách kiểm soát truy cập (ACL) của router cũng như cấu hình OSPF.
Công cụ có hỗ trợ trực tiếp ký hiệu CIDR không? Bạn nhập mask ở dạng thập phân có dấu chấm, nhưng bên trong công cụ sẽ tự suy ra tiền tố CIDR bằng cách đếm số bit 1 trong mask của bạn để tính tổng số host.