Bài 8 : Một số giao thức mạng – ARP

30/07/2026
Bởi Lê Đức Phương
Mục này là phần 8 của 10 trong series CCNA - Mạng cơ bản

1. ARP là gì và tại sao cần ARP?

Khi các host IP được kết nối với nhau thông qua một data link Ethernet, mọi gói tin IP do chúng trao đổi với nhau đều phải được đóng gói vào các Ethernet frame để có thể di chuyển được trên data link này. Để có thể xây dựng được Ethernet frame chứa gói IP cần trao đổi, host gửi cần một số thông tin đặc thù để thực hiện đóng frame gồm: source MAC – địa chỉ MAC của host gửi, destination MAC – địa chỉ MAC của host nhận và giá trị Ethertype tương ứng với giao thức lớp 3 trong phần Payload.

Trong 3 thông số vừa nêu, host gửi có thể xác định được 2 thông số là source MAC – chính là địa chỉ MAC trên card mạng Ethernet của nó và Ethertype = 0x0800 – là giá trị chuẩn được IEEE quy định dành riêng cho giao thức IP; tuy nhiên, host gửi lại không thể biết được destination MAC – địa chỉ MAC trên card mạng Ethernet của host nhận. Để có thể xác định được địa chỉ MAC của host nhận, host gửi phải sử dụng một giao thức đặc biệt có tên gọi là ARP – Address Resolution Protocol – Giao thức phân giải địa chỉ. Giao thức này cho phép một host khi kết nối vào data link Ethernet có thể xác định được địa chỉ MAC của một host khác dựa vào địa chỉ IP đã biết trước đó của host ấy.

2. Ví dụ về hoạt động của ARP trong mạng LAN

Để nắm được ý tưởng hoạt động của ARP, chúng ta cùng quan sát một ví dụ (hình 1):

Screenshot 2026 07 30 at 08.43.54

Hình 1. Ví dụ về hoạt động của giao thức ARP

Trong ví dụ trên hình 1, ta có một mạng Ethernet LAN đơn giản được thiết lập bằng cách đấu nối 3 host vào một Ethernet switch. Các host có địa chỉ IP và địa chỉ MAC như được chỉ ra trên hình vẽ.

Giả sử Host 1 muốn gửi dữ liệu đến Host 2, chẳng hạn ping hoặc chia sẻ file với Host 2. Host 1 cần phải đóng gói IP dữ liệu mà nó muốn gửi đến Host 2. Những gói tin IP này có source IP và destination IP được xác định như sau:

  • Source IP: Sẽ được lấy là địa chỉ IP trên card mạng của Host 1, trong ví dụ này là 192.168.1.1.
  • Destination IP: Là IP của Host 2, trong ví dụ này là 192.168.1.2.

Tham số Destination IP sẽ được chỉ ra tường minh khi Host 1 cần phải thực hiện tác vụ trao đổi dữ liệu với Host 2. Ví dụ: nếu Host 1 ping Host 2 thì địa chỉ IP của Host 2 sẽ được chỉ rõ trong câu lệnh “ping” của Host 1; hoặc nếu Host 1 truy nhập web đến Host 2 thì IP của Host 2 cũng sẽ được chỉ rõ trong hoạt động truy nhập web của Host 1.

Đến lượt chúng, những gói tin IP vừa được xây dựng cần phải được đóng gói vào các Ethernet frame để có thể truyền đi được trên data link Ethernet. Các Ethernet frame này sẽ có các địa chỉ source MAC và destination MAC được xác định như sau:

  • Source MAC: Host 1 sẽ sử dụng source MAC chính là địa chỉ MAC trên card mạng của nó.
  • Destination MAC: Là địa chỉ MAC của Host 2. Tuy nhiên, như đã nêu ở trên, Host 1 sẽ không thể biết được địa chỉ MAC của Host 2 là gì. Để tìm cho ra địa chỉ MAC này nhằm hoàn tất tiến trình đóng gói IP packet vào Ethernet frame, Host 1 cần phải sử dụng giao thức ARP.

Hoạt động ARP được mô tả trên hình 2

Screenshot 2026 07 30 at 08.45.13

Hình 2. Hoạt động của giao thức ARP

Quá trình ARP tìm kiếm địa chỉ MAC tướng ứng với một địa chỉ IP được tiến hành như sau:

  1. Host 1 thực hiện phát broadcast một loại gói tin của giao thức ARP có tên là ARP Request vào Ethernet link. Gói ARP request của Host 1 có nội dung truy vấn các thiết bị trên LAN rằng thiết bị nào đang sử dụng IP là 192.168.1.2 thì hãy cho Host 1 biết địa chỉ MAC.
  2. Vì gói ARP Request được phát đi broadcast nên mọi host trên mạng LAN đều nhận được gói này, tuy nhiên chỉ Host 2 mang địa chỉ IP 192.168.1.2 mới trả lời truy vấn. Để trả lời cho gói ARP Request của Host 1, Host 2 sử dụng một loại gói tin khác của giao thức ARP có tên là ARP Reply. Gói ARP Reply do Host 2 phát ra sẽ được gửi unicast trở lại cho Host 1. Địa chỉ MAC của Host 2 sẽ được thông báo trong gói tin này.
  3. Khi Host 1 nhận được gói ARP Reply từ Host 2, nó thực hiện kiểm tra nội dung gói này, từ đó biết được địa chỉ MAC cần tìm. Sau đó, Host 1 thực hiện đóng frame gói IP mà nó định gửi cho Host 2 với destination MAC là địa chỉ MAC của Host 2 mà nó mới biết được.

Để có thể sử dụng kết quả truy vấn này cho những lần trao đổi dữ liệu tiếp theo, Host 1 thực hiện lưu kết quả phân giải ARP vào trong bảng ARP cache của nó.

3. ARP Cache

Hoạt động phân giải ARP sẽ được diễn ra tương tự khi Host 1 tiến hành trao đổi dữ liệu với các host còn lại trên mạng LAN. Cuối cùng, Host 1 sẽ có được cập nhật IP – MAC cho mọi host khác trong bảng ARP Cache của nó (hình 3):

Screenshot 2026 07 30 at 08.46.00

Hình 3. ARP cache của Host1

Để hiển thị nội dung của ARP cache (còn gọi là bảng ARP) trên router Cisco sử dụng IOS, chúng ta dùng lệnh “Router#show ip arp” . Với các host chạy hệ điều hành Windows, chúng ta dùng lệnh “arp – a” trong cửa sổ CMD. Ví dụ:

Bảng ARP trên một Cisco router:

Router#show ip arp
Protocol  Address          Age (min)  Hardware Addr   Type   Interface
Internet  192.168.123.1           -   000c.29e5.bac7  ARPA   FastEthernet0/0
Internet  192.168.123.2           2   001f.6c6e.90d0  ARPA   FastEthernet0/0
Internet  192.168.123.3           2   f025.720f.c3c8  ARPA   FastEthernet0/0

Bảng ARP trên một Windows host:

C:\>arp -a

Interface: 192.168.2.82 --- 0xf
  Internet Address      Physical Address      Type
  192.168.2.1           70-df-2f-cf-b2-c5     dynamic
  192.168.2.255         ff-ff-ff-ff-ff-ff     static
  224.0.0.22            01-00-5e-00-00-16     static
  224.0.0.251           01-00-5e-00-00-fb     static
  224.0.0.252           01-00-5e-00-00-fc     static
  239.255.255.250       01-00-5e-7f-ff-fa     static
  255.255.255.255       ff-ff-ff-ff-ff-ff     static

Như vậy, nhờ giao thức ARP, các thiết bị kết nối vào một Ethernet LAN mới có được đầy đủ thông tin về địa chỉ MAC để thực hiện được hoạt động đóng gói IP lớp 3 vào frame Etherne lớp 2. Từ đó, các host IP mới có thể tiến hành trao đổi dữ liệu TCP/IP với nhau qua đường data link Ethernet.

4. ARP khi gửi dữ liệu ra ngoài mạng LAN

Trên đây, chúng ta đã phân tích hoạt động của ARP khi các host trong cùng một mạng LAN truyền dữ liệu cho nhau. Tiếp theo, chúng ta sẽ cùng xem xét quá trình phân giải ARP khi một host trong một mạng LAN trao đổi dữ liệu với một host khác nằm bên ngoài mạng LAN ấy. Ví dụ:

Screenshot 2026 07 30 at 08.49.08

Hình 4. Ví dụ về phân giải ARP khi host gửi dữ liệu ra bên ngoài mạng LAN

Trong ví dụ ở hình 4, mạng LAN vẫn gồm một switch và 3 host kết nối giống như trong ví dụ trước, nhưng lần này có thêm router R1 làm gateway để các host trong mạng có thể gửi dữ liệu ra bên ngoài. Do đó, bên cạnh địa chỉ IP đã cấu hình trên card mạng, các host còn phải khai báo thêm địa chỉ default – gateway (trong ví dụ này là “192.168.1.254”).

Chúng ta xem xét quá trình Host 1 gửi dữ liệu đến Host 4 đặt tại địa chỉ 192.168.10.1. Tương tự như ví dụ trước, dữ liệu Host 1 gửi đi sẽ được đóng gói vào các gói tin IP với source IP chính là địa chỉ IP của Host 1: 192.168.1.1 và destination IP là địa chỉ IP của Host 4: 192.168.10.1. Host 1 có thể xác định được địa chỉ source IP vì đây là địa chỉ nằm trên chính card mạng của nó còn địa chỉ destination IP sẽ được chỉ ra trong thao tác gửi dữ liệu trên Host 1 mà người quản trị thi hành (ví dụ: “ping 192.168.10.1”).

Như đã đề cập trong bài về định tuyến (bài 7), vì lần này, các gói tin cần phải được gửi đến một IP khác mạng, Host 1 không tự xử lý được mà phải chuyển các gói này lên default – gateway của nó là router R1 nằm tại địa chỉ 192.168.1.254 để router này xử lý tiếp. Vì các gói này sẽ được chuyển thông qua data link Ethernet đến R1, chúng sẽ được Host 1 đóng gói vào các Ethernet frame với source MAC là địa chỉ MAC trên card mạng của Host 1 và destination MAC là địa chỉ MAC trên card mạng F0/0 của router. Tuy nhiên, ban đầu, Host 1 chưa thể biết được địa chỉ MAC trên cổng F0/0 của router nên nó cần phải thực hiện một hoạt động phân giải ARP để tìm cho ra địa chỉ MAC này. Quá trình này được mô tả trong hình 5:

Screenshot 2026 07 30 at 08.50.34

Hình 5. Phân giải ARP cho default – gateway

Các bước của quá trình thực hiện ARP từ Host 1để tìm ra MAC của default – gateway:

  1. Host 1 thực hiện phát broadcast gói tin ARP Request vào Ethernet link, thực hiện truy vấn các thiết bị trên LAN rằng thiết bị nào đang sử dụng IP là 192.168.1.254 thì hãy cho Host 1 biết địa chỉ MAC.
  2. Router R1 mang địa chỉ IP 192.168.1.254 nên nó sẽ hồi đáp truy vấn của Host 1 bằng một gói ARP Reply. Gói ARP Reply do router phát ra sẽ được gửi unicast trở lại cho Host 1. Địa chỉ MAC trên  cổng F0/0 của router sẽ được thông báo trong gói tin này.
  3. Khi Host 1 nhận được gói ARP Reply từ router, nó thực hiện kiểm tra nội dung gói này, từ đó biết được địa chỉ MAC cần tìm. Sau đó, Host 1 thực hiện đóng frame các gói IP mà nó định gửi ra bên ngoài mạng với destination MAC là địa chỉ MAC trên cổng F0/0 của router mà nó mới biết được.

Host 1 thực hiện lưu kết quả phân giải ARP vừa rồi vào trong ARP cache của nó. Từ đó, mỗi khi cần gửi dữ liệu đến một địa chỉ bên ngoài mạng thông qua default – gateway, nó lại sử dụng kết quả phân giải này để thực hiện đóng frame các gói tin IP chuyển lên router.

Về phía router R1, khi nhận được các frame do Host 1 gửi tới, nó tiến hành gỡ bỏ frame, thu hồi lại các gói tin IP, thực hiện dẫn đường cho các gói tin theo thông tin được lưu trong bảng định tuyến như đã trình bày trong bài 7.

Các host còn lại trong mạng LAN, để có thể truy xuất đến một địa chỉ bên ngoài mạng cũng sẽ cần phải thực hiện một quá trình phân giải địa chỉ tương tự như Host 1 đã làm và cũng phải lưu thông tin tương quan IP – MAC của default – gateway trong ARP cache của chúng.

Như vậy, với hoạt động trao đổi dữ liệu ra bên ngoài mạng, các host trong một mạng Ethernet LAN phải thực hiện phân giải ARP để có được địa chỉ MAC tương ứng với địa chỉ IP của default – gateway trên mạng của chúng.

Điều hướng Loạt<< Bài 7 : Định tuyến tĩnhBài 9 : Một số giao thức mạng – DHCP >>
Chia sẻ bài viết:

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

HotlineZalo
Chỉ mục