IPv4

Đánh địa chỉ

IPv4 sử dụng 32 bits để đánh địa chỉ, theo đó, số địa chỉ tối đa có thể sử dụng là 4.294.967.296 (2³²). Tuy nhiên, do một số được sử dụng cho các mục đích khác như: cấp cho mạng cá nhân (xấp xỉ 18 triệu địa chỉ), hoặc sử dụng làm địa chỉ quảng bá (xấp xỉ 16 triệu), nên số lượng địa chỉ thực tế có thể sử dụng cho mạng Internet công cộng bị giảm xuống. Với sự phát triển không ngừng của mạng Internet, nguy cơ thiếu hụt địa chỉ đã được dự báo, tuy nhiên, nhờ công nghệ NAT (Network Address Translation - Chuyển dịch địa chỉ mạng) tạo nên hai vùng mạng riêng biệt: Mạng riêng và Mạng công cộng, địa chỉ mạng sử dụng ở mạng riêng có thể dùng lại ở mạng công công mà không hề bị xung đột, qua đó trì hoãn được vấn đề thiếu hụt địa chỉ
Chuẩn IPv6, với số lượng bits dùng để đánh địa chỉ nhiều hơn đã được xây dựng nhằm thay thế IPv4 trong tương lai. Hiện tại, công nghệ IPv6 đã được triển khai ở một số quốc gia.

Đánh địa chỉ liên kết cục bộ

RFC 3330 định nghĩa một dải địa chỉ thuộc lớp B 169.254.0.0/16 dành riêng cho việc đánh địa chỉ mạng cục bộ. Những địa chỉ thuộc dải này chỉ có giá trị khi được gán cho thiết bị có các kết nối thuộc phân đoạn mạng cục bộ hoặc các kết nối điểm - tới - điểm (point to point, p2p). Những địa chỉ này cũng không được lưu trong bảng định tuyến tương tự như địa chỉ dành cho mạng riêng, có nghĩa là, chúng không thể trở thành địa chỉ nguồn hay đích đến của các gói tin được truyền trong mạng internet. địa chỉ liên kết cục bộ (Link-local addresses) chủ yếu được sử dụng để tự động cấu hình địa chỉ, (Zeroconf) trong trường hợp thiết bị không được cấp phát địa chỉ từ máy chủ DHCP hoặc từ các phương pháp cấp phát địa chỉ nội bộ khác.
Khi dải địa chỉ được dự trữ, không tồn tại tiêu chuẩn cho cơ chế tự cấu hình địa chỉ, để lấp chỗ trống, Microsoft đưa ra bổ sung có tên Tự động cấp phát địa chỉ IP dành riêng (Automatic Private IP Addressing - APIPA). Dựa vào thị phần của Microsoft, APIPA đã được triển khai trên hàng triệu máy tính, qua đó trở thành một chuẩn trong lĩnh vực CNTT (de facto). Nhiều năm sau, IETF định nghĩa một chuẩn chính thức, RFC 3927, cho chức năng này. Ý nghĩa của chuẩn này là: Tự động cấu hình địa chỉ liên kết cục bộ cho chuẩn IPv4 (Dynamic Configuration of IPv4 Link-Local Addresses).

Địa chỉ Broadcast và địa chỉ Default route

Đôi khi bạn có thể gán địa chỉ dạng x.x.x.0 hay x.x.x.255 cho host, tuy nhiên, trong nhiều trường hợp, địa chỉ dạng trên không được chấp nhận khi gán cho host. Tình huống này thường gặp khi địa chỉ được dùng nằm trong dải có subnet mask từ 24 bits trở lên. Ví dụ 192.168.100.0/24 (192.168.100.0 255.255.255.0) hay 192.168.10.255/25 (192.168.10.255 255.255.255.128). Những địa chỉ dạng này không thể gán cho host, bởi nó là địa chỉ Default route và địa chỉ Broadcast!
Địa chỉ Broadcast là địa chỉ được sử dụng làm đích đến của một gói tin khi một host muốn gửi gói tin đó đến tất cả các host còn lại trong mạng LAN. Trong mỗi subnet - LAN (mạng con), địa chỉ cuối cùng trong dải địa chỉ của mạng này chính là địa chỉ Broadcast. Không thể gán địa chỉ Broadcast cho một host cụ thể nào trong mạng.
Địa chỉ Default route là địa chỉ định danh cho một mạng con (LAN, subnet). Nó là địa chỉ đầu tiên trong dải địa chỉ của subnet. Tương tự như địa chỉ broadcast, địa chỉ default route cũng không thể gán cho một host cụ thể.
Một số ví dụ về default route và broadcast:
Dải địa chỉ 140.10.0.0/23 đến 140.10.1.255/23 có địa chỉ broadcast là 140.10.1.255 và địa chỉ default route là 140.10.0.0
Dải địa chỉ: 192.168.1.0/24 đến 192.168.1.255/24 có địa chỉ broadcast là 192.168.1.255 và địa chỉ default route là 192.168.1.0
Dải địa chỉ: 192.168.20.128/26 đến 192.168.20.191/26 có địa chỉ broadcast là 192.168.20.191 và địa chỉ default route là 192.168.20.128

Giải pháp tên miền

Các thiết bị trong mạng giao tiếp với nhau thông qua địa chỉ IP. Tuy nhiên, việc ghi nhớ danh sách các chuỗi địa chỉ đối với người sử dụng internet là vô cùng khó khăn, gần như là không thể. Trong khi đó, việc ghi nhớ các cụm ký tự có tính "gợi nhớ" dễ dàng hơn nhiều.
Để giải quyết vấn đề này, hệ thống tên miền (DNS: Domain Name System) ra đời. Có thể xem DNS như một dạng từ điển gồm hai cột, một cột là địa chỉ IP, cột còn lại là tên miền. Khi người dùng gõ một tên miền vào trình duyệt, tên miền này sẽ được gửi đến một máy chủ DNS để "dịch" tên miền này sang địa chỉ IP, là địa chỉ được sử dụng để các thiết bị mạng giao tiếp với nhau.

Nguy cơ hết địa chỉ

Trong giai đoạn Internet đang ngày càng phát triển, các địa chỉ IPv4 đang dần cạn kiệt, để giải quyết vấn đề này, các địa chỉ IPv6 đang được đưa vào sử dụng để tránh tình trạng quá tải đối với địa chỉ IPv4.

Giải pháp NAT

Sự ra đời của chuẩn dải mạng riêng (private) cho phép các tổ chức có thể cùng sử dụng một dải địa chỉ để gán cho các thiết bị mạng của mình mà không sợ bị xung đột. Tuy nhiên, một vấn đề đặt ra là: "làm thế nào để các mạng riêng này có thể giao tiếp với hệ thống mạng công cộng"? Công nghệ "dịch địa chỉ mạng" (NAT: Network Address Translation) ra đời giúp giải quyết vấn đề này.
Về cơ bản, có thể hình dung NAT như một bảng liên kết gồm hai phần, một phần là danh sách các địa chỉ của mạng riêng có nhu cầu giao tiếp với mạng công cộng, phần còn lại là địa chỉ công cộng được chỉ định làm đại diện cho các địa chỉ mạng riêng (tạm gọi là địa chỉ NAT).
Khi một host trong mạng riêng muốn giao tiếp với một host trong mạng công cộng, nó sẽ đóng gói bản tin với địa chỉ nguồn là địa chỉ mạng riêng của chính nó (host Pri, có địa chỉ IP là: PriAdd), địa chỉ đích là địa chỉ của host trong mạng công cộng (Host Pub, có địa chỉ IP là: PubAdd). Gói tin này sẽ được gửi tới NAT, tại đây, toàn bộ gói tin này được đóng gói thêm một lần nữa, địa chỉ đích của gói mới vẫn là PubAdd, nhưng địa chỉ nguồn thì được đổi thành địa chỉ NAT. Để phản hồi về Pri, Pub đóng gói gói tin với địa chỉ nguồn là PubAdd, địa chỉ đích là PriAdd, sau đó tiếp tục sử dụng "lớp vỏ" NAT đóng gói tiếp một lần nữa để tạo thành gói NAT, gói NAT này có địa chỉ nguồn là PubAdd, địa chỉ đích là địa chỉ NAT.

Mạng riêng ảo

Địa chỉ mạng riêng không xuất hiện trong mạng công cộng, do vậy, các gói tin có địa chỉ đích đến là địa chỉ thuộc mạng riêng sẽ bị các router trong mạng công cộng bỏ qua. Điều đó dẫn đến tình trạng hai mạng riêng không thể giao tiếp trực tiếp với nhau thông qua mạng internet. Cần phải tạo nên một "đường hầm" xuyên qua mạng internet hoặc xây dựng một mạng riêng ảo (VPN: Virtual Private Network) để hai mạng riêng này có thể giao tiếp với nhau.
Mạng riêng ảo là một mạng máy tính cho phép hai mạng riêng kết nối với nhau một cách tin cậy trên nền mạng Internet công cộng. Dữ liệu truyền trong mạng riêng ảo được đóng gói theo phương thức mã hóa an toàn giúp cho gói tin có thể truyền qua nhiều thiết bị mạng thuộc mạng công cộng và các mạng riêng khác nhau.
Hiện tại, có nhiều cách phân loại, thực thi cũng như cách sử dụng VPN khác nhau.

Cấu trúc gói tin IP

Một gói tin IP bao gồm một đoạn header và đoạn dữ liệu