Mạng con (subnet) và mặt nạ mạng (subnet mask) là hai khái niệm cực kỳ quan trọng trong việc quản lý và cấu hình mạng. Mặt nạ mạng được sử dụng để xác định phần của địa chỉ IP nào thuộc về mạng nào và phần nào thuộc về máy chủ cụ thể trong mạng đó. Bài viết này giải thích chi tiết và dễ hiểu nhất về Subnet Mask, cách nó hoạt động và lợi ích mà nó mang lại!
Định nghĩa Subnet Mask
Ta đã biết mọi thiết bị đều có một địa chỉ IP để truy cập mạng LAN hay Internet. Với địa chỉ IPv4, cấu trúc địa chỉ của nó sẽ gồm 2 phần: phần mạng (network ID) và phần máy chủ (Host ID). Tuy nhiên, một địa chỉ IPv4 có độ dài 32 bit và nó không dành số bit cố định cho từng phần mạng hay máy chủ.
Số lượng bit trong phần mạng và phần máy chủ có sự khác nhau giữa các lớp địa chỉ IP. Ví dụ như lớp A dành 8 bit cho phần mạng và 24 bit cho phần máy chủ, trong khi lớp B dành 16 bit cho phần mạng và 16 bit cho phần máy chủ.
Subnet Mask hay mặt nạ mạng sẽ chia địa chỉ IP thành địa chỉ máy chủ và địa chỉ mạng. Từ đó, ta có thể biết được trong địa chỉ IP, phần nào dành cho thiết bị và phần nào thuộc về mạng.
Subnet Mask là gì?
Subnet Mask có độ dài 32 bit với địa chỉ IPv4 và 128 bit với độ dài IPv6. Tức là nó có cùng độ dài với địa chỉ IP. Subnet Mask được tạo ra bằng cách đặt các bit của máy chủ thành 0 và các bit của mạng thành 1.
Do đó, mặt nạ mạng thường được biểu diễn dưới dạng các bit 1 liên tiếp theo sau là các bit 0. Ví dụ, một mặt nạ mạng phổ biến cho mạng lớp C ở dạng thập phân là 255.255.255.0, được biểu diễn trong dạng nhị phân là 11111111.11111111.11111111.00000000.
Trong định dạng thập phân, Subnet Mask sẽ có các bit mạng ở dạng “255” và bit máy chủ ở dạng “o”. Ví dụ như lớp A có Subnet Mask là 255.0.0.0 và lớp B có Subnet Mask là 255.255.0.0.
Bởi vì, địa chỉ “255” thường được gán cho địa chỉ broadcast, tức là gửi dữ liệu tới tất cả các máy trong mạng. Địa chỉ “0” thường được gán cho địa chỉ mạng, tức là địa chỉ của chính mạng đó. Cả hai địa chỉ này không thể được gán cho các máy chủ vì chúng được dành riêng cho các mục đích đặc biệt như truyền dữ liệu tới tất cả hoặc chỉ tới mạng cụ thể.
Khi chia mạng con, ta cần chia phần máy chủ của địa chỉ IP thành các mạng con nhỏ hơn. Mục tiêu của mặt nạ mạng là đơn giản là cho phép quá trình subnetting xảy ra. Thuật ngữ “mask” (mặt nạ) được áp dụng vì mặt nạ mạng về cơ bản sử dụng một số 32 bit của riêng nó để làm mặt nạ cho địa chỉ IP.
Cách xác định phạm vi mạng dựa trên Subnet Mask
Máy tính chỉ làm việc với bit và để xác định phạm vi mạng mà một địa chỉ IP thuộc vào, máy tính sử dụng phép toán AND nhị phân giữa địa chỉ IP và mặt nạ mạng. Để thực hiện, ta làm như sau:
1. Chuyển đổi địa chỉ IP và mặt nạ mạng sang dạng nhị phân:
Lấy địa chỉ IP và mặt nạ mạng, chuyển đổi chúng sang dạng nhị phân. Ví dụ, nếu có địa chỉ IP là 10.0.0.1 và mặt nạ mạng là 255.0.0.0, chúng ta chuyển đổi chúng thành:
- Địa chỉ IP: 00001010.00000000.00000000.00000001
- Mặt nạ mạng: 11111111.00000000.00000000.00000000
2. Thực hiện phép AND nhị phân:
Tiếp theo, thực hiện phép toán AND nhị phân giữa các bit tương ứng của địa chỉ IP và mặt nạ mạng.
Ví dụ:
Địa chỉ IP | 00001010.00000000.00000000.00000001 |
Mặt nạ mạng | 11111111.00000000.00000000.00000000 |
Phép AND | 00001010.00000000.00000000.00000000 |
Kết quả của phép AND sẽ là địa chỉ mạng. Trong ví dụ trên, chỉ có các địa chỉ IP bắt đầu bằng 10.0.0.0 mới thuộc vào cùng một mạng.
Để xác định phạm vi mạng, ta cần chuyển đổi kết quả từ dạng nhị phân về dạng địa chỉ IP. Trong trường hợp này, phạm vi của mạng sẽ từ 10.0.0.0 đến 10.255.255.255.
Lưu ý: Subnet mask phải luôn có dạng là chuỗi số 1 và theo sau là chuỗi số 0.
Xem thêm bài viết: Cách chuyển đổi địa chỉ IP từ thập phân sang nhị phân
Cách tính subnet mask
Cách tính mặt nạ mạng phụ thuộc vào số lượng bit mạng mà bạn muốn sử dụng cho mạng con của mình. Dưới đây là các bước cơ bản để tính toán mặt nạ mạng:
- Xác định số lượng bit mạng: Đầu tiên, bạn cần xác định số lượng bit mạng bạn muốn sử dụng cho mạng con. Số lượng bit mạng này thường được xác định dựa trên yêu cầu cụ thể của mạng của bạn và số lượng mạng con bạn muốn tạo.
- Tạo chuỗi bit mạng: Sau khi xác định số lượng bit mạng, bạn sẽ tạo một chuỗi gồm các bit 1 và các bit 0. Số bit 1 sẽ bằng số bit mạng mà bạn đã xác định, và số bit 0 sẽ là số bit máy chủ còn lại.
- Chuyển chuỗi bit thành địa chỉ IP: Tiếp theo, bạn sẽ chuyển chuỗi bit mạng thành địa chỉ IP. Ví dụ, nếu bạn có một chuỗi bit mạng là 11111111.11111111.11110000.00000000, bạn sẽ chuyển nó thành địa chỉ IP tương ứng là 255.255.240.0.
- Áp dụng mặt nạ mạng: Cuối cùng, bạn sẽ áp dụng mặt nạ mạng này cho các thiết bị trong mạng của bạn để phân chia địa chỉ IP thành các mạng con nhỏ hơn.
Xem thêm bài viết: Cách tính subnet Mask chi tiết kèm ví dụ cụ thể
Cách viết Subnet mask dùng gạch chéo (VD: /8)
Slash Notation là cách viết mặt nạ mạng bằng cách chỉ ra số lượng bit mạng bằng cách sử dụng dấu ‘/’ kế tiếp. Điều này giúp biểu diễn mặt nạ mạng một cách ngắn gọn và dễ hiểu hơn, đặc biệt là trong các tình huống cần ghi chép hoặc trao đổi thông tin nhanh chóng về cấu hình mạng.
Slash Notation là cách biểu diễn mặt nạ mạng bằng một dấu gạch chéo ‘/’ kế tiếp là số lượng bit mạng của mặt nạ mạng. Ví dụ: /8, /16, /24,…
Để xác định Slash Notation của một mặt nạ mạng, đầu tiên, chúng ta chuyển đổi mặt nạ mạng từ dạng thập phân sang nhị phân.
Sau đó, chúng ta đếm số lượng bit 1 liên tiếp trong chuỗi nhị phân này.
Cuối cùng, thêm dấu ‘/’ và số lượng bit 1 đã đếm vào phía trước của dấu ‘/’.
Ví dụ, nếu mặt nạ mạng là 255.0.0.0 (11111111.00000000.00000000.00000000 trong nhị phân), chúng ta có 8 bit 1 liên tiếp. Do đó, Slash Notation tương ứng là /8.
Dưới đây là bảng liệt kê chi tiết:
Slash Notation | Subnet Mask (Dotted Decimal) | Subnet Mask (Binary) |
---|---|---|
/8 | 255.0.0.0 | 11111111.00000000.00000000.00000000 |
/9 | 255.128.0.0 | 11111111.10000000.00000000.00000000 |
/10 | 255.192.0.0 | 11111111.11000000.00000000.00000000 |
/11 | 255.224.0.0 | 11111111.11100000.00000000.00000000 |
/12 | 255.240.0.0 | 11111111.11110000.00000000.00000000 |
/13 | 255.248.0.0 | 11111111.11111000.00000000.00000000 |
/14 | 255.252.0.0 | 11111111.11111100.00000000.00000000 |
/15 | 255.254.0.0 | 11111111.11111110.00000000.00000000 |
/16 | 255.255.0.0 | 11111111.11111111.00000000.00000000 |
/17 | 255.255.128.0 | 11111111.11111111.10000000.00000000 |
/18 | 255.255.192.0 | 11111111.11111111.11000000.00000000 |
/19 | 255.255.224.0 | 11111111.11111111.11100000.00000000 |
/20 | 255.255.240.0 | 11111111.11111111.11110000.00000000 |
/21 | 255.255.248.0 | 11111111.11111111.11111000.00000000 |
/22 | 255.255.252.0 | 11111111.11111111.11111100.00000000 |
/23 | 255.255.254.0 | 11111111.11111111.11111110.00000000 |
/24 | 255.255.255.0 | 11111111.11111111.11111111.00000000 |
/25 | 255.255.255.128 | 11111111.11111111.11111111.10000000 |
/26 | 255.255.255.192 | 11111111.11111111.11111111.11000000 |
/27 | 255.255.255.224 | 11111111.11111111.11111111.11100000 |
/28 | 255.255.255.240 | 11111111.11111111.11111111.11110000 |
/29 | 255.255.255.248 | 11111111.11111111.11111111.11111000 |
/30 | 255.255.255.252 | 11111111.11111111.11111111.11111100 |
/31 | 255.255.255.254 | 11111111.11111111.11111111.11111110 |
/32 | 255.255.255.255 | 11111111.11111111.11111111.11111111 |
Mong rằng qua bài viết này, bạn đã hiểu về subnet mask và cách tính của nó!
Thông Tin Về Tác Giả
Nguyễn Thành Hợp là một chuyên gia về lĩnh vực thiết bị mạng, viễn thông gần 10 năm kinh nghiệm với nhiều chứng chỉ chất lượng như CCNA 200-301, CCNP, CCDA, CCDP,... do Cisco cung cấp. Sở thích cá nhân là khám phá những kiến thức mới mẻ về công nghệ nói chung và đặc biệt là liên quan đến lĩnh vực mạng!