1. Tại sao chúng ta phải chia địa chỉ IP Address?
Chia địa chỉ IP trong mạng máy tính là một phần quan trọng trong việc quản lý và sử dụng tài nguyên mạng. Dưới đây là một số lý do chúng ta cần chia địa chỉ IP:
- Định tuyến (Routing): Khi một gói tin được gửi từ nguồn đến đích trong mạng, địa chỉ IP giúp xác định đường đi của gói tin qua các thiết bị mạng. Chia địa chỉ IP thành các mạng con cho phép chúng ta áp dụng các quy tắc định tuyến khác nhau cho từng mạng con, tối ưu hóa việc truyền tải dữ liệu trong mạng.
- Quản lý và phân quyền truy cập: Chia địa chỉ IP thành các mạng con cho phép quản lý và phân quyền truy cập dễ dàng hơn. Bằng cách gán các mạng con cho các phòng ban, tầng lớp hoặc khu vực cụ thể trong mạng, ta có thể thiết lập các quy tắc truy cập và bảo mật khác nhau cho từng mạng con.
- Quản lý địa chỉ IP: Khi mạng lớn hơn, việc chia địa chỉ IP giúp quản lý và theo dõi các địa chỉ IP dễ dàng hơn. Thay vì theo dõi một dải địa chỉ IP duy nhất, chúng ta có thể quản lý các dải địa chỉ IP nhỏ hơn và gắn kết chúng với các mạng con và thiết bị cụ thể.
- Tối ưu hóa sử dụng tài nguyên: Chia địa chỉ IP cho phép tối ưu hóa việc sử dụng tài nguyên mạng. Bằng cách phân chia địa chỉ IP thành các mạng con nhỏ hơn, ta có thể phân bổ địa chỉ IP theo nhu cầu sử dụng thực tế và tránh lãng phí các địa chỉ IP không sử dụng.
- Hỗ trợ mở rộng mạng: Chia địa chỉ IP cho phép mở rộng mạng một cách linh hoạt. Khi mạng mở rộng hoặc có thêm thiết bị, chúng ta có thể dễ dàng thêm các mạng con mới và gán các địa chỉ IP cho chúng mà không ảnh hưởng đến toàn bộ mạng.
2. Quy trình chia địa chỉ IP Address.
Quy trình chia địa chỉ IP address thường được thực hiện trong mạng máy tính để cung cấp các địa chỉ IP cho các thiết bị và mạng con. Dưới đây là quy trình cơ bản để chia địa chỉ IP:
- Xác định địa chỉ IP và subnet mask: Đầu tiên, bạn cần xác định địa chỉ IP cho mạng hoặc thiết bị cần chia. Địa chỉ IP được biểu diễn bằng một chuỗi các số và dấu chấm. Sau đó, bạn cần xác định subnet mask, đại diện cho phần mạng và phần máy con của địa chỉ IP.
- Xác định số lượng mạng con cần chia: Bạn cần quyết định số lượng mạng con mà bạn muốn chia từ mạng chính. Điều này sẽ xác định số bit subnet được sử dụng trong subnet mask.
- Tính toán số lượng địa chỉ IP có sẵn trong mỗi mạng con: Sử dụng số bit subnet, bạn có thể tính toán số lượng địa chỉ IP có sẵn trong mỗi mạng con. Công thức tính số lượng địa chỉ IP có sẵn là 2^(số bit host) – 2, với số bit host là số bit không thuộc phần mạng trong subnet mask.
- Xác định các phạm vi địa chỉ IP cho mỗi mạng con: Dựa vào số lượng địa chỉ IP có sẵn trong mỗi mạng con, bạn có thể xác định các phạm vi địa chỉ IP cho từng mạng con. Điều này bao gồm địa chỉ IP mạng, địa chỉ IP đầu và địa chỉ IP cuối của mỗi mạng con.
- Gán địa chỉ IP cho mỗi thiết bị hoặc mạng con: Cuối cùng, bạn gán các địa chỉ IP đã được xác định cho mỗi thiết bị hoặc mạng con tương ứng. Điều này có thể được thực hiện thông qua cấu hình tại thiết bị mạng hoặc máy chủ DHCP (Dynamic Host Configuration Protocol) để tự động cấp phát địa chỉ IP.
3. Các ví dụ về chia địa chỉ IP Address.
- Xác định số lượng subnet con
Khi ta tăng số bit subnet lên, ta có thể sử dụng công thức sau để tính số lượng subnet con:
Số lượng subnet con = 2^n
Trong đó n là số bit subnet mới.
Ví dụ 1: Tôi có subnet 192.168.1.0/24 trong trường hợp của chúng ta cần chia subnet này thành 2 subnet con thì ta tăng số bit subnet lên 1, nghĩa là n = 1.
Số lượng subnet con = 2^1 = 2
Theo công thức trên ta tính được số lượng subnet con là 2 khi chúng ta tăng 1 bit của subnet.
Ví dụ 2: Tôi muốn chia subnet 192.168.1.0/24 thành 5 subnet con thì làm thế nào? Đơn giản hãy sử dụng công thức trên là Số lượng subnet con = 2^n
.
Số lượng subnet con = 2^1 = 2
Số lượng subnet con = 2^2 = 4
Số lượng subnet con = 2^3 = 8
Theo tính toán trên thì nếu tăng 1 bit của subnet chính thì số subnet con mới chỉ có 2, nếu tăng 2 bit thì số subnet mới chỉ có 4 nhưng chúng ta cần có 5 subnet.
Vậy để có 5 subnet con chúng ta chỉ có thể tăng thêm 3 bit cho subnet chính, trường hợp tăng 3 bit cho subnet chính chúng ta sẽ có 8 subnet con, bắt buộc phải tăng thêm 3 thì mới cung cấp đủ số lượng là 5 subnet con (chúng ta có thể để dành 3 subnet con bị dư cho việc khác).
- Xác định subnet, range IP khả dụng, địa chỉ broadcast.
Chia subnet 192.168.1.0/25 thành 2 mạng con và xác định subnet, range IP khả dụng, địa chỉ broadcast.
Cách giải như sau, với subnet ban đầu 192.168.1.0/25, ta có 7 bit host (32 – 25 = 7) và 2^7 = 128 địa chỉ IP host có thể sử dụng.
Để chia thành hai mạng con, chúng ta cần tăng số bit subnet lên ít nhất 1 bit. Tăng 1 bit subnet sẽ cho phép chúng ta có 2^1 = 2 mạng con.
Sau khi tăng số bit subnet lên, subnet mask sẽ thay đổi từ /25 thành /26. Số bit host trong mỗi mạng con sẽ giảm xuống 6 bit (32 – 26 = 6).
Tiếp theo, chúng ta sẽ sử dụng các địa chỉ IP có sẵn trong subnet ban đầu (192.168.1.0/25) để chia thành hai mạng con:
- Mạng con 1: Địa chỉ mạng (Network): 192.168.1.0/26, Địa chỉ Broadcast: 192.168.1.63/26
- Địa chỉ IP đầu tiên (địa chỉ host): 192.168.1.1
- Địa chỉ IP cuối cùng (địa chỉ host): 192.168.1.62
- Mạng con 2: Địa chỉ mạng (Network): 192.168.1.64/26, Địa chỉ Broadcast: 192.168.1.127/26
- Địa chỉ IP đầu tiên (địa chỉ host): 192.168.1.65
- Địa chỉ IP cuối cùng (địa chỉ host): 192.168.1.126
Với việc chia subnet 192.168.1.0/25 thành hai mạng con, từ 192.168.1.0/26 đến 192.168.1.63/26 và từ 192.168.1.64/26 đến 192.168.1.127/26, chúng ta có 2 mạng con với mỗi mạng có 62 địa chỉ IP host có thể sử dụng (từ địa chỉ IP đầu đến địa chỉ IP cuối).
- Xác định Subnet Mask
Công thức để tính Subnet Mask (địa chỉ mạng con) phụ thuộc vào số bit mạng (prefix length) của subnet. Các bước sau đây sẽ giúp bạn tính toán Subnet Mask:
- Xác định số bit mạng (prefix length) của subnet. Đây là số bit mạng mà bạn muốn dành cho địa chỉ mạng con. Ví dụ: /24, /25, /26, vv.
- Số bit host có thể tính bằng cách lấy tổng số bit của địa chỉ IP (32 bit) trừ đi số bit mạng. Ví dụ: Nếu bạn có một subnet /24, thì số bit host sẽ là 32 – 24 = 8 bit.
- Chuyển số bit mạng thành một chuỗi liên tục gồm các bit 1, theo sau là các bit 0 cho số bit host. Ví dụ: Với subnet /24, chuỗi bit sẽ là “11111111 00000000 00000000 00000000”.
- Chia chuỗi bit thành các octet (mỗi octet gồm 8 bit) để tạo Subnet Mask. Ví dụ: “11111111 00000000 00000000 00000000” chia thành 4 octet: 255.0.0.0.
- Subnet Mask sẽ là địa chỉ IP đầy đủ của mạng con, xác định địa chỉ mạng và phần mạng con.
Ví dụ: Nếu bạn muốn tạo một subnet /25, sẽ có 7 bit host (32 – 25 = 7 bit). Chuỗi bit sẽ là “11111111 11111111 11111111 10000000”, chia thành các octet sẽ là 255.255.255.128.
Hoặc bạn có thể học thuộc và ghi nhở bảng này để lấy được Subnet Mask. Dưới đây là bảng tham khảo cho các prefix tương ứng với subnet mask cơ bản trong IPv4:
Prefix Subnet Mask
------------------------------
/1 128.0.0.0
/2 192.0.0.0
/3 224.0.0.0
/4 240.0.0.0
/5 248.0.0.0
/6 252.0.0.0
/7 254.0.0.0
/8 255.0.0.0
/9 255.128.0.0
/10 255.192.0.0
/11 255.224.0.0
/12 255.240.0.0
/13 255.248.0.0
/14 255.252.0.0
/15 255.254.0.0
/16 255.255.0.0
/17 255.255.128.0
/18 255.255.192.0
/19 255.255.224.0
/20 255.255.240.0
/21 255.255.248.0
/22 255.255.252.0
/23 255.255.254.0
/24 255.255.255.0
/25 255.255.255.128
/26 255.255.255.192
/27 255.255.255.224
/28 255.255.255.240
/29 255.255.255.248
/30 255.255.255.252
/31 255.255.255.254
/32 255.255.255.255
Ví dụ đơn giản nếu Prefix là /24 thì Subnet Mask sẽ là 255.255.255.0 hoặc Prefix là 30 thì sẽ là 255.255.255.252.
Tôi thường tính mẹo nhanh kiểu này, ví dụ tính Subnet Mask cho Prefix là /30, ta có tổng số bit host là 32 – 30 = 2, tổng số IP sẽ là 2^tổng số bit host
, áp dụng công thức ta có 2 ^ 2 = 4. Ta lấy số 256 – 4 = 252, vậy Subnet Mask của /30 sẽ là 255.255.255.252.