VLSM (Variable Length Subnet Mask) là phương pháp chia mạng con với subnet mask thay đổi, cho phép tối ưu hóa số host cung cấp và số host mà hệ thống yêu cầu
Thường áp dụng cho các trường hợp yêu cầu chia mạng con với độ dài subnet mask thay đổi, yêu cầu chặt chẽ về số lượng host trong mỗi subnet.
Phương pháp chia mạng con VLSM giúp quản lý dãy địa chỉa IP chặt chẽ hơn, 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 đó là: - Số subnet được tạo ra = 2^m (với m là số bit mượn từ Host)
- Số host cần tạo = 2^n – 2 (với n là số bit của Host còn lại sau khi mượn) - Số bit subnet mới = số bit subnet cũ + m
Các công thức cần nhớ
- Liên quan đến tính số mạng con (số subnet) có công thức : 2^n >= số subnet - Liên quan đến số host adress : 2^h -2 >= số địa chỉ H/A yêu cầu
Ví dụ 1: Giả sử có khối IP là 172.16.0.0/22 ta sẽ chia thành 5 mạng con như sau (đã sắp xếp theo thứ tự giảm dần): - Mạng A: 400 host - Mạng B: 180 host - Mạng C: 40 host - Mạng D: 18 host - Mạng E: 15 host
Bước 1. Sắp xếp các mạng con theo thứ tự giảm dần về kích thước Bước 2. Tính số bit dùng cho số host (n) và số bit cho mạng (m)
Ta thấy mạng A có 400 host, thực hiện chia cho mạng A đầu tiên, áp dụng công thức: 2^n - 2 ≥ 400 => 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) – 22 (số bit thuộc phần Net của địa chỉ đã cho) – 9 ( số bit còn lại) = 1
- Số bit subnet mới = số bit subnet cũ + m = 22 + 1 = 23 ( viết tắt là /23) - Số Subnet (mạng con) được tạo ra là: 2^m = 2^7 = 128
Với 1 bit này ta có 2 mạng X1 và X2 như sau:
X1: 10101100.00010000.00000000.00000000 : 172.16.0.0/23 Mạng X1 sẽ được gán cho A
X2: 10101100.00010000.00000010.00000000 : 172.16.2.0/23 . Dựa vào X1 ta có thể tính được:
Mạng A: 172.16.0.0/23 Địa chỉ host: 172.16.0.0
Địa chỉ broadcast: 172.16.1.255 Dải IP: 172.16.0.1 – 172.16.1.254
Với mạng B ta thực hiện với X2 <172.16.2.0/23> Làm tương tự như vậy cho đến khi hết mạng cần chia
Ví dụ 2: Cho dải địa chỉ 172.35.0.0/16, hãy chia mạng con để cấp cho các mạng con theo yêu cầu sau
Mạng A: 320 host Mạng B: 115 host Mạng C: 80 host Mạng D: 30 host Mạng E: 2 host Mạng F: 2 host Mạng G: 2 host
Ví dụ 3: Cho địa chỉ IP 172.16.224.2/18. Hãy chia địa chỉ này thành 4 mạng con. Liệt kê địa chỉ mạng, địa chỉ host và địa chỉ broadcast của từng mạng con?
Bài giải:
Bước 1: Xác định lớp mạng và biểu diễn nhị phân
Địa chỉ IP 172.16.224.2/18 . Địa chỉ này thuộc mạng lớp B. Biểu diễn dưới dạng nhị phân:
IP: 10101100.00010000.11100000.00000010 Subnetmask: 11111111.11111111.11000000.00000000
Bước 2: Tính số bit mượn
Ởđịa chỉ trên thì 18 bit đầu là địa chỉ mạng còn 32-18=14 bit làm địa chỉ host vậy địa chỉ mạng là 172.16.192.0/18
Để chia thành 4 mạng con ta cần mượn 2 bit của phần host(Ta có 2n>=4 ta được n=2) Subnet mới là 20 bit: 11111111.11111111.1111000.00000000 (255.255.240.0) - Vậy địa chỉ mạng con thứ nhất là
NetID:10101100.00010000.11000000.00000000(172.16.192.0)
Subnetmask 11111111.11111111.11110000.00000000 (255.255.240.0) Dãy địa chỉ host:
10101100.00010000.11000000.00000001 (172.16.192.1) Đến 10101100.00010000.11001111.11111110 (172.16.207.254) Địa chỉ broadcast: 10101100.00010000.11001111.11111111 (172.16.207.255) - Địa chỉ mạng thứ 2 là:
10101100.00010000.11010000.00000000 (172.16.208.0) Dãy địa chỉ host từ 10101100.00010000.11010000.00000001 (172.16.208.1)
Đến 10101100.00010000.11011111.11111110 (172.16.223.254) Địa chỉ broadcast: 10101100.00010000.11011111.11111110 (172.16.223.255) - Địa chỉ mạng thứ 3 là:
10101100.00010000.11100000.00000000 (172.16.224.0) Dãy địa chỉ host từ 10101100.00010000.11100000.00000001 (172.16.224.1)
Đến 10101100.00010000.11101111.11111110 (172.16.239.254) Địa chỉ broadcast: 10101100.00010000.11101111.11111110 (172.16.239.255) - Địa chỉ mạng thứ 4 là:
10101100.00010000.11110000.00000000 (172.16.240.0) Dãy địa chỉ host từ 10101100.00010000.11110000.00000001 (172.16.240.1)
Đến 10101100.00010000.11111111.11111110 (172.16.255.254) Địa chỉ broadcast: 10101100.00010000.11111111.11111110 (172.16.255.255)
Ví dụ 4: Cho địa chỉ IP sau 192.168.1.0/24. Hãy chia địa chỉ thành các subnet, sao cho mỗi subnet có thể có 29 host, liệt kê các subnet, dải địa chỉ khả dụng và địa chỉ
broadcast của từng subnet.
Trả lời:
Bước 1: Địa chỉ trên thuộc lớp C, có defaul mask là 255.255.255.0 Bước 2: Chuyển đổi nhị phân
192 . 168 . 1 . 0 = 1000 0000 . 1010 1000 . 0000 0001 . 0000 0000 255 . 255 . 255 . 0 = 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000
Bước 3: Vì mỗi host có 29 host suy ra cần ít nhất 5 bit cho phần host: 2^5 - 2 = 30. Vậy số bit cho phần Net ID là 3. Vậy ta có 2^3 = 8 subnet.
Bước 4 : xác định số hop cho các subnet.
Vì mượn 3 bit cho phần Net ID nên ta có subnet mask mới là: 255.255.255.224 = 1111 1111 . 1111 1111 . 1111 1111 . 1110 0000
Phần màu tím là dành cho host. Bit thấp nhất trong phần Net ID có giá trị là 32, suy ra số hop là 32, có nghĩa là ta có các subnet và các địa chỉ cần tìm sau.
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: là địa chỉ lến sau địa chỉ mạng (subnet) - Địa chỉ cuối cùng: là địa chỉ liền trước địa chỉ broadcast
Chương 5: TỔNG QUAN VỀ VLAN, VLAN TRUNK VÀ DHCP