Network [CHAP-06]Link layer(tầng liên kết) và LANs(phần 5)

Trong phần trước, mình đã giới thiệu về địa chỉ MAC. Trong phần này mình sẽ nói về giao thức ARP và cách để gửi một datagram khác subnet.

IV. Local Area Networks(tiếp theo)


2. ARP


- Vì có cả địa chỉ lớp mạng (địa chỉ IP) và địa chỉ lớp liên kết (địa chỉ MAC), cần phải phân biệt giữa chúng. Do đó giao thức Address Resolution Protocol (ARP) ra đời.
1723920409035.png

Ví dụ: Giả sử rằng máy với địa chỉ IP 222.222.222.220 muốn gửi một datagram IP đến máy 222.222.222.222. Để gửi một datagram, nguồn cần cung cấp cho adapter của nó datagram IP và cả địa chỉ MAC của đích 222.222.222.222. Adapter sau đó sẽ tạo ra một frame chứa địa chỉ MAC của đích và gửi frame này vào LAN.
Làm thế nào máy gửi xác định địa chỉ MAC của máy đích với địa chỉ IP 222.222.222.222?
- Module ARP trong máy gửi, nhận địa chỉ IP trong cùng một LAN làm input và trả về địa chỉ MAC tương ứng. Trong ví dụ này, máy gửi (222.222.222.220) cung cấp địa chỉ IP 222.222.222.222 cho module ARP và module ARP trả về địa chỉ MAC tương ứng 49-BD-D2-C7-56-2A. Nó hoạt động cũng gần giống với DNS, khác ở chỗ là DNS phân giải tên miền ở bất kì đâu trong mạng Internet, còn ARP chỉ phân giải IP thành MAC trong cùng một subnet.
- Định nghĩa dễ hiểu là vậy giờ chúng ta sẽ cùng “deep dive” thêm một chút về cách hoạt động của ARP.
- Mỗi máy host và router có một bảng ARP trong bộ nhớ của nó, chứa các ánh xạ từ địa chỉ IP đến địa chỉ MAC. Bảng ARP cũng chứa một giá trị thời gian sống (time-to-live TTL), cho biết khi nào mỗi ánh xạ sẽ bị xóa khỏi bảng.
1723920489035.png
  • Lưu ý rằng bảng không nhất thiết phải chứa một entry(có thể hiểu là một dòng thông tin về IP, MAC, TTL được ghi vào bảng ARP) cho mỗi máy host và router trên cùng subnet; một số entry có thể chưa bao giờ được đưa vào bảng, và các entry khác có thể đã hết hạn.​
  • Thời gian hết hạn điển hình cho một entry là 20 phút kể từ khi entry được đưa vào bảng ARP.​
  • Bây giờ giả sử máy 222.222.222.220 muốn gửi một datagram đến một máy host hoặc router khác trên subnet đó. Máy gửi cần phải thu thập địa chỉ MAC của máy đích dựa trên địa chỉ IP. Nhưng nếu bảng ARP hiện không có entry cho cho mát đích? Cụ thể, giả sử 222.222.222.220 muốn gửi một datagram đến 222.222.222.222. Trong trường hợp này, máy gửi sử dụng giao thức ARP để giải quyết địa chỉ.​
  • Đầu tiên, máy gửi tạo ra một gói đặc biệt gọi là gói ARP. Một gói ARP có nhiều trường, bao gồm các địa chỉ IP và MAC của máy gửi và máy nhận. Cả gói truy vấn ARP và gói phản hồi ARP đều có cùng định dạng. Mục đích của gói truy vấn ARP là để hỏi tất cả các máy host và router khác trên subnet để xác định địa chỉ MAC tương ứng với địa chỉ IP đang được giải quyết.​
  • 222.222.222.220 truyền một gói truy vấn ARP đến adapter cùng với chỉ dẫn rằng adapter nên gửi gói đến địa chỉ MAC broadcast, cụ thể là FF-FF-FF-FF-FF-FF. Adapter đóng gói ARP vào một frame, sử dụng địa chỉ broadcast cho địa chỉ đích của frame, và truyền frame này vào subnet. Frame chứa truy vấn ARP được tất cả các adapter khác trên subnet nhận, và (do địa chỉ broadcast) mỗi adapter truyền gói ARP trong frame lên module ARP của nó.​
- Mỗi module ARP này kiểm tra xem địa chỉ IP của nó có khớp với địa chỉ IP đích trong gói ARP không.
- Module khớp sẽ gửi lại cho máy yêu cầu một gói phản hồi ARP với ánh xạ mong muốn.
- Máy 222.222.222.220 sau đó có thể cập nhật bảng ARP của nó và gửi datagram IP của nó, được đóng gói trong frame với địa chỉ MAC đích là của máy host hoặc router đã phản hồi truy vấn ARP trước đó.​
Lưu ý:
  • Đầu tiên, gói tin truy vấn ARP được gửi trong một broadcast frame, trong khi gói tin phản hồi ARP được gửi trong một frame chuẩn(có nghĩa là chỉ trả lại gói tin cho máy đã broadcast).
  • Thứ hai, ARP là plug-and-play; tức là, bảng ARP được xây dựng tự động nó không cần phải được cấu hình bởi quản trị viên hệ thống. Và nếu một máy host bị ngắt kết nối khỏi subnet, entry của nó cuối cùng sẽ bị xóa khỏi các bảng ARP khác trên subnet.
  • Cuối cùng, do ARP vừa có địa chỉ MAC vừa có địa chỉ IP nên có thể hiểu nó là giao thức nằm ở giữa tầng mạng và tầng liên kết.
Một lần nữa nếu như quá lì, đã nói là chỉ có thể thực hiện trên cùng subnet mà khác subnet có được hay không?

3. Gửi một datagram khác subnet


Khi một máy host muốn gửi một datagram tới một máy host khác subnet (qua router tới subnet khác), quy trình thực hiện như sau:
1723920680971.png

  1. Gửi Datagram đến Router: Máy host nguồn (trong ví dụ là 111.111.111.111) cần gửi datagram tới máy host đích (222.222.222.222), nhưng trước tiên nó phải gửi datagram đến router (interface 111.111.111.110). Máy host phải chỉ định địa chỉ MAC của interface router này.
  2. Sử dụng ARP để Xác Định Địa chỉ MAC của Router: Máy host nguồn sử dụng ARP để tìm địa chỉ MAC của interface router 111.111.111.110. Địa chỉ MAC của interface này là E6-E9-00-17-BB-4B.
1723920700056.png

3. Gửi Frame Đến Router: Máy host nguồn đóng gói datagram vào frame và gửi frame này tới địa chỉ MAC của interface router. Router nhận được frame này, kiểm tra địa chỉ IP đích của datagram, và truyền datagram vào lớp mạng.​
1723920804368.png

4. Router Xử Lý và Chuyển Tiếp Datagram: Router tham khảo bảng định tuyến để xác định interface tiếp theo cho datagram. Trong ví dụ, router gửi datagram tới interface 222.222.222.220 trên subnet 2.​
1723920851785.png

5. Sử dụng ARP để Xác Định Địa chỉ MAC Đích: Router sử dụng ARP để tìm địa chỉ MAC của máy host đích 222.222.222.222 trên subnet 2.​

1723920940791.png

6. Gửi Frame Đến Đích Cuối Cùng: Router đóng gói datagram vào frame và gửi frame này tới địa chỉ MAC của máy host đích. Máy host đích nhận được frame và giải mã datagram.​
 

Attachments

  • 1723920751841.png
    1723920751841.png
    115.5 KB · Views: 0
  • 1723920917340.png
    1723920917340.png
    41.7 KB · Views: 0
Last edited:

About us

  • Securityzone.vn là một trang web chuyên về an ninh mạng và công nghệ thông tin. Trang web này cung cấp các bài viết, tin tức, video, diễn đàn và các dịch vụ liên quan đến lĩnh vực này. Securityzone.vn là một trong những cộng đồng IT lớn và uy tín tại Việt Nam, thu hút nhiều người quan tâm và tham gia. Securityzone.vn cũng là nơi để các chuyên gia, nhà nghiên cứu, sinh viên và người yêu thích an ninh mạng có thể trao đổi, học hỏi và chia sẻ kiến thức, kinh nghiệm và giải pháp về các vấn đề bảo mật trong thời đại số.

Quick Navigation

User Menu