Địa chỉ IP (Internet Protocol) là một phần không thể thiếu trong mạng máy tính hiện đại. Nó đóng vai trò như “địa chỉ nhà” của mỗi thiết bị kết nối vào mạng, cho phép các gói tin dữ liệu được chuyển đến đúng nơi. Bài viết này sẽ cung cấp một cái nhìn tổng quan và dễ hiểu về địa chỉ IPv4, phiên bản địa chỉ IP phổ biến nhất hiện nay.
Mục Lục
Địa chỉ IP là gì?
Tưởng tượng bạn muốn gửi một bức thư. Bạn cần biết địa chỉ của người nhận để đảm bảo thư đến đúng nơi. Địa chỉ IP cũng tương tự như vậy. Mỗi thiết bị kết nối vào mạng (ví dụ: máy tính, điện thoại, máy chủ) đều được gán một địa chỉ IP duy nhất để xác định vị trí của nó trên mạng. Nhờ có địa chỉ IP, các gói tin dữ liệu có thể được định tuyến và chuyển giao chính xác giữa các thiết bị.
Trong thế giới Internet, các địa chỉ IP đảm bảo mỗi thiết bị có một định danh riêng biệt, từ đó việc trao đổi thông tin trở nên chính xác và hiệu quả.
Cấu trúc của địa chỉ IPv4
Địa chỉ IPv4 là một chuỗi 32-bit, thường được chia thành 4 octet (mỗi octet 8 bit) và biểu diễn dưới dạng số thập phân phân tách bởi dấu chấm.
Ví dụ: 192.168.1.1
là một địa chỉ IPv4 hợp lệ.
Mỗi địa chỉ IP bao gồm hai phần chính:
- Net-ID (Network Identifier): Xác định mạng mà thiết bị thuộc về.
- Host-ID (Host Identifier): Xác định thiết bị cụ thể trong mạng đó.
Để xem địa chỉ IP của máy tính, bạn có thể sử dụng lệnh ipconfig
trong Command Prompt (Windows) hoặc ifconfig
trong Terminal (Linux/macOS).
Subnet Mask (Submask) là gì?
Subnet mask, hay còn gọi là “mặt nạ mạng”, được sử dụng để phân biệt phần Net-ID và Host-ID trong địa chỉ IP. Subnet mask cũng là một chuỗi 32-bit, thường được biểu diễn tương tự như địa chỉ IP.
Subnet mask bao gồm một chuỗi các bit 1 liên tiếp (từ trái sang phải), theo sau là một chuỗi các bit 0 liên tiếp. Số lượng bit 1 trong subnet mask cho biết số lượng bit thuộc phần Net-ID của địa chỉ IP.
Ví dụ: Subnet mask 255.255.255.0
(tương đương với /24
) có 24 bit 1, nghĩa là 24 bit đầu tiên của địa chỉ IP là phần Net-ID.
Để xác định địa chỉ IP thuộc mạng nào, ta thực hiện phép AND bitwise giữa địa chỉ IP và subnet mask.
Ví dụ: 192.168.1.3 AND 255.255.255.0 = 192.168.1.0
, vậy địa chỉ 192.168.1.3/24
thuộc mạng 192.168.1.0/24
.
Phép toán AND giữa địa chỉ IP và Subnet Mask cho phép xác định địa chỉ mạng mà thiết bị đang thuộc về.
Phân lớp địa chỉ IP
Để quản lý hiệu quả, địa chỉ IPv4 được chia thành 5 lớp (A, B, C, D, E) dựa trên octet đầu tiên của địa chỉ. Mỗi lớp có một dải địa chỉ và subnet mask mặc định khác nhau:
- Lớp A:
- Octet đầu tiên: 1-126
- Subnet mask mặc định:
255.0.0.0
- Sử dụng 1 octet đầu tiên cho Net-ID, phần còn lại cho Host-ID.
- Lớp B:
- Octet đầu tiên: 128-191
- Subnet mask mặc định:
255.255.0.0
- Sử dụng 2 octet đầu tiên cho Net-ID, 2 octet còn lại cho Host-ID.
- Lớp C:
- Octet đầu tiên: 192-223
- Subnet mask mặc định:
255.255.255.0
- Sử dụng 3 octet đầu tiên cho Net-ID, octet cuối cùng cho Host-ID.
- Lớp D: (224-239) Dành cho địa chỉ Multicast (sẽ đề cập ở phần sau).
- Lớp E: (240-254) Dùng cho mục đích thử nghiệm và nghiên cứu.
Các loại địa chỉ IP
Địa chỉ IP có thể được phân loại dựa trên mục đích sử dụng:
- Địa chỉ Unicast: Địa chỉ duy nhất của một thiết bị cụ thể trên mạng. Gói tin gửi đến địa chỉ Unicast sẽ chỉ được chuyển đến thiết bị đó.
- Địa chỉ Multicast: Đại diện cho một nhóm các thiết bị. Gói tin gửi đến địa chỉ Multicast sẽ được chuyển đến tất cả các thiết bị trong nhóm đó. Dải địa chỉ lớp D (224.0.0.0 – 239.255.255.255) được sử dụng cho mục đích Multicast.
- Địa chỉ Broadcast: Gửi thông điệp đến tất cả các thiết bị trong cùng mạng. Địa chỉ Broadcast có phần Host-ID toàn bit 1. Vì đại diện cho toàn bộ thiết bị trong mạng, địa chỉ Broadcast không thể được gán cho bất kỳ thiết bị cụ thể nào.
Minh họa cách thức hoạt động của Unicast, Multicast và Broadcast trong mạng máy tính.
Ngoài ra, còn có một số loại địa chỉ IP đặc biệt khác:
- Địa chỉ mạng: Địa chỉ đầu tiên của một mạng, có phần Host-ID toàn bit 0. Ví dụ:
192.168.1.0/24
là địa chỉ mạng của mạng192.168.1.0/24
. - Địa chỉ Default Gateway: Địa chỉ của router mà các thiết bị trong mạng sử dụng để gửi gói tin đến các mạng khác. Thường là địa chỉ IP khả dụng đầu tiên của mạng. Ví dụ: Default Gateway của mạng
192.168.1.0/24
thường là192.168.1.1/24
.
Giới hạn của địa chỉ IPv4 và giải pháp
Số lượng địa chỉ IPv4 là hữu hạn (khoảng 4.3 tỷ địa chỉ). Để giải quyết vấn đề này, các giải pháp sau đã được triển khai:
- Địa chỉ Private: Dải địa chỉ IP được sử dụng trong mạng nội bộ (LAN). Các địa chỉ này có thể được tái sử dụng trong các mạng khác nhau.
- Lớp A:
10.0.0.0 - 10.255.255.255
(subnet mask255.0.0.0
) - Lớp B:
172.16.0.0 - 172.31.255.255
(subnet mask255.240.0.0
) - Lớp C:
192.168.0.0 - 192.168.255.255
(subnet mask255.255.0.0
)
- Lớp A:
- NAT (Network Address Translation): Công nghệ cho phép các thiết bị trong mạng nội bộ sử dụng địa chỉ IP private để truy cập Internet thông qua một địa chỉ IP public duy nhất. Router sẽ thực hiện việc chuyển đổi giữa địa chỉ private và public.
- IPv6: Phiên bản địa chỉ IP mới với độ dài 128-bit, cung cấp số lượng địa chỉ gần như vô hạn.
Ví dụ về chia mạng (Subnetting)
Cho địa chỉ 192.168.155.245/27
. Xác định địa chỉ mạng, địa chỉ broadcast và dải địa chỉ có thể sử dụng cho host.
Giải:
- Prefix length = 27, suy ra subnet mask là
11111111 11111111 11111111 11100000
. - IP =
192.168.155.245
, dạng nhị phân là11000000 10101000 10011011 11110101
. - Địa chỉ mạng (phần host-id set về 0):
11000000 10101000 10011011 11100000
=192.168.155.224/27
. - Địa chỉ Broadcast (phần host-id set về 1):
11000000 10101000 10011011 11111111
=192.168.155.255/27
. - Dải địa chỉ có thể sử dụng cho host:
192.168.155.225/27
đến192.168.155.254/27
.
Một ví dụ khác: Cho mạng 192.168.155.0/24
. Chia mạng này thành các mạng con cho các phòng ban sau: Phòng A (80 máy), phòng B (60 máy), phòng C và D (mỗi phòng 25 máy).
Giải:
- Mạng
192.168.155.0/24
có tối đa 254 máy (trừ địa chỉ mạng và broadcast). - Mượn 1 bit từ host-id để tạo 2 mạng con:
11000000 10101000 10011011 00000000
=192.168.155.0/25
11000000 10101000 10011011 10000000
=192.168.155.128/25
- Tiếp tục chia mạng
192.168.155.128/25
:11000000 10101000 10011011 10000000
=192.168.155.128/26
11000000 10101000 10011011 11000000
=192.168.155.192/26
- Chia mạng
192.168.155.192/26
:11000000 10101000 10011011 11000000
=192.168.155.192/27
11000000 10101000 10011011 11100000
=192.168.155.224/27
(mỗi mạng này có 30 host sử dụng được)
Kết quả:
- Phòng A:
192.168.155.0/25
(126 hosts) - Phòng B:
192.168.155.128/26
(62 hosts) - Phòng C:
192.168.155.192/27
(30 hosts) - Phòng D:
192.168.155.224/27
(30 hosts)
Kết luận
Địa chỉ IP là nền tảng của mạng máy tính, cho phép các thiết bị liên lạc và trao đổi dữ liệu với nhau. Hiểu rõ về địa chỉ IPv4, cấu trúc, phân lớp và các loại địa chỉ khác nhau là rất quan trọng để xây dựng và quản lý mạng hiệu quả. Mặc dù IPv6 đang dần thay thế, IPv4 vẫn là giao thức phổ biến và kiến thức về nó vẫn rất hữu ích.