Công cụ tính địa chỉ Network & Broadcast là gì?
Công cụ này nhận một địa chỉ IPv4 cùng prefix CIDR (ví dụ /24) rồi tính ra địa chỉ network, địa chỉ broadcast, subnet mask, dải host khả dụng và tổng số địa chỉ trong subnet. Đây là công cụ mạng dùng chung, dựa trên các phép toán bit IPv4 tiêu chuẩn, áp dụng được cho mọi dải địa chỉ private hay public.
Cách sử dụng
Nhập bốn octet của địa chỉ IPv4 (mỗi octet từ 0–255) và độ dài prefix của subnet (0–32). Bấm tính để xem ranh giới network và broadcast cùng số lượng host. Ví dụ, host 192.168.1.130/24 thuộc network 192.168.1.0 với broadcast là 192.168.1.255.
Giải thích công thức
Một địa chỉ IPv4 và subnet mask của nó đều là các số 32 bit. Mask của prefix /n có n bit đầu được đặt thành 1 và phần còn lại là 0. Toàn bộ phép tính là các thao tác bit thuần túy:
$$\text{network} = \text{IP} \mathbin{\&} \text{mask}$$ — xóa toàn bộ bit host, để lại địa chỉ gốc của subnet. $$\text{broadcast} = \text{network} \mid (\lnot\,\text{mask})$$ — đặt mọi bit host thành 1, cho ra địa chỉ cao nhất trong subnet. Tổng số địa chỉ là \(2^{32-n}\); số host khả dụng bằng con số đó trừ đi 2 (một địa chỉ network, một địa chỉ broadcast) đối với các prefix tới /30.
$$\text{Usable Hosts} = 2^{\,32 - \text{/n}} - 2$$
Ví dụ minh họa
Với 10.0.0.200 /26: mask của /26 là 255.255.255.192. \(200 \mathbin{\&} 192 = 192\), vậy network là 10.0.0.192. Số bit host = 6, nên tổng = 64 địa chỉ, broadcast = 10.0.0.255, và số host khả dụng = 62.
Câu hỏi thường gặp
Tại sao phải trừ 2 khi tính host khả dụng? Vì địa chỉ network (toàn bộ bit host bằng 0) và địa chỉ broadcast (toàn bộ bit host bằ 1) không thể gán cho thiết bị.
Còn /31 và /32 thì sao? /31 là liên kết point-to-point với 2 địa chỉ khả dụng (theo RFC 3021); /32 là một host đơn lẻ. Công cụ này có báo cáo các trường hợp đặc biệt đó.
Phần host của địa chỉ nhập vào có quan trọng không? Không — bất kỳ địa chỉ nào nằm trong subnet đều cho ra cùng một network và broadcast, vì các bit host đã bị mask bỏ đi.