Câu hỏi của bạn chạm vào trái tim của Internet và định nghĩa về định tuyến. Trong ví dụ của bạn, Bộ định tuyến D gửi dữ liệu đến Máy tính A dựa trên hai tiền đề:
- Nó được yêu cầu gửi dữ liệu đến Máy tính A.
- Nó đã được xử lý dữ liệu từ Máy tính A.
Kịch bản của bạn dường như giả sử tùy chọn đầu tiên - Bộ định tuyến D muốn gửi đến Máy tính A. Nhưng làm thế nào để đến đó? Nó làm như vậy thông qua việc sử dụng các bảng định tuyến được chia sẻ bởi các bộ định tuyến lẫn nhau.
Bộ định tuyến C thường xuyên gửi các bản cập nhật cho tất cả các bộ định tuyến biết - kể cả Bộ định tuyến D - rằng nó "biết" mạng "192.168. *" (Trên thực tế - điều này sẽ không xảy ra vì mạng đó không được định tuyến - nhưng nó được coi là riêng tư. Nhưng bỏ qua điều đó.) Vì vậy, Router D đã biết rằng Router C biết mạng đó.
Vì vậy, khi dữ liệu được dành cho Máy tính A, nó sẽ được xử lý trước bởi mạng. Vì vậy, Bộ định tuyến D hỏi: "Tôi cần tìm mạng 192.168. * Tôi có biết không? Không. Tôi có biết người khác làm không? Có. Bộ định tuyến C làm gì. Làm thế nào để tôi đến được bộ định tuyến C? Thông qua 2.2. Giao diện 2.2. "
Sau đó, Bộ định tuyến D sẽ gửi dữ liệu đến Bộ định tuyến C. Bộ định tuyến C lấy dữ liệu đó và nói: "Ồ, tôi có dữ liệu từ Bộ định tuyến D nhưng đó là cho mạng 192.168. Tôi có biết mạng đó không? Có, qua mạng 192.168.1.1 của tôi" chuyển tiếp nó
Có một số công việc khác cần được thực hiện để giải quyết địa chỉ IP và MAC, nhưng tôi đang bao quát việc định tuyến, theo từng se, không phải ARP và mạng cục bộ.
Bạn sẽ nhận thấy giả định đầu tiên của mình - bộ định tuyến từ xa phải biết cơ chế định tuyến - không được sử dụng ở đây. Bộ định tuyến D không quan tâm nếu Bộ định tuyến C đang sử dụng EIGRP, RIP, RIPv2, OSPF hoặc bất cứ điều gì. Tất cả những gì nó quan tâm là nó đã có một bản cập nhật. (Tất nhiên, làm thế nào để có một bản cập nhật là điều quan trọng để đảm bảo cả hai luôn đồng bộ. Nhưng một lần nữa, đó lại là một vấn đề khác.)
Giả định thứ hai của bạn - số cổng đó là một yếu tố trong định tuyến - cũng không chính xác. Bộ định tuyến (nói chung) không cần thông tin cổng để đưa ra quyết định định tuyến. (Điều đó đã thay đổi một chút, do một số công nghệ mạng mới và áp dụng chủ yếu cho tường lửa và proxy, nhưng vẫn giả định rộng hơn vẫn áp dụng cho các bộ định tuyến "thật".)
Tiếp tục với ví dụ của bạn, Bộ định tuyến C sẽ chuyển tiếp dữ liệu trên cổng 1000 (theo kịch bản của bạn) vì có thể có một dịch vụ trên Máy tính A mong đợi dữ liệu trên cổng cụ thể đó. Nhưng nó chỉ biết làm vì Bộ định tuyến D đã gửi nó trên cổng 1000. Và bộ định tuyến D chỉ gửi nó trên cổng đó vì người khởi tạo dữ liệu đã gửi nó đến Bộ định tuyến D trên cổng đó.
Tôi không hiểu việc bạn bao gồm các chương trình bittorrent hoặc P2P như phản ánh câu hỏi bạn hỏi. Những lời giải thích tương tự sẽ được áp dụng. Bộ định tuyến cũng có thể được cấu hình với kích hoạt cổng kết hợp một thiết bị (hoặc IP) cụ thể với một cổng cụ thể. Như vậy khi lưu lượng truy cập đến cổng 1234, các bộ định tuyến sẽ biết gửi dữ liệu đến Thiết bị ABCD. Điều này thường được liên kết với một cổng TCP đi. tức là nếu tôi gửi lưu lượng trên cổng 7890, bộ định tuyến sẽ biết lưu lượng đến sẽ ở cổng 1234 và gửi cho tôi.
Nhưng kích hoạt cổng không liên quan đến các quyết định định tuyến (từ xa) - thay vào đó, nó liên quan đến bảng MAC / IP bên trong mà bộ định tuyến sử dụng cho mạng LAN.
Cập nhật / chỉnh sửa : Để trả lời thêm và giải thích sau bình luận của bạn. Bộ định tuyến D chỉ biết máy tính A bằng địa chỉ IP của nó (192.168.2.2). Nhưng Router C biết máy tính A bằng địa chỉ IP và địa chỉ MAC của nó. MAC (Media Access Control) là mã định danh 48 bit duy nhất (thường là ...) được xác định theo tiêu chuẩn quốc tế. Mỗi thiết bị được kết nối với mạng LAN (có dây và không dây) được cho là có một địa chỉ MAC duy nhất.
Bộ định tuyến (Bộ định tuyến C) liên kết địa chỉ IP và địa chỉ MAC với nhau trong một bảng (bảng địa chỉ MAC). Vì vậy, khi lưu lượng truy cập vào Bộ định tuyến C và bộ định tuyến nhận ra "cục bộ" của nó với nó, nó thực hiện tra cứu bảng địa chỉ MAC. Các bộ định tuyến sau đó thay đổi theo nghĩa đen thông tin địa chỉ khung.
Nó tái tạo (viết lại) thông tin đích của Lớp 2 để có địa chỉ MAC đích của Máy tính A nhưng giữ thông tin địa chỉ IP (Lớp 3) giống nhau.
Nếu tuyến đường KHÔNG biết địa chỉ MAC. Hoặc không có mối quan hệ IP-MAC trong bảng của nó, nó có một thứ gọi là ARP (giao thức phân giải địa chỉ) để hỏi "HEY, mọi người trên mạng này. Bạn có địa chỉ MAC này không?" Hoặc đôi khi - "Mọi người, địa chỉ MAC của bạn là gì?"). Thiết bị / thiết bị phù hợp đáp ứng và bộ định tuyến xây dựng bảng IP-MAC.