Subnet là gì là vấn đề được rất nhiều người quan tâm. Khi truy cập internet, các thiết bị sẽ đều có địa chỉ IP gồm 2 phần, đó là host/client address và network address. Trong đó, 2 thành phần host address và network address sẽ được phân chia bởi Subnet Mask. Vậy subnet mask là gì? Cách chia subnet mask thế nào? Hãy cùng FPT Cloud tìm hiểu chi tiết từ A - Z về Subnet qua bài viết dưới đây.

Bạn đang xem: Hướng dẫn chia địa chỉ ip

Subnet là gì?

Subnet mask là gì? Hiểu một cách đơn giản, Subnet là một số dạng 32 bit. Để tạo ra Subnet mask, người ta sẽ đặt host bit dưới dạng số 0 và network bit dạng số 1. Từ đó tạo ra các dãy số có dạng nhị phân là 0 và 1 để phân chia địa chỉ IP thành 2 phần, tương ứng với địa chỉ mạng và địa chỉ host. 

Địa chỉ mạng thường có số 0 và địa chỉ broadcast thường có số 255. Ngoài ra, địa chỉ IP, Subnet Mask và router sẽ có các cấu trúc riêng. Tùy từng khu vực, từng địa chỉ mà địa chỉ thể hiện sẽ có sự khác biệt. Người dùng có thể dựa vào các số này để xác định chính xác IP và route của mình.

*
Giải đáp: subnet là gì?

Khi các đơn vị bổ sung subnetworking, đơn vị cần sử dụng subnetting, sau đó chia host thành một subnet. Chính vì thế, khi tìm hiểu subnet là gì, bạn cần lưu ý, mục tiêu chính của subnet mask đó là kích hoạt quá trình subnetting. Trong đó, subnet mask sẽ có tác dụng che địa chỉ IP của bạn dưới dạng các số 32 bit. Đây cũng là lý do vì sao Subnet Mask có từ “mask” - mặt nạ ở trong tên gọi. 

Cách thức hoạt động của Subnet mask

Sau khi đã tìm hiểu Subnet là gì, chắc chắn bạn sẽ không thể bỏ qua cách thức hoạt động của dạng số này. Như đã giải thích ở trên, Subnet mask chia mạng thành nhiều phần, dưới dạng sub-network hoặc subnet. 

Người dùng có thể giảm lưu lượng mạng bằng Subnet mà không cần cài đặt, lắp bổ sung một mạng mới. Điều này giúp việc sử dụng internet dễ dàng hơn. Giờ đây, chỉ cần một mạng tổng, các đơn vị đã có thể chia thành nhiều mạng con để sử dụng mà không lo quá tải hệ thống. 

Đặc biệt, với các đơn vị chỉ sử dụng một mạng cục bộ LAN duy nhất và phải chia thành nhiều phân đoạn, việc sử dụng Subnetting sẽ vô cùng quan trọng và cần thiết. Sử dụng subnetting sẽ giúp bạn: 

Giảm được lưu lượng tải mạng do giảm khối lượng broadcast
Giúp người dùng có thể làm việc tại nhà nhưng vẫn sử dụng được mạng cục bộ. Tổ chức có thể vượt qua các ràng buộc của mạng LAN, vượt qua số lượng host tối đa theo quy định. 
*
Subnet mask chia mạng thành nhiều phần, dưới dạng sub-network hoặc subnet

Cách tính và xác định lớp IP

Để việc sử dụng Subnet mask hiệu quả, người dùng cần lưu ý cách tính và xác định lớp IP. Để xác định, bạn có thể dựa vào các bit bậc cao hoặc bit ở ngoài cùng, bên trái của địa chỉ IP. Bất cứ địa chỉ IP nào cũng có thể được xác định bằng cách làm này. Một địa chỉ IP sẽ có 5 lớp mạng, được chia thành các lớp, đánh ký hiệu từ A - E và địa chỉ IP sẽ nằm trong các lớp này. 

Trong đó: 

Mạng A thể hiện phần mạng đầu tiên. Người dùng có thể phân chia các host thành octet 2, 3, 4 khi cần thiết. Các mạng có hơn 65.534 host nên sử dụng subnet mask A. Subnet mask B thể hiện 2 phần octet 1 và 2. Người dùng có thể dùng octet 3 và 4 để phân chia các phần host. Octet 3 và 4 có dạng 16 bit. Các mạng có số lượng host từ 256 - 65.534 host thích hợp để sử dụng Subnet mask class B. Subnet mask C thể hiện 3 octet 1, 2 và 3. Vì thế, người dùng chỉ có thể phân chia host ở octet 4 và sử dụng trong 8 bit còn lại. Subnet mask C phù hợp với các mạng có số lượng host nhỏ hơn 256. Subnet mask D dành riêng cho multicast
Subnet mask E không được dùng trong internet thông thường mà thường được sử dụng khi nghiên cứu. 

Các lớp mạng A, B, C có thể có subnet mask tự nhiên hoặc mặc định: 

Class A: 255.0.0.0Class B: 255.255.0.0Class C: 255.255.255.0

Từ đó, người dùng có thể dựa trên subnet mask mặc định để xác định được số lượng Host. Đồng thời, xác định được địa chỉ IP mà mạng cục bộ đang sở hữu. 

*
Người dùng sẽ sử dụng các lớp từ A – E để phân chia host trong mạng nội bộ

Ngoài ra, việc kết nối thiết bị, quản lý thiết bị cũng gặp nhiều khó khăn. Đặc biệt là trong việc tính các chỉ số và số lượng băng thông. Vì thế, subnet mask đã được tạo ra để giúp người dùng giải quyết khó khăn này. 

Khi tìm hiểu Subnet là gì, chúng ta đã biết, Subnet mask sẽ phân chia địa chỉ IP. Subnet mask hoạt động thông qua việc hạn chế phạm vi hoạt động, giúp hạn chế, giảm thiểu tối đa tình trạng tắc nghẽn mạng khi sử dụng đồng thời nhiều thiết bị. 

Trong quá trình sử dụng, nếu người dùng gặp trục trặc, Subnet mask cũng sẽ bị động khắc phục ở phạm vi cục bộ, không làm ảnh hưởng tới hệ thống mạng chung. Hệ thống mạng lớn sẽ được bảo vệ toàn diện hơn, hiệu quả hơn khi sử dụng Subnet mask. 

Cách chia Subnet như thế nào?

Subnet mask chia thành các lớp từ A - E. Người dùng sẽ sử dụng các lớp này để phân chia host. Mỗi lớp sẽ tương ứng với 1 số lượng host. Chẳng hạn như lớp C là 256 Host. Để chia subnet, bạn chỉ cần lấy số lượng host này, chia cho tổng số mạng con. Lúc này, số địa chỉ ban đầu vẫn được giữ nguyên. Tuy nhiên, chúng ta đã chia mạng tổng thành các mạng con và mỗi mạng con sẽ có số địa chỉ ít hơn. 

*
Subnet có vai trò quan trọng trong việc phân chia và quản lý các mạng nội bộ

Chẳng hạn như bạn lấy 256 host của lớp C chia cho 8 mạng con. Do trong số 256 Host đã có 2 host được sử dụng để xác định địa chỉ mạng và địa chỉ Broadcast nên chúng ta còn 254 host. Sau khi chia đều cho 8 mạng con, chúng ta có 32 địa chỉ trong mỗi mạng.

Lúc này, các subnet trong mỗi mạng con sẽ cung cấp 2 địa chỉ subnet và broadcast, tức là mỗi mạng con còn sẵn 30 host. Như vậy, số lượng host đã được giảm và việc sử dụng sẽ hiệu quả hơn, việc quản lý cũng dễ dàng hơn. 

Tương tự, bạn có thể áp dụng để tính đối với các lớp khác. Đây là một nội dung cực kỳ quan trọng khi bạn tìm hiểu subnet là gì

Hướng dẫn cách tính Subnet Mask chi tiết

Để tính đúng và chính xác subnet mask, bạn cần thực hiện 4 bước sau:

Chuyển đổi sang hệ nhị phân
Tính địa chỉ Subnet
Tìm phạm vi của Host

Tính tổng số Subnet và host trên mỗi mạng riêng.

Trong quá trình tìm hiểu subnet là gì, chắc chắn không thể bỏ qua cách tính kiểu số này. Để giúp người dùng hiểu rõ hơn các tính subnet, chúng ta sẽ cùng tìm hiểu một ví dụ cụ thể với lớp C.

*
Trước tiên, người dùng cần chuyển đổi sang dạng nhị phân

Bước 2: Tính địa chỉ Subnet

Sau khi chuyển sang hệ nhị phân, bạn có thể dễ dàng tính được địa chỉ IP Subnet bằng cách thực hiện theo tác AND theo quy tắc: 

1 + 1 = 11 + 0 = 00 + 1 = 00 + 0 = 0 

Hãy tính dựa trên IP Host và subnet mask để tìm được địa chỉ subnet chứa host. 

Bước 3: Tìm phạm vi của Host

Trước khi chuyển đổi sang hệ nhị phân, chúng ta đã dùng 5 bit ở Class C. 5 Bit này được sử dụng trong việc xác định subnet. 3 bit còn lại dùng để xác định host trong một mạng con cụ thể. Để xác định địa chỉ subnet, bạn cần xác định tất cả các bit 0 trong host. Địa chỉ broadcast sẽ là tất cả các bit 1. 

Hãy lưu ý, host đầu tiên sẽ được xác định bởi các số 0 và 1. Ngược lại, host cuối cùng được xác định bởi số 1 và 0. Bạn cần tránh nhầm lẫn giữa các thứ tự này để không tính nhầm phạm vi của host. 

*
Sơ đồ hướng dẫn tìm phạm vi của host

Bước 4: Tính tổng số subnet và host trên mỗi subnet

Bước tính tổng subset là bước cuối cùng và cũng là bước bạn không thể bỏ qua khi tìm hiểu subnet là gì. Sau khi đã có được chính xác số lượng subnet và host của mạng LAN, bạn có thể tính cho từng mạng riêng lẻ. Bạn cũng sẽ sử dụng hệ nhị phân để tính tổng subnet và host trên từng mạng lẻ. Cụ thể giả định các số là 0 và các mạng con là số 1. Bạn sẽ có thể tính như sau:

Có thể thấy, cách tính subnet mask không hề đơn giản. Bạn cần lưu ý các quy tắc đổi sang hệ nhị phân và cách chia subnet để việc tính toán chính xác và hiệu quả nhất. Hy vọng qua bài viết trên đây, bạn đã hiểu subnet là gì và biết về cách thức hoạt động, cách chia subnet mask để giảm tải áp lực cho mạng tổng khi sử dụng cho nhiều thiết bị. 

Liên hệ với chúng tôi để biết thêm thông tin chi tiết về dịch vụ của FPT Smart Cloud

Chương 1 - Địa chỉ IPv4, Chia subnet, VLSM, Summary -

Chương 1 - Địa chỉ IPv4, Chia subnet, VLSM, Summary -

Chương 1 - Địa chỉ IPv4, Chia subnet, VLSM, Summary - Chương 1 - Địa chỉ IPv4, Chia subnet, VLSM, Summary - Chương 1 - Địa chỉ IPv4, Chia subnet, VLSM, Summary -
*

Follow us :
*
*
*
*



*

Địa chỉ IP là một chuyên đề quan trọng trong chương trình đào tạo chuyên viên mạng CCNA R&S. Để có thể theo học tốt chương trình CCNA R&S, vượt qua được các kỳ thi lấy chứng chỉ quốc tế và theo học tiếp được các chứng chỉ cao cấp hơn cũng như để hoàn thành tốt được các công việc trong lĩnh vực mạng, người học viên, kỹ sư, chuyên viên phải nắm vững các kiến thức và kỹ năng liên quan đến địa chỉ IP. Chương này sẽ cung cấp những điểm chính yếu, quan trọng của chuyên đề nền tảng này.

Địa chỉ IP là một chuyên đề quan trọng trong chương trình đào tạo chuyên viên mạng CCNA R&S. Để có thể theo học tốt chương trình CCNA R&S, vượt qua được các kỳ thi lấy chứng chỉ quốc tế và theo học tiếp được các chứng chỉ cao cấp hơn cũng như để hoàn thành tốt được các công việc trong lĩnh vực mạng, người học viên, kỹ sư, chuyên viên phải nắm vững các kiến thức và kỹ năng liên quan đến địa chỉ IP. Chương này sẽ cung cấp những điểm chính yếu, quan trọng của chuyên đề nền tảng này.

1.1. Một vài điểm cơ bản cần nhớ :

- Chuyển đổi nhị phân – thập phân: cần nắm vững cách chuyển đổi giữa số nhị phân và thập phân. VD: 5 101 ; 10 1010; 64 1000000.

- Với n bit nhị phân, ta có thể thiết lập được: 2n số nhị phân với giá trị thập phân tương ứng chạy từ 0 đến 2n – 1.

Ví dụ:

Với n = 2, ta lập được 22 = 4 số nhị phân, giá trị thập phân chạy từ 0 đến 3 ( = 22 – 1 ):

00=>0

01=> 1

10=> 2

11 => 3

Với n = 3, ta lập được 23 = 8 số nhị phân, giá trị thập phân chạy từ 0 đến 7 ( = 23 – 1 ):

000 => 0 100 => 4

001 => 1 101 => 5

010 => 2 110 => 6

011 => 3 111 => 7

- Cố gắng nhớ một số lũy thừa của 2, ít nhất cho đến 28 :

20 = 1 24 = 16 28 = 256

21 = 2 25 = 32

22 = 4 26 = 64

23 = 8 27 = 128

- Sau đây là các chuỗi nhị phân 8 bit cùng các số thập phân tương ứng cần phải thuộc để phục vụ cho việc tính nhanh subnet mask:

Chuỗi nhị phân 8 bit.

Giá trị thập phân tương ứng.

00000000

0

10000000

128

11000000

192

11100000

224

11110000

240

11111000

248

11111100

252

11111110

254

11111111

255

Bảng 1.1 – Các chuỗi nhị phân 8 bit cần nhớ.

- Bảng bước nhảy: bảng này được sử dụng để tính toán trong phép chia subnet.

Số bit mượn

1

2

3

4

5

6

7

8

Bước nhảy

128

64

32

16

8

4

2

1

Bảng 1.2 – Bảng tương ứng số bit mượn và bước nhảy.

1.2. Địa chỉ IP

Địa chỉ IP là địa chỉ logic được sử dụng trong giao thức IP của lớp Internet thuộc mô hình TCP/IP (tương ứng với lớp thứ 3 – lớp network của mô hình OSI). Mục này trình bày các điểm chính cần ghi nhớ về địa chỉ IP.

1.2.1. Cấu trúc địa chỉ IP

- Địa chỉ IP gồm 32 bit nhị phân, chia thành 4 cụm 8 bit (gọi là các octet). Các octet được biểu diễn dưới dạng thập phân và được ngăn cách nhau bằng các dấu chấm.

- Địa chỉ IP được chia thành hai phần: phần mạng (network) và phần host.

*

*
Hình 1.2.1– Cấu trúc địa chỉ IP

- Việc đặt địa chỉ IP phải tuân theo các quy tắc sau:

Các bit phần mạng không được phép đồng thời bằng 0.

VD: địa chỉ 0.0.0.1 với phần mạng là 0.0.0 và phần host là 1 là không hợp lệ.

Nếu các bit phần host đồng thời bằng 0, ta có một địa chỉ mạng.

VD: địa chỉ 192.168.1.1 là một địa chỉ có thể gán cho host nhưng địa chỉ 192.168.1.0 là một địa chỉ mạng, không thể gán cho host được.

Nếu các bit phần host đồng thời bằng 1, ta có một địa chỉ quảng bá (broadcast).

VD: địa chỉ 192.168.1.255 là một địa chỉ broadcast cho mạng 192.168.1.0

1.2.2. Các lớp địa chỉ IP

Không gian địa chỉ IP được chia thành các lớp như sau:

1.2.2.1. Lớp A:

*
Hình 1.2.2– Cấu trúc địa chỉ lớp A

- Địa chỉ lớp A sử dụng một octet đầu làm phần mạng, ba octet sau làm phần host.

- Bit đầu của một địa chỉ lớp A luôn được giữ là 0. Do đó, các địa chỉ mạng lớp A gồm: 1.0.0.0 à 127.0.0.0.

Tuy nhiên, mạng 127.0.0.0 được sử dụng làm mạng loopback nên địa chỉ mạng lớp A sử dụng được gồm 1.0.0.0 à 126.0.0.0 (126 mạng).

Chú ý: địa chỉ 127.0.0.1 là địa chỉ loopback trên các host. Để kiểm tra chồng giao thức TCP/IP có được cài đặt đúng hay không, từ dấu nhắc hệ thống, ta đánh lệnh ping 127.0.0.1, nếu kết quả ping thành công thì chồng giao thức TCP/IP đã được cài đặt đúng đắn.

- Phần host có 24 bit => mỗi mạng lớp A có (224 – 2) host.

- Ví dụ: 10.0.0.1, 1.1.1.1, 2.3.4.5 là các địa chỉ lớp A.

1.2.2.2. Lớp B:

*
Hình 1.2.3– Cấu trúc địa chỉ lớp B

- Địa chỉ lớp B sử dụng hai octet đầu làm phần mạng, hai octet sau làm phần host.

- Hai bit đầu của một địa chỉ lớp B luôn được giữ là 10. Do đó các địa chỉ mạng lớp B gồm:

128.0.0.0 -> 191.255.0.0

Có tất cả 214 mạng trong lớp B.

- Phần host: 16 bit

Một mạng lớp B có 216 – 2 host.

- Ví dụ: các địa chỉ 172.16.1.1, 158.0.2.1 là các địa chỉ lớp B.

1.2.2.3. Lớp C:

*
Hình 1.2.4– Cấu trúc địa chỉ lớp C

- Địa chỉ lớp C sử dụng ba octet đầu làm phần mạng, một octet sau làm phần host.

- Ba bit đầu của một địa chỉ lớp C luôn được giữ là 110. Do đó, các địa chỉ mạng lớp C gồm:

192.0.0.0 -> 223.255.255.0

Có tất cả 221 mạng trong lớp C.

- Phần host: 8 bit

Một mạng lớp C có 28 – 2 = 254 host.

1.2.2.4. Lớp D:

224.0.0.0 -> 239.255.255.255

- Dùng làm địa chỉ multicast.

Ví dụ: 224.0.0.5 dùng cho OSPF

224.0.0.9 dùng cho RIPv2

1.2.2.5. Lớp E:

- Từ 240.0.0.0 trở đi.

- Được dùng cho mục đích dự phòng.

Chú ý:

Các lớp địa chỉ IP có thể sử dụng để đặt cho các host là các lớp A, B, C.Để thuận tiện cho việc nhận diện một địa chỉ IP thuộc lớp nào, ta quan sát octet đầu của địa chỉ, nếu octet này có giá trị:

1 =>126: địa chỉ lớp A.

128 => 191: địa chỉ lớp B.

192 => 223: địa chỉ lớp C.

224 => 239: địa chỉ lớp D.

240 => 255: địa chỉ lớp E.

1.2.3. Địa chỉ Private và Public:

- Địa chỉ IP được phân thành hai loại: private và public.

Private: chỉ được sử dụng trong mạng nội bộ (mạng LAN), không được định tuyến trên môi trường Internet. Có thể được sử dụng lặp đi lặp lại trong các mạng LAN khác nhau.Public: là địa chỉ IP sử dụng cho các gói tin đi trên môi trường Internet, được định tuyến trên môi trường Internet, không sử dụng trong mạng LAN. Địa chỉ public phải là duy nhất cho mỗi host tham gia vào Internet.

- Dải địa chỉ private (được quy định trong RFC 1918):

Lớp A: 10.x.x.x

Lớp B: 172.16.x.x -> 172.31.x.x

Lớp C: 192.168.x.x

- Kỹ thuật NAT (Network Address Translation) được sử dụng để chuyển đổi giữa IP private và IP public.

- Ý nghĩa của địa chỉ private: được sử dụng để bảo tồn địa chỉ IP public đang dần cạn kiệt.

1.2.4. Địa chỉ quảng bá (broadcast):

Gồm hai loại:

- Direct:

VD: 192.168.1.255

- Local:

VD: 255.255.255.255

- Để phân biệt hai loại địa chỉ broadcast này, ta xem xét ví dụ sau:

Xét máy có địa chỉ IP là 192.168.2.1 chẳng hạn. Khi máy này gửi broadcast đến 255.255.255.255, tất cả các máy thuộc mạng 192.168.2.0 (là mạng máy gửi gói tin đứng trong đó) sẽ nhận được gói broadcast này, còn nếu nó gửi broadcast đến địa chỉ 192.168.1.255 thì tất cả các máy thuộc mạng 192.168.1.0 sẽ nhận được gói broadcast (các máy thuộc mạng 192.168.2.0 sẽ không nhận được gói broadcast này).

1.2.5. Bài tập:

Cho biết địa chỉ nào sau đây có thể dùng cho host:

150.100.255.255175.100.255.18195.234.253.0100.0.0.23188.258.221.176127.34.25.189224.156.217.731.3. Chia subnet:

1.3.1. Subnet mask và số prefix:

Subnet mask :

Subnet mask là một dải 32 bit nhị phân đi kèm với một địa chỉ IP, được các host sử dụng để xác định địa chỉ mạng của địa chỉ IP này. Để làm được điều đó, host sẽ đem địa chỉ IP thực hiện phép tính AND từng bit một của địa chỉ với subnet mask của nó, kết quả host sẽ thu được địa chỉ mạng tương ứng của địa chỉ IP.

Ví dụ: Xét địa chỉ 192.168.1.1 với subnet mask tương ứng là 255.255.255.0

Dạng thập phân

Dạng nhị phân

Địa chỉ IP

192.168.1.1

11000000.10101000.00000001.00000001

Subnet mask

255.255.255.0

11111111.11111111.11111111.00000000

Địa chỉ mạng

192.168.1.0

11000000.10101000.00000001.00000000

( phép toán AND: 0 AND 0 = 0

AND 1 = 0AND 0 = 0AND 1 = 1 )

Đối với chúng ta, quy tắc gợi nhớ subnet mask rất đơn giản: phần mạng chạy đến đâu, bit 1 của subnet mask chạy đến đó và ứng với các bit phần host, các bit của subnet mask được thiết lập giá trị 0. Một số subnet mask chuẩn:

Lớp A : 255.0.0.0 Lớp C: 255.255.255.0

Lớp B: 255.255.0.0

Số prefix:

Để mô tả một địa chỉ IP, người ta dùng một đại lượng khác được gọi là số prefix. Số prefix có thể hiểu một cách đơn giản là số bit mạng trong một địa chỉ IP, được viết ngay sau địa chỉ IP, và được ngăn cách với địa chỉ này bằng một dấu “/”.

Ví du: 192.168.1.1/24, 172.16.0.0/16 hay 10.0.0.0/8, v.v…

Nguyên lý cơ bản của kỹ thuật chia subnet: Để có thể chia nhỏ một mạng lớn thành nhiều mạng con bằng nhau, người ta thực hiện mượn thêm một số bit bên phần host để làm phần mạng, các bit mượn này được gọi là các bit subnet. Tùy thuộc vào số bit subnet mà ta có được các số lượng các mạng con khác nhau với các kích cỡ khác nhau:

*
Hình 1.3.1– Mượn thêm bit để chia subnet.1.4. Các dạng bài tập về chia subnet:

1.4.1. Cho một mạng lớn và số bit mượn. Xác định :

- Số subnet

- Số host/subnet

- Địa chỉ mạng của mỗi subnet.

- Địa chỉ host đầu của mỗi subnet.

- Địa chỉ host cuối của mỗi subnet.

- Địa chỉ broadcast của mỗi subnet.

- Subnet mask được sử dụng.

Cách tính:

- Gọi n là số bit mượn và m là số bit host còn lại. Ta có:

+ Số subnet có thể chia được:

2n nếu có hỗ trợ subnet – zero.2n – 2 nếu không hỗ trợ subnet – zero.

Luật subnet – zero: nếu hệ điều hành trên host không bật tính năng subnet – zero, khi chia subnet ta phải bỏ đi không dùng hai mạng con ứng với các bit subnet bằng 0 hết và các bit subnet bằng 1 hết. Ngược lại nếu hệ điều hành bật tính năng subnet – zero , ta có quyền sử dụng hai mạng con này. Nhìn chung, các hệ điều hành ngày nay đều bật tính năng subnet – zero một cách mặc định, do đó nếu không thấy nói gì thêm trong yêu cầu, ta sử dụng cách chia có hỗ trợ subnet – zero.

+ Số host có thể có trên mỗi subnet: 2m – 2 (host/subnet).

- Với mỗi subnet chia được:

+ Địa chỉ mạng có octet bị mượn là bội số của bước nhảy. Bước nhảy tương ứng với số bit mượn có thể được tra trong bảng 1.2 của mục 1.

+ Địa chỉ host đầu = địa chỉ mạng + 1 (cần hiểu cộng 1 ở đây là lùi về sau một địa chỉ).

+ Địa chỉ broadcast = địa chỉ mạng kế tiếp – 1 (cần hiểu trừ 1 ở đây là lùi về phía trước một địa chỉ).

+ Địa chỉ host cuối = địa chỉ broadcast – 1 (cần hiểu trừ 1 ở đây là lùi về phía trước một địa chỉ).

- Để tính ra subnet mask được sử dụng, ta sử dụng cách nhớ: phần mạng của địa chỉ chạy đến đâu, các bit 1 của subnet mask chạy đến đó và bảng 1.1 của mục 1.1.

Ví dụ 1: Xét mạng 192.168.1.0/24 , mượn 2 bit, còn lại 6 bit host, bước nhảy là 64. Ta có:

- Số subnet có thể có: 22 = 4 subnet.

- Số host trên mỗi subnet = 26 – 2 = 62 host.

- Các địa chỉ mạng sẽ có octet bị chia cắt (octet thứ 4) là bội số của 64.

- Liệt kê các mạng như sau:

192.168.1.0/26 -> địa chỉ mạng

192.168.1.1/26 ->địa chỉ host đầu.

….

192.168.1.62/26 ->địa chỉ host cuối.

192.168.1.63/26 ->địa chỉ broadcast.

---------------------------------------------

192.168.1.64/26 -> địa chỉ mạng

192.168.1.65/26 ->địa chỉ host đầu

…..

192.168.1.126/26 ->địa chỉ host cuối

192.168.1.127/26 ->địa chỉ broadcast.

---------------------------------------------

192.168.1.128/26 -> địa chỉ mạng

192.168.1.129/26 ->địa chỉ host đầu.

….

192.168.1.190/26 ->địa chỉ host cuối.

192.168.1.191/26 ->địa chỉ broadcast.

---------------------------------------------

192.168.1.192/26 -> địa chỉ mạng

192.168.1.193/26 ->địa chỉ host đầu.

….

192.168.1.254/26 ->địa chỉ host cuối.

192.168.1.255/26 ->địa chỉ broadcast.

Vậy, một mạng lớp C 192.168.1.0/24 đã được chia thành 4 mạng :192.168.1.0/26, 192.168.1.64/26, 192.168.1.128/26, 192.168.1.192/26.

Subnet mask được sử dụng trong ví dụ này là 255.255.255.192

Ví dụ 2: Xét mạng 172.16.0.0/16, mượn 2 bit. Octet bị chia cắt ( thành 2 phần là net và host ) là octet thứ 3.

- Số bit mượn là 2 => số mạng con có thể có (tính theo luật subnet zero): 22 = 4 mạng. Số bit mạng bây giờ là 18 bit.

- Số bit host còn lại: 32 – 18 = 14 bit. => số host/subnet = 214 – 2 host.

- Các địa chỉ mạng sẽ có octet thứ 3 là bội số của 64 (octet này bị mượn 2 bit)

- Ta có dải địa chỉ như sau:

172.16.0.0/18 -> Địa chỉ mạng

172.16.0.1/18 -> Địa chỉ host đầu

.. .…

172.16.63.254/18 -> Địa chỉ host cuối.

172.16.63.255/18 -> Địa chỉ broadcast

------------------------------------------------------

172.16.64.0/18 -> Địa chỉ mạng

172.16.64.1.18 -> Địa chỉ host đầu

…...

172.16.127.254/18 -> Địa chỉ host cuối.

172.16.127.255/18 -> Địa chỉ broadcast.

--------------------------------------------------------

172.16.128.0/18 -> Địa chỉ mạng

172.16.128.1/18 -> Địa chỉ host đầu

……

172.16.191.254/18 -> Địa chỉ host cuối

172.16.191.255/18 -> Địa chỉ broadcast

-------------------------------------------------------

172.16.192.0/18 -> Địa chỉ mạng

172.16.192.1/18 -> Địa chỉ host đầu

……

172.16.255.254/18 -> Địa chỉ host cuối

172.16.255.255/18 -> Địa chỉ broadcast

-------------------------------------------------------

Subnet mask trong ví dụ 2 là 255.255.192.0

Vi dụ 3: Xét mạng 172.16.0.0/16, mượn 10 bit => octet bị chia cắt (thành hai phần net và host ) là octet thứ 4. Ta có:

- Số bit mượn là 10 => Số subnet có thể có: 210 = 1024 mạng.

- Số bit host còn lại: 32 – 26 = 6 bit => số host trên mỗi subnet: 26 – 2 = 62 host.

- Địa chỉ mạng có octet thứ 4 là bội số của 64 (octet này bị mượn 2 bit)

- Ta có dải địa chỉ như sau:

172.16.0.0/26 -> Địa chỉ mạng

172.16.0.1/26 -> Địa chỉ host đầu

…..

172.16.0.62/26 -> Địa chỉ host cuối

172.16.0.63/26 -> Địa chỉ broadcast

-------------------------------------------------

172.16.0.64/26 -> Địa chỉ mạng

172.16.0.65/26 -> Địa chỉ host đầu

…..

172.16.0.126/26 -> Địa chỉ host cuối

172.16.0.127/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.0.128/26 -> Địa chỉ mạng

172.16.0.129/26 -> Địa chỉ host đầu

…..

172.16.0.190/26 -> Địa chỉ host cuối

172.16.0.191/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.0.192/26 -> Địa chỉ mạng

172.16.0.193/26 -> Địa chỉ host đầu

…..

172.16.0.254/26 -> Địa chỉ host cuối

172.16.0.255/26 -> Địa chỉ broadcast

========================================

172.16.1.0/26 -> Địa chỉ mạng

172.16.1.1/26 -> Địa chỉ host đầu

…..

172.16.1.62/26 -> Địa chỉ host cuối

172.16.1.63/26 -> Địa chỉ broadcast

-------------------------------------------------

172.16.1.64/26 -> Địa chỉ mạng

172.16.1.65/26 -> Địa chỉ host đầu

…..

172.16.1.126/26 -> Địa chỉ host cuối

172.16.1.127/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.1.128/26 -> Địa chỉ mạng

172.16.1.129/26 -> Địa chỉ host đầu

…..

172.16.1.190/26 -> Địa chỉ host cuối

172.16.1.191/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.1.192/26 -> Địa chỉ mạng

172.16.1.193/26 -> Địa chỉ host đầu

…..

172.16.1.254/26 -> Địa chỉ host cuối

172.16.1.255/26 -> Địa chỉ broadcast

========================================

172.16.2.0/26 -> Địa chỉ mạng

172.16.2.1/26 -> Địa chỉ host đầu

…..

172.16.2.62/26 -> Địa chỉ host cuối

172.16.2.63/26 -> Địa chỉ broadcast

-------------------------------------------------

172.16.2.64/26 -> Địa chỉ mạng

172.16.2.65/26 -> Địa chỉ host đầu

…..

172.16.2.126/26 -> Địa chỉ host cuối

172.16.2.127/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.2.128/26 -> Địa chỉ mạng

172.16.2.129/26 -> Địa chỉ host đầu

…..

172.16.2.190/26 -> Địa chỉ host cuối

172.16.2.191/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.2.192/26 -> Địa chỉ mạng

172.16.2.193/26 -> Địa chỉ host đầu

…..

172.16.2.254/26 -> Địa chỉ host cuối

172.16.2.255/26 -> Địa chỉ broadcast

…………..

172.16.255.0/26 -> Địa chỉ mạng

172.16.255.1/26 -> Địa chỉ host đầu

…..

172.16.255.62/26 -> Địa chỉ host cuối

172.16.255.63/26 -> Địa chỉ broadcast

-------------------------------------------------

172.16.255.64/26 -> Địa chỉ mạng

172.16.255.65/26 -> Địa chỉ host đầu

…..

172.16.255.126/26 -> Địa chỉ host cuối

172.16.255.127/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.255.128/26 -> Địa chỉ mạng

172.16.255.129/26 -> Địa chỉ host đầu

…..

172.16.255.190/26 -> Địa chỉ host cuối

172.16.255.191/26 -> Địa chỉ broadcast

--------------------------------------------------

172.16.255.192/26 -> Địa chỉ mạng

172.16.255.193/26 -> Địa chỉ host đầu

…..

172.16.255.254/26 -> Địa chỉ host cuối

172.16.255.255/26 -> Địa chỉ broadcast

Ta để ý thấy octet thứ 3 (là octet bị mượn nhưng không bị chia cắt thành net và host) tăng dần từ 0 đến 255. Trong khi đó, octet thứ 4 (là octet bị chia cắt) thay đổi theo bước nhảy khi địa chỉ là địa chỉ mạng (nó bị mượn 2 bit nên có bước nhảy là 64). Subnet mask trong ví dụ này là 255.255.255.192.

1.4.2. Cho một địa chỉ host. Xác định xem host thuộc mạng nào:

Ta xem xét các ví dụ sau:

Ví dụ 1: Cho địa chỉ host 192.168.1.158/28. Hãy cho biết, host này thuộc về subnet nào?

Giải: /28 => có 28 bit mạng. Octet bị chia cắt là octet thứ 4 => số bit mượn của octet này là 4 => bước nhảy là 16. Lấy octet thứ 4 của địa chỉ host là 158 chia cho 16 được 9 và còn dư. Ta lấy 16 nhân với 9 được 144. Host này thuộc mạng 192.168.1.144/28

Ví dụ 2: Cho địa chỉ host 172.16.159.2/18. cho biết địa chỉ này thuộc subnet nào?

Giải: /18 => có 18 bit mạng. Octet bị chia cắt là octet thứ 3 => số bit mượn của octet này là 2 => bước nhảy là 64. Lấy octet thứ 3 là 159 chia cho 64 được 2 và còn dư. Ta lấy 64 nhân với 2 được 128. Host này thuộc mạng 172.16.128.0/18.

1.4.3. Cho sơ đồ mạng, xác định số bit mượn phù hợp để chia subnet:

Ví dụ:

*

Chỉ cho một mạng 192.168.1.0/24. Hãy đảm bảo cung cấp đủ các địa chỉ IP cho sơ đồ mạng trên.

Ta thấy: Có tất cả 5 mạng, mạng nhiều host nhất là mạng có 26 host (cộng thêm một địa chỉ cổng router). Gọi số bit mượn là n số bit host là m. Ta có hệ sau:

2n ≥ 5 (số mạng chia ra tối thiểu phải bằng 5).

2m – 2 ≥ 26 (nếu mỗi mạng con đáp ứng được số host của mạng 26 host, nó sẽ đáp ứng được yêu cầu về số host của tất cả các mạng còn lại trên sơ đồ).

m + n = 8

n = 3, m = 5 là phù hợp. Vậy ta có tất cả 23 = 8 mạng và mỗi mạng này có 25 – 2 = 30 host, đáp ứng được yêu cầu của sơ đồ trên.

Để xác định được các mạng cụ thể, sử dụng các quy tắc chia subnet đã được trình bày ở mục 4.1 ở trên.

1.4.4. Chia subnet VLSM:

- VLSM (Variable Length Subnet Mask): là kỹ thuật chia nhỏ một mạng thành các mạng có độ dài khác nhau (sẽ có các subnet mask khác nhau).

- Xem xét ví dụ sau:

*

Cũng dùng mạng 192.168.1.0/24 để đặt địa chỉ cho tất cả các mạng trên . Tuy nhiên ta không thể làm như ví dụ trước, chia mạng 192.168.1.0/24 thành các mạng bằng nhau vì sẽ không có cách chia nào phù hợp cho sơ đồ trên: nếu mượn 1 bit thì đáp ứng được yêu cầu về số host cho mạng 100 host vì mỗi mạng được chia ra có 126 host nhưng lại không đáp ứng được yêu cầu về số lượng subnet vì ta chỉ chia được có 2 subnet nếu mượn 1 bit trong khi trên sơ đồ có tới 5 mạng. Ngược lại, để đáp ứng nhu cầu về số lượng mạng trên sơ đồ, ta phải mượn tối thiểu là 3 bit (23 = 8 subnet) nhưng khi đó mỗi mạng lại chỉ có nhiều nhất là 30 host ( 25 – 2 = 30) không đáp ứng được yêu cầu về số lượng host trên các mạng của sơ đồ trên.

- Cách thức tiến hành là: sẽ xét các mạng theo thứ tự số host từ cao xuống thấp.

- Đầu tiên , xét mạng nhiều host nhất:100 host, ta phải xem mượn bao nhiêu bit thì đủ cho mạng này. Ta giải hệ:

2m – 2 ≥ 101

m + n = 8 (mượn bit ở octet thứ 4).Với m: số bit host, n: số bit mượn

Ta được m = 7, n = 1. Vậy ta mượn 1 bit và dành mạng 192.168.1.0/25 để gán cho mạng có 100 host. Mỗi mạng /25 có 27 – 2 = 126 host => đáp ứng đủ cho mạng 100 host. Vậy dải địa chỉ 192.168.1.0/24 còn lại các địa chỉ từ 192.168.1.128 -> 192.168.1.255.

- Tiếp đó ta xét đến mạng có 50 host, tương tự ta xem xem mượn bao nhiêu bit là phù hợp:

2m – 2 ≥ 51

m + n = 8 (mượn bit ở octet thứ 4). Với m: số bit host, n: số bit mượn

Ta được m = 6 và n = 2 là tối ưu. Vậy ta mượn 2 bit, mạng 192.168.1.0/24 được chia thành 4 mạng 192.168.1.0/26, 192.168.1.64/26, 192.168.1.128/26 và 192.168.1.192./26. Tuy nhiên hai dải địa chỉ của hai mạng 192.168.1.0/26 và 192.168.1.64/26 đã được giành cho mạng 100 host. Do đó ta chỉ có thể lấy từ mạng 192.168.1.128/26 để gán cho mạng 50 host. Ở đây ta lấy mạng 192.168.1.128/26 gán cho mạng 50 host.

- Tiếp đó ta xét đến mạng có 20 host, ta xem xem mượn bao nhiêu bit là phù hợp:

2m – 2 ≥ 21

m + n = 8 (mượn bit ở octet thứ 4). Với m: số bit host, n: số bit mượn

Ta được m = 5 và n = 3. Vậy ta mượn 3 bit, mạng 192.168.1.0/24 được chia thành 8 mạng 192.168.1.0/27, 192.168.1.32/27, 192.168.1.64/27 và 192.168.1.96/27, 192.168.1.128/27, 192.168.1.160/27, 192.168.1.192/27, 192.168.1.224/27. Tuy nhiên các dải địa chỉ của các mạng 192.168.1.0/27 ,…, 192.168.1.160/27 đã được giành cho mạng 100 và mạng 50 host. Do đó ta chỉ có thể lấy từ mạng 192.168.1.192/27 trở đi để gán cho mạng 20 host. Ở đây ta lấy mạng 192.168.1.192/27 gán cho mạng 20 host.

- Tiếp đó ta xét đến các mạng có 2 host là các liên kết điểm – điểm serial, ta xem thử mượn bao nhiêu bit là phù hợp:

2m – 2 ≥ 2

m + n = 8 (mượn bit ở octet thứ 4). Với m: số bit host, n: số bit mượn

Ta được m = 2 và n = 6 là tối ưu hơn cả, đảm bảo không bị dư địa chỉ.. Vậy ta mượn 6 bit, mạng 192.168.1.0/24 được chia thành 26 = 64 mạng 192.168.1.0/30, 192.168.1.4/30, 192.168.1.8/30,…, 192.168.1.248/30, 192.168.1.252/30 . Tuy nhiên các dải địa chỉ của các mạng 192.168.1.0/30 ,…, 192.168.1.222/27 đã được giành cho mạng 100 host, mạng 50 host và mạng 20 host. Do đó ta chỉ có thể lấy từ mạng 192.168.224.0/30 để gán cho các mạng 2 host. Ở đây ta lấy mạng 192.168.1.224/30 và 192.168.1.228/30 gán cho hai liên kết serial.

Vậy ta có kết quả chia VLSM như sau:

*

Chú ý: Để đảm bảo tối ưu hóa sự phân bố địa chỉ, ta thường dùng VLSM để chia nhỏ mạng. Đăc biệt, các kết nối serial thường sử dụng các mạng có prefix là 30 với subnet mask 255.255.255.252.

4.5. Tóm tắt địa chỉ (summary):

Tóm tắt địa chỉ nhằm mục đích làm gọn bảng định tuyến của các router. Các địa chỉ mạng sẽ được tóm tắt về một địa chỉ mạng lớn hơn đại diện bao trùm tất cả các mạng được tóm tắt.

Chúng ta xem xét ví dụ sau:

VD: Hãy tóm tắt các mạng sau đây thành một địa chỉ mạng duy nhất:

192.168.0.0/24

192.168.1.0/24

192.168.2.0/24

192.168.3.0/24

Nguyên tắc khi tóm tắt là xem xét các octet từ trái qua phải và bắt đầu phân tích từ octet có sự khác nhau đầu tiên. Trong trường hợp của ví dụ trên, octet thứ ba là octet khác nhau đầu tiên. Ta xét chi tiết octet này:

192.168.|000000|00.0

192.168.|000000|01.0

192.168.|000000|10.0

192.168.|000000|11.0

Ta thấy octet thứ ba còn có thêm 6 bit giống nhau. Vậy ta có mạng tóm tắt là 192.168.0.0/22. Chú ý: subnet mask bây giờ là 255.255.252.0 với prefix là 22.

1.4.6. Bài tập:

Để thông thạo các kỹ thuật tính toán IP, cần phải thực hành nhiều các kỹ năng đã nêu ra ở trên. Sau đây là một số bài tập thực hành:

1.4.6.1. Cho mạng và số bit mượn. Giả sử có hỗ trợ subnet zero. Hãy xác định :

- Số subnet có thể có.

- Số host/subnet.

- Với mỗi subnet, hãy xác định: địa chỉ mạng, địa chỉ host đầu, địa chỉ host cuối, địa chỉ broadcast (nếu số lượng mạng quá nhiều chỉ cần ghi ra một vài mạng đầu và mạng cuối cùng), subnet mask và số prefix.

Xem thêm: Năm anh em siêu nhân lộ diện trong 'power rangers' 2017

192.168.2.0/24 mượn 5 bit.192.168.12.0/24 mượn 3 bit.172.16.2.0/24 mượn 2 bit172.16.0.0/16 mượn 3 bit172.16.0.0/16 mượn 12 bit.10.0.0.0/8 mượn 5 bit.10.0.0.0/8 mượn 10 bit.10.0.0.0/8 mượn 18 bit.

1.4.6.2. Cho mạng 172.16.5.0/24. Hãy chia nhỏ sao cho phù hợp với sơ đồ sau:

*

g) 158.16.23.208/29

1.4.6.4. Hãy tóm tắt các địa chỉ mạng sau đây về thành một địa chỉ mạng đại diện:

a) 192.168.0.0/24