Qua quá trình giảng dạy các sinh viên, được biết một số bạn vẫn còn bỡ ngỡ với cách
chia địa chỉ mạng con theo VLSM, phương pháp này sẽ giúp chúng ta kiểm soát được số
mạng mới sinh ra, số mạng đã dùng, số mạng dư thừa còn lại, sau đây tôi sẽ hướng dẫn
các bạn thực hiện việc này một cách dễ dàng bằng ví dụ minh họa. Trước hết, chúng ta
phải hiểu rõ cấu trúc của địa chỉ IP v4 và ý nghĩa của một số khái niệm: ví dụ các lớp địa
chỉ IP v4, Net_id, host_id, Subnet Mask, giải địa chỉ khả dụng, địa chỉ mạng, …
Để chia thành thạo, chúng ta cần nắm rõ một số khái niệm và công thức sau đây:
- Bit, byte.
- Khái niệm về số nhị phân, thập phân.
- Phép toán AND
- Các biến đổi từ nhị phân sang thập phân, từ thập phân sang nhị phân.
- Cấu trúc địa chỉ IP, giới hạn của các lớp IP
- Khái niệm về default mask, mask, subnet, subneting ....!
- Các địa chỉ riêng
Lưu ý:
- Địa chỉ mạng (subnet) : tất cả các bit dành cho phần host bằng 0
- Địa chỉ broadcast: tất cả các bit dành cho phần host bằng 1.
- Địa chỉ đầu tiên hợp lệ: là địa chỉ liền sau địa chỉ mạng (subnet)
- Địa chỉ cuối cùng hợp lệ: là địa chỉ liền trước địa chỉ broadcast
=> phải hiểu rõ và phân biệt khái niệm n và m là gì để áp dụng công thức cho đúng
Công thức:
+ Số subnet được tạo ra: 2^m (m: số bit mượn của phần Host ID) (Chú ý: đáng lẽ
công thức này phải là 2^m – 2 vì phải loại trừ đi 2 mạng đầu tiên – subnet zero và
mạng cuối cùng – subnet broadcast, nhưng với các dòng Router hiện nay của Cisco
đã hỗ trợ lệnh Router(config)# ip subnet-zero do đó ta vẫn có thể sử dụng 2 mạng
đó mà không phải loại trừ bỏ đi)
+ Số host / subnet: 2^n – 2 (n: số bit còn lại của phần Host ID sau khi bị mượn m bit)
+ Subnet Mask mới = Subnet Mask cũ + m (là số bit vừa bị mượn)
+ Địa chỉ khả dụng là các địa chỉ IP có thể gán cho mỗi host, thiết bị
(Lưu ý: có nhiều cách hoặc thủ thuật để tính địa chỉ mạng con , nhưng cách nào cũng
phải dựa vào nền tảng gốc đó là sự thay đổi các bit mượn để sinh ra mạng con mới, do
đó tốt nhất chúng ta nên tham khảo theo phương pháp VLSM)
VÍ DỤ MẪU 1: Cho giải địa chỉ 172.35.0.0/16
, hãy Subnet để cấp cho các mạng con :
A: 320 host
B: 115 host
C: 80 host
D: 30 host
E: 2 host
F: 2 host
G: 2 host
theo phương pháp VLSM?
Hướng dẫn giải mẫu:
- Theo đầu bài cho địa chỉ ban đầu là X: 172.35.0.0/16
=> đổi ra hệ nhị phân ta được:
10101100.00100011.00000000.00000000
11111111.11111111.00000000.00000000
(Phần gạch chân chính là phần bit host, việc chia từ địa chỉ trên thành nhiều Subnet chính
là việc biến đổi – hay gọi là mượn các bit phần host_id chuyển thành các bit Net_id; Nhìn
vào số bit 1 của địa chỉ Subnet Mask ta sẽ phân biệt được danh giới: các bit bên trên bit 1
chính là Net_id, các bit bên trên bit 0 là host_id)
- B1: Theo VLSM thì ta sẽ phải chia X cho các mạng theo chiều giảm dần, tức là chia
cho mạng có số host cao nhất rồi thấp nhất cuối cùng-> sắp xếp lại ta có:
+A: 320
+B:115
+C:80
+D:30
+E:2
+F:2
+G:2
- B2: +Thực hiện chia X cho mạng A đầu tiên, áp dụng công thức: 2^n - 2 ≥ 320 => n=9
(chính là số bit còn lại chưa bị mượn) => số bit đã mượn là m= 32 (là tổng số bit của 1
địa chỉ IP v4) – 16 (số bit thuộc phần Net_id của địa chỉ đã cho) – 9 ( số bit còn lại) = 7
=> SM’ (Subnet Mask mới) = SM (Subnet Mask cũ) + m = 16 + 7 = 23 ( viết tắt là /23)
& số Subnet ( mạng con ) được tạo ra là: 2^m = 27 = 128
với SM’ thay đổi từ /16 thành /23 (các bit trong khoảng này của X đã chuyển sang Octet
thứ 3) nên ta có
101100.00100011.00000000.00000000
172.16. 0. 0
(bit màu đen không in đậm & bị gạch chân chính là 7 bit vừa mượn, việc sinh ra các
Subnet con chính là dựa vào việc thay đổi vị trí và giá trị từ 0 thành 1 của những bit này)
Vậy các mạng con được sinh ra từ X là:
Mạng X1:10101100.00100011.00000000.00000000 -> 172.35.0.0/23
Mạng X2:10101100.00100011.00000010.00000000 -> 172.35.2.0/23
Mạng X3:10101100.00100011.00000100.00000000 -> 172.35.4.0/23
………………… vân vân ………………….
Mạng X127: 10101100.00100011.11111100.00000000 -> 172.35.252.0/23
Mạng X128: 10101100.00100011.11111110.00000000 -> 172.35.254.0/23
(chú ý, để ý ta thấy chỉ cần tính đến mạng thứ 3 trở đi là ta đã có thể tìm được bước nhảy
giữa 2 mạng liền kề là 2: lấy octet tương ứng của mạng sau trừ octet mạng trước)
=> lấy mạng con đầu tiên X1: 172.35.0.0/23 cấp cho mạng A: 320 host
+ Tiếp theo, lấy mạng X2 (là địa chỉ mạng lớn nhất tiếp theo) chia cho mạng B:115 host.
Tương tự trên, theo công thức: 2^n - 2 ≥ 115 => n=7 => m = 32-23-7 = 2
=> SM’ (Subnet Mask mới) = SM (Subnet Mask cũ) + m = 23 +2 = 25 ( viết tắt là /25)
& số Subnet ( mạng con ) được tạo ra là: 2m = 22 = 4
với SM thay đổi từ /23 thành /25 (các bit trong khoảng này của X2 liên quan đến cả Octet
3 và Octet thứ 4) nên ta có các mạng con mới sinh ra từ X2:
Mạng X21:10101100.00100011.00000010.00000000 -> 172.35.2.0/25
Mạng X22:10101100.00100011.00000010.10000000 -> 172.35.2.128/25
Mạng X23:10101100.00100011.00000011.00000000 -> 172.35.3.0/25
Mạng X24:10101100.00100011.00000011.10000000 -> 172.35.3.128/25
=> lấy mạng X21: 172.35.2.0/25 cấp cho mạng B: 115 host
+ Tiếp theo, ta sử dụng mạng con X22: 172.35.2.128/25 để chia cho mạng C: 80 host
Tương tự trên, theo công thức: 2^n - 2 ≥ 80 => n=7 => m = 32-25-7 = 0 (Vừa đẹp, khi giá
trị m=0 điều này chứng tỏ là mạng đang chia chỉ có thể cấp vừa đủ hoặc thừa một số IP
cho mạng có số host đang yêu cầu, ở đây là 115 host- chú ý: khi sử dụng VLSM thì m sẽ
không bao giờ nhận giá trị âm)
=> cấp luôn X22 cho mạng C: 80 host
+ Lúc này cần phải dùng đến giải địa chỉ X23 để chia cho mạng D: 30 host
Tương tự trên, theo công thức: 2^n - 2 ≥ 30 => n=5 => m = 32-25-5 = 2
=> SM’ (Subnet Mask mới) = SM (Subnet Mask cũ) + m = 25 +2 = 27 ( viết tắt là /27)
& số Subnet ( mạng con ) được tạo ra là: 2m = 22 = 4
với SM thay đổi từ /25 thành /27 (các bit trong khoảng này của X23 liên quan đến Octet
thứ 4) nên ta có các mạng con mới sinh ra từ X23:
Mạng X231:10101100.00100011.00000011.00000000 -> 172.35.3.0/27
Mạng X232:10101100.00100011.00000011.00100000 -> 172.35.3.32/27
Mạng X233:10101100.00100011.00000011.01000000 -> 172.35.3.64/27
Mạng X234:10101100.00100011.00000011.01100000 -> 172.35.3.96/27
=> lấy X231: 172.35.3.0/27 cấp cho mạng D: 30 host
+ Lấy X232 chia cho các mạng E: 2 host, F: 2 host, G: 2 host
Tương tự trên, theo công thức: 2^n - 2 ≥ 2 => n=2 => m = 32-27-2 = 3
=> SM’ (Subnet Mask mới) = SM (Subnet Mask cũ) + m = 27 +3 = 30 ( viết tắt là /30)
& số Subnet ( mạng con ) được tạo ra là: 2^m = 23 = 8
với SM thay đổi từ /27 thành /30 (các bit trong khoảng này của X232 liên quan đến Octet
thứ 4) nên ta có các mạng con mới sinh ra từ X232 là:
Mạng X2321:10101100.00100011.00000011.00100000 -> 172.35.3.32/30 Mạng X2322:10101100.00100011.00000011.00100100 -> 172.35.3.36/30
Mạng X2323:10101100.00100011.00000011.00101000 -> 172.35.3.40/30
………………… vân vân ………………….
Mạng X2327:10101100.00100011.00000011.00111000 -> 172.35.3.56/30
Mạng X2328:10101100.00100011.00000011.00111100 -> 172.35.3.60/30
=> lấy mạng Mạng X2321: 172.35.3.32/30 cấp cho mạng E: 2 host
=> lấy mạng Mạng X2322: 172.35.3.36/30 cấp cho mạng F: 2 host
=> lấy mạng Mạng X2323: 172.35.3.40/30 cấp cho mạng G: 2 host
KẾT LUẬN
- Sau khi cấp các địa chỉ mạng con cho các mạng A, B, C, D, E, F, G sẽ còn dư các
mạng chưa được sử dụng (để giành khi cần ta có thể sử dụng để cấp phát hoặc chia
nhỏ tiếp). Phương pháp VLSM này sẽ giúp ta kiểm soát được phần địa chỉ dư thừa
chưa được sử dụng.
(Có thể vào www.vlsm-calc.net để kiểm tra xem kết quả có trùng, đúng hay không)
Xong rồi !!!
Hoặc bạn có thể tham khảo các bài trước của mình để hiểu dõ hơn với các địa chỉ link tại:
Video hướng dẫn chia địa chỉ IP theo VLSM
Thiết lập mạng LAN bằng cách chia subnet
Subnet mask và cách chia
Tổng quan về IP - Subnet mask
Bảng địa chỉ và Subnermask
Tại Đây
Chúc bạn thành công!!!!!!!!!!!!!!!!!!