IPv4 là gì?

(viết tắt IPv4, từ tiếng Anh Internet Protocol version 4) là phiên bản thứ tư trong quá trình phát triển của các giao thức Internet (IP). Đây là phiên bản đầu tiên của IP được sử dụng rộng rãi.

IPv4 cùng với IPv6 (giao thức Internet phiên bản 6) là nòng cốt của giao tiếp internet. Hiện tại, IPv4 vẫn là giao thức được triển khai rộng rãi nhất trong bộ giao thức của lớp internet.

Giao thức này được công bố bởi IETF trong phiên bản RFC 791 (tháng 9 năm 1981), thay thế cho phiên bản RFC 760 (công bố vào tháng 1 năm 1980). Giao thức này cũng được chuẩn hóa bởi bộ quốc phòng Mỹ trong phiên bản MIL-STD-1777.

IPv4 là giao thức hướng dữ liệu, được sử dụng cho hệ thống chuyển mạch gói (tương tự như chuẩn mạng Ethernet). Đây là giao thức truyền dữ liêu hoạt động dựa trên nguyên tắc tốt nhất có thể, trong đó, nó không quan tâm đến thứ tự truyền gói tin cũng như không đảm bảo gói tin sẽ đến đích hay việc gây ra tình trạng lặp gói tin ở đích đến.

Việc xử lý vấn đề này dành cho lớp trên của chồng giao thức TCP/IP. Tuy nhiên, IPv4 có cơ chế đảm bảo tính toàn vẹn dữ liệu thông qua sử dụng những gói kiểm tra (checksum)..

Cách chia IPv4

Chú ý:  n m = số bít làm HostID

Lớp A: n m =24

Lớp B: n m =16

Lớp C: n m =8

Ta nhìn vào địa chỉ đề bài đưa ra và biết rằng nó thuộc lớp C theo quy tắc phân lớp của IPv4. Lớp C sẽ có 24 bit dùng cho NetID. Ở đây ta thấy /29 – đồng nghĩa rằng nó mượn 5 bit.

29 = 24 5

Vậy n = 5 . Đồng thời, ta tìm được m = 3. Giải thích: n là số bit đi vay mượn từ anh HostID, còn m là số bit còn sót lại của HostID sau khi cho mượn. Với địa chỉ lớp C, ta biết m n = 8, bằng với số bit HostID.

Bước 1: là tìm số đường mạng hay còn nói theo cách thuật ngữ là số subnet sẽ tính được là 2^5=32 nhánh tất cả. Hình dung công ty được cấp 1 địa chỉ IP, nhưng lại có quá nhiều phòng ban, ta sẽ từ địa chỉ ban đầu phân nhánh ra cho các phòng ban để đảm bảo đủ số máy được cấp xài. Như ví dụ này thì có thể phân ra 32 đường mạng từ một đường mạng gốc ban đầu.

Bước 2: xác định xem trong mỗi đường mạng đó sẽ có bao nhiêu máy tính đặt trong đó. Hiểu đơn giản là vậy. Mỗi host là 1 máy tính. Bé vẫn không hiểu? Đọc lại tài liệu =)))))

Bước 3: là tìm subnet mask mới. Bước này chỉ cần nhớ, anh mượn bao nhiêu, anh phải bật lên bấy nhiêu bit 1. Cụ thể, subnet mask mặc định của lớp C lúc đầu là:

1111 1111. 1111 1111. 1111 1111. 0000 0000

Do mượn 5 bit, nên phải bật 5 con số 1 ở phần HostID lên. Lúc này subnet mask mới sẽ là:

1111 1111. 1111 1111. 1111 1111. 1111 1000

Đổi ra hệ thập phân cho dễ nhìn sẽ là 255.255.255.248. Xong bước 3.

Bước 4: là tìm bước nhảy. Ta áp dụng công thức phía trên, sẽ tìm được b = 256 – 248 = 32. Lưu ý, số X bị trừ chính là con số subnet mask mới tìm được (là 248).

 

 

Bước 5: là tìm NetID. Có thể sau khi nhìn công thức trên, ta vẫn chưa hiểu được cách thực hiện ở bước này là như thế nào. Ta quan sát hình bên dưới.

Nhìn hình trên, ta có thể hiểu ra vấn đề: i chính là 0, 1 và 2,… còn nữa nhưng do không đủ khoảng cách nên tôi không đánh ra hết. Tại sao ta lấy luôn NetID thứ 0? Giải thích: công thức ta học trên lớp cũ rồi, các router bây giờ hỗ trợ sử dụng cả 2 lớp đầu và cuối luôn, CHÍNH VÌ THẾ mà ở Bước 1 công thức không có ‘-2’ là như vậy.

Trong hình trên, địa chỉ đỏ đậm màu chính là NetID đại diện cho TOÀN BỘ cột đó. Bước 5 tới đây là hoàn tất.

Bước 6: là xác định địa chỉ đầu tiên, địa chỉ cuối cùng, đồng thời địa chỉ broadcast của từng cột.

phan-chia

Giải thích cột đầu tiên, các cột tiếp theo tương tự. Như ta biết trên bước 5, dòng đầu tiên là địa chỉ mạng của cả cái cột đó – các máy trong cột 0 đều có chung một địa chỉ mạng chung là 192.168.1.0.

Máy đầu, ta lấy cái NetID cộng thêm 1 là ra được địa chỉ đầu tiên trong dãy.

Máy cuối, ta lấy NetID kế tiếp, trong hình bây giờ dễ hình dung công thức hơn rồi, đó chính là cột kế bên nó – cột 32. Ta đánh địa chỉ máy cuối cùng trong cột sẽ là 30 vì tuân thủ công thức NetID kế trừ đi cho 2.

Còn về broadcast, ta lấy NetID kế tiếp trừ cho 1 thôi.

Mẹo: Sau này để tiện tính toán, bạn đừng xáo trộn thứ tự trên, vì sắp xếp như vậy, ta thấy broadcast bao giờ cũng lớn hơn máy cuối 1 số.