Truyện Cười BlogTaPhiet KC

Chat Box


--------------:Search

Thứ Năm, 2 tháng 2, 2012

Subnet mask và cách chia

Ở bài Cấu trúc IP ta đã biết sơ qua về khái niệm và cấu trúc của IPv4. Bài này mình sẽ trình bày rõ về cách chia Subnetmask

Subnet là gì?: Hiểu đơn giản vầy. Khi ta chia một Network ra thành nhiều Network nhỏ hơn thì các Network nhỏ này được gọi là Subnet.
Vì sao cần phải chia Subnet mask?

Như ta đã biết mạng Internet sử dụng địa chỉ IPv4 32 bit và phân chia ra các lớp A,B,C,D , tuy nhiên, với một hệ thống địa chỉ như vậy việc quản lý vẫn rất khó khăn . Nếu như một mạng được cấp một địa chỉ lớp A thì có nghĩa nó có thể chứa tới 16*1.048.576 địa chỉ ( máy tính ) .Với số lượng máy tính lớn như vậy rất ít công ty hoặc tổ chức dùng hết được điều đó gây lãng phí địa chỉ IP. Để tránh tình trạng đó các nhà nghiên cứu đưa ra một phương pháp là sử dụng mặt nạ mạng con ( Subnet mask ) để phân chia mạng ra thành những mạng con gọi là Subnet. Subnet mask là một con số 32 bit bao gồm n bit 1 ( thường là các bit cao nhất ) dùng để đánh địa chỉ mạng con và m bit 0 dùng để đánh địa chỉ máy trong mạng con với n+m=32 .
Subnet mask phải được cấu hình cho mỗi máy tính trong mạng và phải được định nghĩa cho mỗi giao diện Router. Như vậy, ta phải dùng cùng một Subnet mask cho toàn bộ mạng vật lý cùng chung một địa chỉ Internet. Trong thực tế, để dễ dàng cho hoạt động quản lý các máy trong mạng, thường chia nhỏ các mạng lớn trong các lớp mạng (A, B, C) thành các mạng nhỏ hơn. Quá trình này được thực hiện bằng cách lấy một số bit ở phần định danh host để sử dụng cho việc đánh địa chỉ mạng. Tuỳ theo cách sử dụng của người quản trị mạng ( số subnet và số host trên mỗi subnet ) mà số lượng bit lấy ở phần host nhiều hay ít.
Để tách biệt giữa địa chỉ mạng và địa chỉ host người ta dùng netmask. Để tách biệt giữa Subnet address và địa chỉ host người ta dùng Subnet mask.

Theo quy ước, các địa chỉ IP được chia ra làm ba lớp như sau:
Class  Subnet mask trong dạng nhị phân              Subnet mask
Lớp A 11111111 00000000 00000000 00000000   255.0.0.0
Lớp B 11111111 11111111 00000000 00000000   255.255.0.0
Lớp C 11111111 11111111 11111111 00000000   255.255.255.0 

Như ta đã biết, lớp A sử dụng 1 octet đầu tiên làm Network ID. Sử dụng 8 bit đầu được set  giá trị thành 1, và 24 bit sau set giá trị 0 => có Subnet Mask 255.0.0.0. Tương tự với các lớp kia.
Ví dụ IP: 192.168.1.0/24
Đây là địa chỉ thuộc lớp C. Và con số 24 có nghĩa là ta sử dụng 24 bit cho phần Network ID, và còn lại 8 bit cho Host ID.

Chia Subnet Mask như thế nào?

Ở đây, mình sẽ trình bày cách ngắn gọn giúp bạn có thể tính nhẩm được. Lấy ví dụ cụ thể như sau:
Công ty thuê một đường IP là 192.168.1.0. Bây giờ ông giám đốc yêu cầu phân làm chia làm 3 mạng con cho ba phòng ban trong công ty. Hãy thực hiện việc chia subnet này.

Trước hết ta phân tích cấu trúc của địa chỉ: 192.168.1.0 như sau:
+ Địa chỉ NetMask: 255.255.255.0
+ Network ID: 11111111.11111111.11111111
+ HostID: 00000000

Trong ví dụ này ta cần chia làm 3 mạng con (3 subnet) nên ta cần sử dụng 2 bit ở phần Host ID để thêm vào Network ID. Làm sao để biết được số bit cần mượn thêm? Ta có công thức : 2^n>=m (với m là số subnet cần chia, n là số bit cần mượn). Ở đây 2^2>=3.
Sau khi mượn 2 bit, ta có cấu trúc mới ở dạng nhị phân là (bit mượn ta set giá trị bằng 1 nhé):
+ Địa chỉ NetMask:: 11111111.11111111.11111111.11000000
+ Network ID: 11111111.11111111.11111111.11
+ Host ID: 000000
=> Ở dạng thập phân là: 255.255.255.192

Địa chỉ IP mới lúc này là: 192.168.1.0/26 (con số 26 là 24 + 2 bits mượn).
Ta xác định "bước nhảy" cho các subnet:
Bước nhảy k=256-192=64
=> Ta có các mạng con sau:
Ip: 192.168.1.0         Netmask: 255.255.255.192
Ip: 192.168.1.64        Netmask:  255.255.255.192
Ip: 192.168.1.128      Netmask: 255.255.255.192
Ip: 192.168.1.192      Netmask: 255.255.255.192

Như vậy số máy trên mỗi mạng bằng bao nhiêu?
Số bits của Host ID còn lại sau khi đã bị Network ID mượn: x = 32-26 = 6
=> Số máy trên mỗi mạng: 2^n-2 = 2^6-2 = 62 máy
Share/Save/Bookmark

Đăng nhận xét

More →
Chữ đậm Chữ nghiêng Chữ nghiêng 2 Chèn Link Chèn Link Mã hóa code Help ?Nhấn vào biểu tượng hoặc kiểu chữ hoặc chèn link sau đó nhấn nút Chọn rồi copy (Ctrl + C) để paste (Ctrl + V) vào khung viết bình luận. Mã hóa code nếu bạn muốn đưa code vào bình luận.

Chọn Xóa
Top