Công cụ chuyển dải IP sang CIDR là gì?
Công cụ này nhận vào một địa chỉ IPv4 bắt đầu và một địa chỉ IPv4 kết thúc, rồi trả về khối CIDR đơn nhỏ nhất (dạng /prefix) đủ lớn để bao trọn toàn bộ dải địa chỉ. Ký pháp CIDR (Classless Inter-Domain Routing) biểu diễn một khối địa chỉ bằng một địa chỉ gốc, theo sau là dấu gạch chéo và độ dài prefix, ví dụ 192.168.0.0/24. Đây là chuẩn dùng chung cho IPv4 và hoạt động trên mọi quốc gia hay hệ thống mạng.
Cách sử dụng
Nhập địa chỉ đầu tiên của dải vào ô Địa chỉ IP bắt đầu và địa chỉ cuối cùng vào ô Địa chỉ IP kết thúc, sau đó bấm tính. Công cụ sẽ chuyển cả hai địa chỉ thành số nguyên 32 bit, đếm số địa chỉ nằm giữa chúng và tính ra độ dài prefix của khối lũy thừa của 2 nhỏ nhất chứa được tất cả.
Giải thích công thức
Mỗi địa chỉ IPv4 tương ứng với một số nguyên 32 bit. Số lượng địa chỉ trong dải là \(\text{count} = \text{end} - \text{start} + 1\). Một khối CIDR luôn chứa số lượng địa chỉ là lũy thừa của 2: khối /n chứa \(2^{32-n}\) địa chỉ. Để bao được count địa chỉ, ta làm tròn lên đến lũy thừa của 2 kế tiếp,
khi đó prefix là \(32 - \log_2(\text{blockSize})\).
Ví dụ minh họa
Xét dải từ 192.168.0.0 đến 192.168.0.255. Khi đổi sang số nguyên, chúng lần lượt là 3.232.235.520 và 3.232.235.775, nên \(\text{count} = 256\). Vì \(256 = 2^8\), kích thước khối là 256 và prefix là \(32 - 8 = 24\), cho kết quả /24.
Câu hỏi thường gặp
Kết quả có luôn nằm đúng trên ranh giới CIDR không? Prefix tính ra là giá trị nhỏ nhất vừa đủ với số lượng địa chỉ, nhưng một khối CIDR đơn còn phải canh đúng theo ranh giới địa chỉ. Nếu địa chỉ bắt đầu của bạn không nằm trên ranh giới đó, dải có thể cần được chia thành nhiều khối nhỏ hơn.
Nếu tôi nhập ngược thứ tự thì sao? Công cụ sẽ tự động hoán đổi địa chỉ đầu và cuối nếu địa chỉ kết thúc nhỏ hơn.
Công cụ này có dùng cho IPv6 không? Không — công cụ này chỉ hỗ trợ các dải IPv4 (32 bit).