Các bài toán tính wildcard mask
1. Wildcard mask match 1 host
Vd: Tính wildcard mask match host 192.168.1.1
Theo nguyên tắc: bit 0 kiểm tra – bit 1 bỏ qua
-> Địa chỉ IP: 192.168.1.1 0.0.0.0 hoặc từ khóa “host”
2. Wildcard mask match tất cả địa chỉ IP
Vd: Tính wildcard mask match tất cả địa chỉ IP
Theo nguyên tắc: bit 0 kiểm tra – bit 1 bỏ qua
-> Địa chỉ IP: 192.168.1.1 255.255.255.255 hoặc từ khóa “any”
3. Wildcard mask match 1 subnet
Vd: Tính wildcard mask match subnet 192.168.1.0/24
Cách tính: Lấy 255.255.255.255 trừ đi subnet mask của subnet
-> Địa chỉ IP: 192.168.1.1 0.0.0.255
4. Tính Wildcard mask match range địa chỉ IP liên tục
Vd: Tính wildcard mask match range từ 192.168.2.0 đến 192.168.4.255
Cách tính: Lấy địa chỉ cuối trừ địa chỉ đầu
-> Địa chỉ IP: 192.168.2.0 0.0.2.255
5. Tính widcard mask match 1 số IP add đầu tiên
Vd: Cho địa chỉ IP 192.168.1.0, tính wildcard mask match X host đầu tiên
-> Dải địa chỉ cần match: 192.168.1.0 - > 192.168.1.X
-> wildcard mask: 0.0.0.X (lấy địa chỉ cuối trừ địa chỉ đầu)
-> Địa chỉ IP: 192.168.1.0 0.0.0.X
6. Tính wildcard mask của nửa trên (upper half) hoặc nửa dưới (lower half) 1 dải mạng:
Vd: Cho địa chỉ IP 192.168.1.0, tính wildcard mask match nửa dải IP phía trên và dưới:
-> Dải địa chỉ nửa trên: 192.168.1.0 - > 192.168.1.127
-> wildcard mask: 0.0.0.127 (lấy địa chỉ cuối trừ địa chỉ đầu)
-> Địa chỉ IP: 192.168.1.0 0.0.0.127
-> Dải địa chỉ nửa dưới: 192.168.1.128 - > 192.168.1.255
-> wildcard mask: 0.0.0.127 (lấy địa chỉ cuối trừ địa chỉ đầu)
-> Địa chỉ IP: 192.168.1.128 0.0.0.127
7. Tính wildcard mask match IP lẻ, hoặc IP chẵn
1 địa chỉ Ip lẻ / chẳn là địa chỉ có octet cuối cùng dạng thập phân là số lẻ / chẳn
Vd: IP lẻ - 192.168.1.1
IP chẵn – 192.168.1.2
Nhận xét: bit cuối cùng của IP lẻ luôn là bit 1, bit cuối cùng của IP chẵn luôn là bit 0. Vậy wildcard mask thỏa mãn phải tạo ra một dải địa chỉ IP có bit cuối của octet cuối không đổi bằng 0 hoặc 1.
Giải pháp: để router luôn match bit cuối của octet cuối của địa chỉ IP, bit tương ứng trên wildcard mask phải là bit 0
Vd1: Cho địa chỉ IP: 192.168.1.0, tính wildcard mask match tất cả IP chẵn:
-> wildcard mask: 0.0.0.254 (dạng nhị phân: 00000000.00000000.00000000.11111110)
-> Địa chỉ IP: 192.168.1.0 0.0.0.254 (IP chẵn có bit cuối luôn bằng 0)
Vd2: Cho địa chỉ IP: 192.168.1.0, tính wildcard mask match tất cả IP lẻ
-> wildcard mask: 0.0.0.254 (dạng nhị phân: 00000000.00000000.00000000.11111110)
-> Địa chỉ IP: 192.168.1.1 0.0.0.254 (IP lẻ có bit cuối luôn bằng 1)
8. Tính wildcard mask match 1 range IP address không liên tục
Đây là dạng toán tính wildcard mask phức tạp nhất vì admin không có cách nào sử dụng 1 wildcard mask để tạo thành địa chỉ IP match tất cả dải IP ban đầu:
Vd: Tính wildcard mask match dải: 192.168.1.15 - > 192.168.1.75
Nhận xét: Đây là một dải IP không liên tục , không có 1 wildcard mask nào có thể thỏa mãn dải không liên tục. Tuy nhiên đối với những dải IP liên tục thì luôn có wildcard mask thỏa mãn.
Giải pháp: Chia dải IP ban đầu thành những dải nhỏ mà trong đó luôn tìm được 1 wildcard mask thỏa mãn mỗi dải. Vậy cách chia như thế nào? Nhắc lại: mỗi bit trong octet phần host đại diện cho một nhóm các host gọi là một block size. Bit cuối cùng là block size 1 vì nó thể hiện 1 host, tương tự bit đầu tiên là block size 128. Và, mỗi block size luôn tìm được 1 wildcard mask thỏa mãn.
Chia dải thành các block size:
- 192.168.1.15 (1)
- 192.168.1.16 - > 192.168.1.31 (2)
- 192.168.1.32 - > 192.168.1.63 (3)
- 192.168.1.64 -> 192.168.75 (4)
Tính wildcard mask cho mỗi block size:
- (1): 192.168.1.15 0.0.0.0 - > IP host
- (2): 192.168.1.16 0.0.0.15
- (3): 192.168.1.32 0.0.0.31
- (4): Chưa có wildcard mask phù hợp, ta phân tích dạng nhị phân octet cuối để tách tiếp wildcard mask:
.64: 01000000
.75: 01001011
-> Ta tách thành: 01000000 -> 01000111 (5)
01001000 -> 01001011 (6)
-> (5): 192.168.1.64 0.0.0.7
(6): 192.168.1.72 0.0.0.3
Tổng kết: Như vậy, từ dải IP ban đầu, ta tách thành 6 dải nhỏ (1)(2)(3)(4)(5)(6). Quả thật là một công trình “vĩ đại”…
(st)
access-list
,
cisco
,
IT
,
wildcard mask
Để bắt đầu tham gia Giao dịch tài chính:
ô đây là bài lần trước mình viết đây mà, nhớ thế :D
ReplyDeleteCẢM ƠN CHỦ THỚT VÌ BÀI VIẾT BỔ ÍCH! Nhưng mình thấy phần 4 và 5 có vấn đề, ví như địa chỉ 192.168.4.0 <-> 192.168.0000 0100.0 và wildcard mask: 0.0.0000 0020.255 thì rõ ràng là không phù hợp ở bít 3 và 2 (cực phải)dẫn đến địa chỉ 192.168.4.0 là ko hợp lệ và cả 5 cũng vậy nếu X = 25 <-> 0001 1001 thì với địa chỉ 192.168.1.4 thì 4 <->
ReplyDelete0000 0100 thì khi match(kiểm tra) chắc chắn là ko phù hợp (sẽ không nằm trong dải 192.168.1.0 0.0.0.25). Theo mình nghĩ thì 4 và 5 đều phải tính theo 8 (chỉa nhỏ địa chỉ để có subnet mask hợp lí, rùi lấy 255.255.255.255 - subnet mask đó). Đấy là suy nghĩ của mình nếu có sai gì mong bạn chỉ giúp. :)
hay lắm cám ơn bạn
ReplyDeletelàm thế nào để biết một dãy các địa chỉ liên tục hay không liên tục
ReplyDeletebạn tính sai nhiều quá
ReplyDeleteBạn Dương Minh Đức nói đúng rồi, mình kiểm đi kiểm lại nhiều lần vẫn cứ thấy phần 4 và 5 có gì đó sai sai. Wildcard mask khi chuyển sang nhị phân thường phải là một dãy số 1 đi kèm với nhau chứ nếu như ad tính thì 0.0.2.255 => 0.0.00000010.255 vậy tại octet thứ 3 có bit 1 xen giữa bơ vơ như vậy thì là sai rồi. Nên tính theo cách thứ 8 cho phần 4 và 5 luôn.
ReplyDelete