Giao thức ARP và “những gì nó đi kèm” (đã thêm). Giao thức ARP

Đánh giá: 4,86 ​​Phiếu bầu: 7 Bình luận: 10

Hãy bắt đầu với lý thuyết...

ARP là gì và tại sao chúng ta cần nó?

ARP(“Giao thức phân giải địa chỉ” - giao thức xác định địa chỉ) là giao thức cấp thấp được sử dụng trong mạng máy tính, được thiết kế để xác định địa chỉ lớp liên kết từ một địa chỉ lớp mạng đã biết. Giao thức này đã trở nên phổ biến nhất do tính phổ biến của các mạng IP được xây dựng trên Ethernet, vì trong hầu hết 100% trường hợp ARP được sử dụng với sự kết hợp này.

Giao thức ARP hoạt động với địa chỉ MAC. Mỗi card mạng có địa chỉ MAC riêng.

Địa chỉ MAC (“Kiểm soát truy cập phương tiện” - kiểm soát truy cập phương tiện) là mã định danh duy nhất gắn liền với các loại thiết bị mạng máy tính khác nhau. Hầu hết các giao thức mạng lớp liên kết sử dụng một trong ba không gian địa chỉ MAC do IEEE quản lý: MAC-48, EUI-48 và EUI-64. Địa chỉ trong mỗi không gian về mặt lý thuyết phải là duy nhất trên toàn cầu. Không phải tất cả các giao thức đều sử dụng địa chỉ MAC và không phải tất cả các giao thức sử dụng địa chỉ MAC đều cần những địa chỉ này là duy nhất.

Hình.1.Đường dẫn đến bảng ARP.

Hình 2. bảng ARP.

Trong Hình 2 chúng ta thấy bảng ARP. Nó chứa ba mục, chúng được thêm tự động và có cấu trúc như sau. Địa chỉ IP– trên thực tế, đây là địa chỉ IP của máy tính trong mạng, Địa chỉ MAC– đây là địa chỉ mac của cùng một máy tính, và giao diện, cho biết máy tính này được đặt trên giao diện nào. Xin lưu ý rằng phía trước tất cả các mục có chữ D. Điều này có nghĩa là mục này là động và sẽ bị thay đổi nếu có bất kỳ dữ liệu nào thay đổi. Nghĩa là, nếu người dùng vô tình nhập sai địa chỉ IP, mục nhập trong bảng ARP sẽ chỉ thay đổi và không có gì khác. Nhưng điều này không phù hợp với chúng tôi. Chúng ta cần phải tự bảo hiểm trước những trường hợp như vậy. Để thực hiện việc này, các mục tĩnh được thêm vào bảng ARP. Làm thế nào để làm nó? Có hai cách.

Hình 3. Chúng tôi thêm bản ghi tĩnh theo cách đầu tiên.

Phương pháp một. Như thường lệ, nhấn dấu cộng màu đỏ. Trong cửa sổ xuất hiện, nhập địa chỉ IP, địa chỉ MAC và chọn giao diện phía sau máy tính này.

Hình 4. Chúng tôi thêm bản ghi tĩnh theo cách thứ hai.

Phương pháp hai. Chọn mục mong muốn, nhấp đúp bằng nút chuột trái và trong cửa sổ xuất hiện, nhấn nút Làm Statik. Đã thêm mục nhập tĩnh.

Hình.5. Bảng có bản ghi tĩnh.

Như bạn có thể thấy trong Hình 5, không có chữ D đối diện với mục được thêm vào. Điều này cho thấy rằng mục này là tĩnh.

Bây giờ, nếu người dùng vô tình nhập một địa chỉ không phải của mình, Mikrotik, sau khi kiểm tra sự tương ứng của địa chỉ IP và MAC trong bảng ARP và không tìm thấy mục nhập bắt buộc, sẽ không cho phép người dùng truy cập Internet, do đó dẫn đến người dùng tin rằng mình có thể đã sai và bạn nên gọi cho quản trị viên.

Tôi còn muốn gì nữa? thu hút sự chú ý của bạn e: những mục này được sử dụng cho các gói đi qua bộ định tuyến.

Bộ định tuyến hoặc bộ định tuyến- một thiết bị mạng đưa ra quyết định về việc chuyển tiếp các gói lớp mạng (lớp 3 của mô hình OSI) giữa các phân đoạn mạng khác nhau dựa trên thông tin về cấu trúc liên kết mạng và các quy tắc nhất định.

Nếu bạn muốn các quy tắc áp dụng cho Bridge, thì bạn cần bật chức năng Sử dụng tường lửa IP trong Bridge (Hình 6.).

Cầu là một cách để kết nối hai phân đoạn Ethernet ở cấp liên kết dữ liệu, tức là. mà không cần sử dụng các giao thức cấp cao hơn như IP. Các gói được truyền dựa trên địa chỉ Ethernet thay vì địa chỉ IP (như trong bộ định tuyến). Bởi vì quá trình truyền xảy ra ở lớp liên kết dữ liệu (OSI Lớp 2), tất cả các giao thức lớp cao hơn đều truyền qua cầu một cách minh bạch.

Hình 6. Kích hoạt chức năng Sử dụng Tường lửa IP.

Evgeniy Rudchenko

Giao thức ARP hoạt động khác nhau tùy thuộc vào giao thức lớp liên kết nào đang chạy trên một mạng nhất định - giao thức mạng cục bộ (Ethernet, Token Ring, FDDI) với khả năng phát sóng truy cập đồng thời tới tất cả các nút mạng hoặc giao thức mạng diện rộng ( X.25, chuyển tiếp khung), theo quy định, không hỗ trợ truy cập quảng bá.

Trên các mạng cục bộ, ARP sử dụng các khung quảng bá giao thức lớp liên kết để tìm kiếm mạng cho máy chủ có địa chỉ IP nhất định.

Nguyên tắc hoạt động:

    Nút cần ánh xạ địa chỉ IP tới địa chỉ cục bộ sẽ tạo yêu cầu ARP, chèn nó vào khung giao thức lớp liên kết, cho biết địa chỉ IP đã biết trong đó và phát yêu cầu.

    Tất cả các máy chủ trên mạng cục bộ đều nhận được yêu cầu ARP và so sánh địa chỉ IP được chỉ định ở đó với địa chỉ của chúng.

    Nếu chúng khớp nhau, nút sẽ tạo ra phản hồi ARP, trong đó nó cho biết địa chỉ IP và địa chỉ cục bộ của nó và gửi nó đã được chỉ dẫn, vì trong yêu cầu ARP, người gửi chỉ ra địa chỉ cục bộ của nó.

Bảng Arp để dịch địa chỉ

Việc dịch địa chỉ được thực hiện bằng cách tìm kiếm trong bảng. Bảng này, được gọi là bảng ARP, được lưu trữ trong bộ nhớ và chứa các hàng cho mỗi máy chủ trên mạng.

Bảng ARP được xây dựng theo RFC-1213 và mỗi địa chỉ IP chứa bốn mã:

    ifindex - Cổng vật lý (giao diện) tương ứng với địa chỉ này;

    Địa chỉ vật lý - Địa chỉ MAC, ví dụ địa chỉ Ethernet;

    địa chỉ IP - Địa chỉ IP tương ứng với địa chỉ vật lý;

    kiểu khớp địa chỉ - trường này có thể nhận 4 giá trị: 1 - tùy chọn không chuẩn và không phù hợp với bất kỳ loại nào được mô tả bên dưới; 2 - mục này không còn đúng nữa; 3 - ràng buộc vĩnh viễn; 4 - ràng buộc động;

Các dấu hiệu của bảng cho công nghệ Ethernet:

Địa chỉ Ethernet

08:00:39:00:2F:C3

08:00:5A:21:A7:22

08:00:10:99:AC:5

Thông thường, người ta thường ghi tất cả byte của địa chỉ IP 4 byte dưới dạng số thập phân có dấu chấm. Khi ghi địa chỉ Ethernet 6 byte, mỗi byte được chỉ định theo hệ thập lục phân và được phân tách bằng dấu hai chấm.

Bảng ARP là cần thiết vì địa chỉ IP và địa chỉ Ethernet được chọn độc lập và không có thuật toán nào để chuyển đổi cái này sang cái khác.

Địa chỉ IP được người quản lý mạng chọn. Địa chỉ Ethernet được nhà sản xuất thiết bị giao diện mạng chọn từ không gian địa chỉ được phân bổ cho nó theo giấy phép. Khi thẻ bộ điều hợp mạng của máy được thay thế, địa chỉ Ethernet của máy cũng thay đổi.

Bộ đệm Arp.

    Hiệu quả của ARP phần lớn phụ thuộc vào bộ đệm ARP, có trên mỗi máy chủ.

    Thời gian tồn tại tiêu chuẩn của mỗi mục trong bộ đệm là 20 phút kể từ thời điểm mục được tạo.

Thứ tự dịch địa chỉ

Trong quá trình hoạt động bình thường, một chương trình mạng như TELNET sẽ gửi tin nhắn ứng dụng bằng dịch vụ truyền tải TCP. Mô-đun TCP gửi thông báo truyền tải tương ứng thông qua mô-đun IP. Kết quả là một gói IP phải được gửi đến trình điều khiển Ethernet. Địa chỉ IP đích được chương trình ứng dụng, mô-đun TCP và mô-đun IP biết. Dựa vào đó, bạn cần tìm địa chỉ Ethernet của đích. Bảng ARP được sử dụng để xác định địa chỉ Ethernet mong muốn.

Bảng ARP được lấp đầy như thế nào? Nó được mô-đun ARP tự động điền vào khi cần thiết. Khi bảng ARP hiện có không giải quyết được địa chỉ IP, điều sau sẽ xảy ra:

    Một yêu cầu ARP được phát trên mạng.

    Gói IP gửi đi được xếp hàng đợi.

Mỗi bộ điều hợp mạng nhận được các chương trình phát sóng. Tất cả trình điều khiển Ethernet kiểm tra trường loại trong khung Ethernet đã nhận và chuyển tiếp các gói ARP đến mô-đun ARP. Yêu cầu ARP có thể được hiểu như sau: "Nếu địa chỉ IP của bạn khớp với địa chỉ được liệt kê, vui lòng cho tôi biết địa chỉ Ethernet của bạn." Gói yêu cầu ARP trông giống như thế này:

Ví dụ về yêu cầu ARP

Mỗi mô-đun ARP kiểm tra trường địa chỉ IP được tìm kiếm trong gói ARP đã nhận và nếu địa chỉ đó khớp với địa chỉ IP của chính nó, nó sẽ gửi phản hồi trực tiếp đến địa chỉ Ethernet của người yêu cầu. Phản hồi ARP có thể được hiểu như sau: “Có, đây là địa chỉ IP của tôi và địa chỉ Ethernet tương ứng tương ứng với nó”. Gói phản hồi ARP trông giống như thế này:

Ví dụ về phản hồi ARP

Phản hồi này được nhận bởi máy thực hiện yêu cầu ARP. Trình điều khiển của máy này kiểm tra trường loại trong khung Ethernet và chuyển gói ARP đến mô-đun ARP. Mô-đun ARP phân tích gói ARP và thêm một mục vào bảng ARP của nó.

Bảng được cập nhật trông như thế này:

Đối với việc xuất bản bài báo gốc, cũng như đối với tất cả những người đã tạo thêm nghiệp chướng cho khả năng xuất bản của riêng tôi. Bây giờ là một phiên bản cập nhật có tính đến mong muốn và bổ sung. Chào mừng đến với con mèo.

Chúc một ngày tốt lành, Habrausers thân mến. Với bài viết này tôi muốn bắt đầu một loạt câu chuyện về các giao thức giúp chúng ta trao đổi thông tin một cách minh bạch, nhanh chóng và đáng tin cậy. Và bắt đầu với giao thức ARP.

Như bạn đã biết, địa chỉ trên Internet là một dãy 32 bit gồm 0 và 1, gọi là địa chỉ IP. Nhưng việc liên lạc trực tiếp giữa hai thiết bị trên mạng được thực hiện bằng địa chỉ cấp liên kết (địa chỉ MAC).

Vì vậy, để xác định sự tương ứng giữa địa chỉ logic của lớp mạng (IP) và địa chỉ vật lý của thiết bị (MAC), giao thức ARP (Giao thức phân giải địa chỉ) được mô tả trong RFC 826 được sử dụng.

ARP bao gồm hai phần. Cái đầu tiên xác định địa chỉ vật lý khi gửi gói, cái thứ hai đáp ứng yêu cầu từ các trạm khác.

Giao thức có bộ nhớ đệm (bảng ARP) trong đó các cặp địa chỉ (địa chỉ IP, địa chỉ MAC) được lưu trữ để giảm số lượng yêu cầu được gửi, do đó tiết kiệm lưu lượng và tài nguyên.

Một ví dụ về bảng ARP.

192.168.1.1 08:10:29:00:2F:C3
192.168.1.2 08:30:39:00:2F:C4

Bên trái là địa chỉ IP, bên phải là địa chỉ MAC.

Trước khi kết nối với một trong các thiết bị, giao thức IP sẽ kiểm tra xem có mục nhập nào cho thiết bị tương ứng trong bảng ARP của nó hay không. Nếu một mục như vậy tồn tại thì việc kết nối và truyền gói sẽ diễn ra trực tiếp. Nếu không, yêu cầu phát ARP sẽ được gửi để tìm hiểu thiết bị nào sở hữu địa chỉ IP. Sau khi đã xác định được chính nó, thiết bị sẽ gửi địa chỉ MAC của nó để phản hồi và một mục nhập tương ứng sẽ được nhập vào bảng ARP của người gửi.

Có hai loại mục trong bảng ARP: tĩnh và động. Những cái tĩnh được người dùng tự thêm vào, trong khi những cái động được tạo và xóa tự động. Trong trường hợp này, bảng ARP luôn lưu trữ địa chỉ vật lý quảng bá FF:FF:FF:FF:FF:FF (trong Linux và Windows).

Tạo một mục trong bảng ARP rất đơn giản (thông qua dòng lệnh):

arp –s

Hiển thị các mục trong bảng ARP:

arp –a

Sau khi thêm một mục vào bảng, nó sẽ được gán một bộ đếm thời gian. Hơn nữa, nếu mục nhập không được sử dụng trong 2 phút đầu tiên, nó sẽ bị xóa và nếu được sử dụng, thời gian tồn tại của nó sẽ được kéo dài thêm 2 phút nữa, tối đa là 10 phút cho Windows và Linux (FreeBSD - 20 phút, Cisco IOS - 4 giờ), sau đó yêu cầu ARP phát sóng mới được thực hiện.

Thông báo ARP không có định dạng tiêu đề cố định và được gói gọn trong trường dữ liệu lớp liên kết khi truyền qua mạng.

Định dạng tin nhắn ARP.

  • loại mạng (16 bit): cho Ethernet – 1;
  • loại giao thức (16 bit): h0800 cho IP;
  • độ dài địa chỉ phần cứng (8 bit);
  • độ dài địa chỉ mạng (8 bit);
  • loại hoạt động (16 bit): 1 – yêu cầu, 2 – phản hồi;
  • địa chỉ phần cứng của người gửi (độ dài thay đổi);
  • địa chỉ mạng người gửi (độ dài thay đổi);
  • địa chỉ phần cứng của người nhận (độ dài thay đổi);
  • địa chỉ mạng người nhận (độ dài thay đổi).

Và đây là cách xác định tuyến đường bằng giao thức ARP.

Để người gửi A và người nhận B có địa chỉ riêng cho biết mặt nạ mạng con.

  1. Nếu các địa chỉ nằm trên cùng một mạng con, ARP sẽ được gọi và địa chỉ vật lý đích được xác định, sau đó gói IP được đóng gói trong khung lớp liên kết và được gửi đến địa chỉ vật lý được chỉ định tương ứng với địa chỉ IP đích.
  2. Nếu không, bảng sẽ bắt đầu quét để tìm kiếm tuyến đường trực tiếp.
  3. Nếu tìm thấy tuyến đường, ARP sẽ được gọi và địa chỉ vật lý của bộ định tuyến tương ứng được xác định, sau đó gói được đóng gói trong khung lớp liên kết và gửi đến địa chỉ vật lý được chỉ định.
  4. Mặt khác, ARP được gọi và địa chỉ vật lý mặc định của bộ định tuyến được xác định, sau đó gói được đóng gói trong khung lớp liên kết và gửi đến địa chỉ vật lý được chỉ định.

Ưu điểm chính của giao thức ARP là tính đơn giản, điều này cũng dẫn đến nhược điểm chính của nó - tính không an toàn tuyệt đối, do giao thức không xác minh tính xác thực của các gói và do đó, có thể thay thế các mục trong bảng ARP (tài liệu cho một bài viết riêng) bằng cách xen kẽ giữa người gửi và người nhận.

Bạn có thể khắc phục nhược điểm này bằng cách nhập thủ công các mục vào bảng ARP, việc này bổ sung thêm rất nhiều công việc thường ngày cả khi tạo bảng và bảo trì bảng sau đó trong quá trình sửa đổi mạng.

Ngoài ra còn có các giao thức InARP (ARP đảo ngược), thực hiện chức năng đảo ngược: người nhận logic được tìm kiếm một địa chỉ vật lý nhất định và RARP (ARP đảo ngược), tương tự như InARP, chỉ có điều nó tìm kiếm địa chỉ logic của người gửi .

Nói chung, giao thức ARP là phổ biến cho bất kỳ mạng nào, nhưng chỉ được sử dụng trong các mạng IP và quảng bá (Ethernet, WiFi, WiMax, v.v.), là giao thức phổ biến nhất, điều này khiến nó không thể thiếu khi tìm kiếm sự trùng khớp giữa địa chỉ logic và vật lý .

tái bút Tôi đã tự mình viết bài này mà không cần tìm đâu cả, chỉ dựa trên kiến ​​​​thức thu được trong quá trình nghiên cứu về mạng.

TCP/IP không xem xét các công nghệ liên kết và lớp vật lý; trong quá trình truyền dữ liệu thực tế, bạn vẫn phải ánh xạ địa chỉ IP tới địa chỉ lớp liên kết.

Mạng Ethernet sử dụng địa chỉ IP và MAC để xác định nguồn và đích của thông tin. Thông tin được gửi từ máy tính này sang máy tính khác qua mạng chứa địa chỉ vật lý của người gửi, địa chỉ IP của người gửi, địa chỉ vật lý của người nhận và địa chỉ IP của người nhận. ARP cung cấp liên lạc giữa hai địa chỉ này vì hai địa chỉ này không liên quan đến nhau dưới bất kỳ hình thức nào.

ARP- Giao thức phân giải địa chỉ là giao thức thuộc lớp (mạng) thứ ba của mô hình OSI, dùng để chuyển đổi địa chỉ IP thành địa chỉ MAC, đóng vai trò quan trọng trong mạng đa truy cập. ARP được định nghĩa bởi RFC 826 vào năm 1982.

Giao tiếp trực tiếp giữa địa chỉ IP và địa chỉ MAC được thực hiện bằng cách sử dụng cái gọi là bảng ARP, trong đó mỗi dòng biểu thị sự tương ứng của địa chỉ IP với địa chỉ MAC.

Một ví dụ về bảng ARP trong hệ điều hành Windows được hiển thị trong hình.

Trong bảng ARP, ngoài địa chỉ IP và MAC, loại kết nối cũng được chỉ định, có hai loại mục:

  • Các mục tĩnh được tạo thủ công và tồn tại miễn là máy tính hoặc bộ định tuyến vẫn được bật.
  • Bản ghi động phải được cập nhật định kỳ. Nếu một bản ghi không được cập nhật trong một khoảng thời gian nhất định (khoảng 2 phút) thì bản ghi đó sẽ bị loại khỏi bảng. Bảng ARP không chứa các mục về tất cả các nút mạng. Nhưng chỉ những người tích cực tham gia hoạt động mạng. Phương thức lưu trữ này được gọi là bộ đệm ARP.

Trong IPv6, chức năng ARP được cung cấp bởi giao thức NDP(Giao thức khám phá hàng xóm).

RARP(Tiếng Anh: Giao thức phân giải địa chỉ ngược) là giao thức thuộc lớp (mạng) thứ ba của mô hình OSI, thực hiện ánh xạ địa chỉ ngược, nghĩa là chuyển đổi địa chỉ phần cứng thành địa chỉ IP.

Có bốn loại tin nhắn ARP:

  • Yêu cầu ARP(ARPrequest);
  • Trả lời ARP;
  • RARP-yêu cầu;
  • RARP-trả lời.

Cấu trúc tiêu đề ARP

  • Loại phần cứng (HTYPE) Mỗi ​​giao thức truyền dữ liệu kênh có số riêng, được lưu trong trường này. Ví dụ: Ethernet là số 0x0001
  • Loại giao thức (PTYPE) Mã giao thức mạng. Ví dụ đối với IPv4 sẽ ghi là 0x0800
  • Độ dài phần cứng (HLEN) Độ dài của địa chỉ vật lý tính bằng byte. Địa chỉ Ethernet dài 6 byte.
  • Độ dài giao thức (PLEN) Độ dài của địa chỉ logic tính bằng byte. Địa chỉ IPv4 dài 4 byte.
  • Hoạt động Mã hoạt động của người gửi: 1 trong trường hợp yêu cầu và 2 trong trường hợp phản hồi.
  • Địa chỉ phần cứng của người gửi (SHA) Địa chỉ vật lý của người gửi.
  • Địa chỉ giao thức người gửi (SPA) Địa chỉ logic của người gửi.
  • Địa chỉ phần cứng đích (THA) Địa chỉ vật lý của người nhận. Trường này trống khi được yêu cầu.
  • Địa chỉ giao thức đích (TPA) Địa chỉ đích logic.

Hãy xem cấu trúc của tiêu đề yêu cầu ARP bằng ví dụ về gói bị chặn bằng bộ phân tích mạng Wireshark

Chúng ta hãy xem cấu trúc của tiêu đề phản hồi ARP (trả lời) bằng ví dụ về gói bị chặn bằng bộ phân tích mạng Wireshark

Bất kỳ thiết bị nào được kết nối với mạng cục bộ (Ethernet, FDDI, v.v.) đều có một địa chỉ mạng vật lý duy nhất được chỉ định trong phần cứng. Địa chỉ Ethernet 6 byte được nhà sản xuất thiết bị giao diện mạng chọn từ không gian địa chỉ được phân bổ cho nó theo giấy phép. Nếu bộ điều hợp mạng của máy thay đổi thì địa chỉ Ethernet của máy cũng thay đổi.

Địa chỉ IP 4 byte được người quản lý mạng đặt, có tính đến vị trí của máy trên Internet. Nếu một máy được chuyển đến một phần khác của Internet, địa chỉ IP của nó phải được thay đổi. Việc chuyển đổi địa chỉ IP thành địa chỉ mạng được thực hiện bằng bảng arp. Mỗi máy trên mạng có một bảng ARP riêng cho từng bộ điều hợp mạng của nó. Không khó để nhận thấy có vấn đề khi ánh xạ địa chỉ vật lý (6 byte cho Ethernet) vào không gian địa chỉ IP mạng (4 byte) và ngược lại.

Giao thức ARP (giao thức phân giải địa chỉ, RFC-826) giải quyết chính xác vấn đề này - nó chuyển đổi ARP thành địa chỉ Ethernet.

Bảng ARP để dịch địa chỉ

Việc dịch địa chỉ được thực hiện bằng cách tìm kiếm trong bảng. Bảng này, được gọi là bảng ARP, được lưu trữ trong bộ nhớ và chứa các hàng cho mỗi máy chủ trên mạng. Hai cột chứa địa chỉ IP và Ethernet. Nếu bạn cần chuyển đổi địa chỉ IP thành địa chỉ Ethernet, mục nhập có địa chỉ IP tương ứng sẽ được tìm kiếm. Dưới đây là một ví dụ về bảng ARP đơn giản.

địa chỉ IP Địa chỉ Ethernet
223.1.2.1 223.1.2.3 223.1.2.4 08:00:39:00:2F:C3 08:00:5A:21:A7:22 08:00:10:99:AC:54

Bảng 1. Bảng ARP mẫu

Thông thường, người ta viết tất cả byte của địa chỉ IP 4 byte dưới dạng số thập phân có dấu chấm. Khi ghi địa chỉ Ethernet 6 byte, mỗi byte được chỉ định theo hệ thập lục phân và được phân tách bằng dấu hai chấm.

Bảng ARP là cần thiết vì địa chỉ IP và địa chỉ Ethernet được chọn độc lập và không có thuật toán nào để chuyển đổi cái này sang cái khác. Địa chỉ IP được người quản lý mạng chọn có tính đến vị trí của máy trên Internet. Nếu một máy được chuyển đến một phần khác của Internet thì địa chỉ IP của nó phải được thay đổi. Địa chỉ Ethernet được nhà sản xuất thiết bị giao diện mạng chọn từ không gian địa chỉ được phân bổ cho nó theo giấy phép. Khi thẻ bộ điều hợp mạng của máy được thay thế, địa chỉ Ethernet của máy cũng thay đổi.

Giao thức thông báo điều khiển Internet (ICMP) là tiêu chuẩn TCP/IP bắt buộc được mô tả trong RFC 792, Giao thức thông báo điều khiển Internet (ICMP). Sử dụng ICMP, máy chủ và bộ định tuyến giao tiếp qua IP có thể báo cáo lỗi và trao đổi thông tin trạng thái và kiểm soát hạn chế.



Tin nhắn ICMP thường được gửi tự động trong các trường hợp sau.

Giao thức thông báo điều khiển Internet (ICMP) cho phép bộ định tuyến báo cáo cho máy chủ cuối về các lỗi mà bộ định tuyến gặp phải khi truyền gói IP từ máy chủ cuối đó.

Không thể gửi tin nhắn điều khiển ICMP đến bộ định tuyến trung gian tham gia truyền gói mà có vấn đề phát sinh, vì không có thông tin địa chỉ cho việc gửi đó - gói chỉ mang địa chỉ nguồn và đích mà không ghi lại địa chỉ của bộ định tuyến trung gian. bộ định tuyến.

ICMP là giao thức báo cáo lỗi, không phải giao thức sửa lỗi. Máy chủ cuối có thể thực hiện một số hành động để đảm bảo rằng lỗi không còn xảy ra nữa, nhưng những hành động này không được quy định bởi giao thức ICMP.

Mỗi tin nhắn ICMP được gửi qua mạng trong một gói IP. Các gói IP có thông điệp ICMP được định tuyến giống như mọi gói khác, không có mức độ ưu tiên nên cũng có thể bị mất. Ngoài ra, trên một mạng bận rộn, chúng có thể gây thêm tải cho các bộ định tuyến. Để tránh gây ra hàng loạt thông báo lỗi, các gói IP bị mất mang thông báo lỗi ICMP không thể tạo ra các thông báo ICMP mới.

Định dạng gói ICMP

Các thông báo ICMP được đóng gói và truyền đi trong các gói dữ liệu IP, như thể hiện trong hình dưới đây.

Có một số loại tin nhắn ICMP. Mỗi loại thông báo có định dạng khác nhau, nhưng chúng đều bắt đầu bằng ba trường chung: số nguyên 8 bit cho biết loại thông báo (TYPE), trường mã 8 bit (CODE) chỉ định mục đích của thông báo và 16 -số lượng trường điều khiển bit (CHECKSUM). Ngoài ra, thông báo ICMP luôn chứa tiêu đề và 64 bit dữ liệu đầu tiên của gói IP gây ra lỗi. Điều này được thực hiện để nút gửi có thể phân tích chính xác hơn nguyên nhân lỗi, vì tất cả các giao thức lớp ứng dụng của ngăn xếp TCP/IP đều chứa thông tin quan trọng nhất để phân tích trong 64 bit đầu tiên của thông báo của chúng.



Trước hết, TCP và UDP là các giao thức. Và điểm khác biệt chính của chúng là TCP là giao thức đảm bảo việc phân phối các gói tin còn UDP thì không.

TCP là cơ chế truyền tải được thiết lập trước kết nối “được đảm bảo”, cung cấp cho ứng dụng luồng dữ liệu đáng tin cậy, đảm bảo rằng dữ liệu mà nó nhận được không có lỗi, yêu cầu lại dữ liệu nếu bị mất và loại bỏ sự trùng lặp dữ liệu. TCP cho phép bạn điều chỉnh tải trên mạng, cũng như giảm độ trễ của dữ liệu khi truyền qua khoảng cách xa. Hơn nữa, TCP đảm bảo rằng dữ liệu nhận được được gửi theo cùng một trình tự. Đây là điểm khác biệt chính của nó so với UDP.

Giao thức truyền datagram không kết nối UDP. Nó còn được gọi là giao thức truyền "không đáng tin cậy", theo nghĩa là không thể xác minh việc gửi tin nhắn đến người nhận cũng như khả năng trộn lẫn các gói. Các ứng dụng yêu cầu truyền dữ liệu được đảm bảo sẽ sử dụng giao thức TCP.
UDP thường được sử dụng trong các ứng dụng như phát trực tuyến video và trò chơi trên máy tính, trong đó việc mất gói có thể chấp nhận được và việc thử lại rất khó khăn hoặc không hợp lý hoặc trong các ứng dụng phản hồi thử thách (chẳng hạn như truy vấn DNS) trong đó việc tạo kết nối tốn nhiều tài nguyên hơn Gửi lại.
Cả TCP và UDP đều sử dụng một số gọi là cổng để xác định giao thức lớp trên của chúng.

Rip OSPF

Lúc đầu, RIP được phân phối cùng với hệ điều hành BSD và không được coi là tiêu chuẩn Internet. Tuy nhiên, giống như nhiều dịch vụ BSD khác, sau đó nó đã trở thành một phần tử quan trọng của mạng IP. Hiện tại có hai phiên bản RIP được ghi trong IETF: phiên bản 1 (bản gốc) trong RFC 1058 và phiên bản 2 trong RFC 1722 (Tiêu chuẩn Internet 56). Cả hai đều giống nhau, nhưng có một số khác biệt quan trọng giữa chúng.

Giao thức RIP dựa trên thuật toán vectơ khoảng cách, liên quan đến độ dài của tuyến đường (bước nhảy) với vectơ của nó (mạng đích hoặc máy chủ). Thiết bị RIP nhận thông tin về các tuyến đường đến các mạng/máy chủ cụ thể từ các bộ định tuyến lân cận và sau đó chọn tuyến đường có số bước nhảy ít nhất. Khi tuyến đường đến đích được chọn, tuyến đường đó sẽ được lưu trữ trong cơ sở dữ liệu cục bộ và thông tin về tất cả các tuyến đường khác đến cùng đích sẽ bị xóa. Định kỳ, mỗi bộ định tuyến sẽ thông báo cho người khác về các tuyến đường mà nó đã khám phá.

Số bước nhảy trong RIP bằng số lượng bộ định tuyến giữa người gửi và mạng/máy chủ đích. Nếu bộ định tuyến được kết nối trực tiếp với mạng mong muốn thì khoảng cách đến mạng đó là 0 bước nhảy. Nếu để truy cập vào mạng mong muốn, bạn chỉ cần chuyển tiếp các datagram qua bộ định tuyến lân cận, thì khoảng cách đến mạng đó bằng một bước nhảy. Khi một bộ định tuyến phát thông tin về một tuyến đường được tìm thấy, nó sẽ tăng số lượng bước nhảy lên một. Khi dữ liệu này đến các bộ định tuyến lân cận, nó sẽ được so sánh với thông tin trong cơ sở dữ liệu của chính chúng. Nếu bất kỳ tuyến được đề xuất nào ngắn hơn tuyến được lưu trữ trong cơ sở dữ liệu, nó sẽ được nhập vào bảng định tuyến cục bộ và bộ định tuyến mà thông báo đến sẽ trở thành nút đầu tiên chuyển tiếp lưu lượng dọc theo tuyến này.

Giao thức OSPF nổi lên như một biến thể hướng IP của giao thức IS-IS. Nó được định nghĩa trong một số tài liệu IETF: RFC 1131 định nghĩa OSPF 1 (phiên bản cũ), RFC 1583 có lẽ là phiên bản phổ biến nhất của OSPF 2 và cuối cùng RFC 2328 định nghĩa phiên bản mới nhất của OSPF 2 (Tiêu chuẩn Internet 54).

Với OSPF, mỗi bộ định tuyến duy trì một cơ sở dữ liệu miền định tuyến quản trị độc lập bao gồm thông tin về các mạng, bộ định tuyến có sẵn và chi phí của mỗi kết nối. Khi trạng thái của mạng, bộ định tuyến hoặc giao diện thay đổi, mỗi bộ định tuyến phát hiện ra nó (trong một khu vực) sẽ nhập thông tin vào cơ sở dữ liệu cục bộ và sau đó xây dựng lại bản đồ định tuyến cho phù hợp. Việc lựa chọn tuyến đường được thực hiện có tính đến chi phí của tất cả các tuyến đường đến một đích cụ thể và không phụ thuộc trực tiếp vào số lần chuyển tiếp. Nói cách khác, OSPF sử dụng thuật toán “vectơ chi phí” để chọn các tuyến đường tối ưu.

Mô hình này cung cấp nhiều cơ hội hơn để cải thiện việc định tuyến (ví dụ: các thay đổi được đồng bộ hóa nhanh hơn), nhưng yêu cầu nhiều sức mạnh xử lý hơn và nhiều bộ nhớ hơn từ các máy tham gia vào quy trình. Vì lý do này, các hệ thống hỗ trợ RIP có sẵn rộng rãi trên thị trường hơn nhiều so với OSPF. Ví dụ, mặc dù nhiều hệ điều hành máy chủ có một số loại daemon OSPF, nhưng rất ít máy khách mạng hoặc thiết bị cấp thấp hỗ trợ OSPF, vì ngay cả việc nghe thụ động cũng yêu cầu thiết bị phải được trang bị một công cụ phân tích cơ sở dữ liệu OSPF đầy đủ.

Kiến trúc OSPF dựa trên khái niệm về các khu vực hành chính. Các bộ định tuyến hoạt động trong cùng khu vực sẽ trao đổi thông tin chi tiết về nó nhưng chỉ có thông tin chung được gửi đến các bộ định tuyến ở vùng sâu vùng xa. Nếu có một số khu vực thì khu vực xương sống (cốt lõi) được tổ chức để trao đổi thông tin giữa chúng. Thông qua đó, các thiết bị biên sẽ trao đổi thông tin chung, điều đó có nghĩa là OSPF có hệ thống phân cấp hai cấp để trao đổi thông tin định tuyến giữa các khu vực (điều này không áp dụng cho tất cả lưu lượng mạng mà chỉ áp dụng cho các thông báo giao thức định tuyến).

Các khu vực được gán mã định danh 32 bit (thường được biểu thị dưới dạng địa chỉ IPv4) và đường trung kế luôn được đánh số 0. Bộ định tuyến có thể hiện diện ở nhiều khu vực cùng lúc nhưng chúng phải duy trì cơ sở dữ liệu trạng thái kết nối riêng cho từng khu vực. Theo thuật ngữ OSPF, một bộ định tuyến hiện diện đồng thời ở nhiều khu vực được gọi là ABR (Bộ định tuyến biên giới khu vực) và bộ định tuyến giao tiếp với một giao thức định tuyến khác được gọi là ASBR (Bộ định tuyến biên giới hệ thống tự động).