8.4 Cách một Host Định tuyến

Với cả IPv4 và IPv6, packet luôn được tạo tại máy chủ nguồn. Máy chủ nguồn phải có khả năng hướng packet đến máy chủ đích. Để làm điều này, thiết bị đầu cuối máy chủ tạo bảng định tuyến riêng của chúng. Chủ đề này thảo luận cách thiết bị đầu cuối sử dụng bảng định tuyến.

8.4 Cách một Host Định tuyến
Photo by Austrian National Library / Unsplash

8.4.1 Quyết định Chuyển tiếp của Host

Một vai trò khác của lớp network là hướng packet giữa các máy chủ. Một máy chủ có thể gửi packet đến:

  • Chính nó - Máy chủ có thể ping chính nó bằng cách gửi packet đến địa chỉ IPv4 đặc biệt 127.0.0.1 hoặc địa chỉ IPv6 ::1, được gọi là loopback interface. Ping loopback interface kiểm tra protocol stack TCP/IP trên máy chủ.
  • Local host - Đây là máy chủ đích trên cùng mạng local với máy chủ gửi. Máy chủ nguồn và đích chia sẻ cùng địa chỉ mạng.
  • Remote host - Đây là máy chủ đích trên mạng remote. Máy chủ nguồn và đích không chia sẻ cùng địa chỉ mạng.

Hình minh họa PC1 kết nối với local host trên cùng mạng và với remote host nằm trên mạng khác.

Việc packet được gửi đến local host hay remote host được xác định bởi thiết bị đầu cuối nguồn. Thiết bị đầu cuối nguồn xác định xem địa chỉ IP đích có trên cùng mạng mà thiết bị nguồn đang ở hay không. Phương pháp xác định khác nhau theo phiên bản IP:

  • Trong IPv4 - Thiết bị nguồn sử dụng subnet mask của riêng nó cùng với địa chỉ IPv4 của riêng nó và địa chỉ IPv4 đích để xác định điều này.
  • Trong IPv6 - Local router quảng bá địa chỉ mạng local (prefix) cho tất cả các thiết bị trên mạng.

Trong mạng gia đình hoặc doanh nghiệp, bạn có thể có nhiều thiết bị có dây và không dây được kết nối với nhau bằng thiết bị trung gian, như LAN switch hoặc wireless access point (WAP). Thiết bị trung gian này cung cấp kết nối giữa các local host trên mạng local. Local host có thể tiếp cận nhau và chia sẻ thông tin mà không cần bất kỳ thiết bị bổ sung nào. Nếu máy chủ đang gửi packet đến thiết bị được cấu hình với cùng mạng IP như thiết bị máy chủ, packet đơn giản được chuyển tiếp ra khỏi host interface, qua thiết bị trung gian, và đến thiết bị đích trực tiếp.

Tất nhiên, trong hầu hết các tình huống, chúng ta muốn thiết bị của mình có thể kết nối vượt ra ngoài phân đoạn mạng local, như ra các nhà khác, doanh nghiệp và internet. Các thiết bị nằm ngoài phân đoạn mạng local được gọi là remote host. Khi thiết bị nguồn gửi packet đến thiết bị đích remote, thì cần sự trợ giúp của router và routing. Routing là quá trình xác định đường đi tốt nhất đến đích. Router được kết nối với phân đoạn mạng local được gọi là default gateway.

8.4.2 Default Gateway

Default gateway là thiết bị mạng (ví dụ: router hoặc Layer 3 switch) có thể định tuyến traffic đến các mạng khác. Nếu bạn sử dụng phép so sánh rằng mạng giống như một căn phòng, thì default gateway giống như một cánh cửa. Nếu bạn muốn đến phòng khác hoặc mạng khác, bạn cần tìm cánh cửa.

Trên mạng, default gateway thường là router với các tính năng sau:

  • Nó có địa chỉ IP local trong cùng dải địa chỉ với các máy chủ khác trên mạng local.
  • Nó có thể chấp nhận dữ liệu vào mạng local và chuyển tiếp dữ liệu ra khỏi mạng local.
  • Nó định tuyến traffic đến các mạng khác.

Default gateway là bắt buộc để gửi traffic ra ngoài mạng local. Traffic không thể được chuyển tiếp ra ngoài mạng local nếu không có default gateway, địa chỉ default gateway không được cấu hình, hoặc default gateway bị down.

8.4.3 Host Định tuyến đến Default Gateway

Bảng định tuyến host thường sẽ bao gồm default gateway. Trong IPv4, host nhận địa chỉ IPv4 của default gateway hoặc động từ Dynamic Host Configuration Protocol (DHCP) hoặc được cấu hình thủ công. Trong IPv6, router quảng bá địa chỉ default gateway hoặc host có thể được cấu hình thủ công.

Trong hình, PC1 và PC2 được cấu hình với địa chỉ IPv4 192.168.10.1 làm default gateway.

Local Network Route: 192.168.10.0/24
PC1 (.10) ─── Switch ─── R1 (.1) ─── Cloud (Remote Networks)
              │
              PC2 (.15)

Direct Connection giữa các thiết bị trên mạng local
Default Gateway cho cả PC1 và PC2: 192.168.10.1

Việc có default gateway được cấu hình tạo ra default route trong bảng định tuyến của PC. Default route là route hoặc đường dẫn mà máy tính của bạn sẽ đi khi nó cố gắng liên hệ với mạng remote.

Cả PC1 và PC2 sẽ có default route để gửi tất cả traffic đến mạng remote tới R1.

8.4.4 Bảng Định tuyến Host

Trên Windows host, lệnh route print hoặc netstat -r có thể được sử dụng để hiển thị bảng định tuyến host. Cả hai lệnh tạo ra cùng một output. Output có thể có vẻ quá tải lúc đầu, nhưng khá đơn giản để hiểu.

💡: Bảng định tuyến host là "bản đồ" mà máy tính sử dụng để quyết định gửi packet đi đâu - giống như danh sách các tuyến đường từ nhà đến các địa điểm khác nhau.

Ví dụ Bảng Định tuyến IPv4 cho PC1

C:\Users\PC1> netstat -r
(output omitted)
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination         Netmask       Gateway       Interface    Metric
          0.0.0.0           0.0.0.0   192.168.10.1   192.168.10.10       25
        127.0.0.0         255.0.0.0       On-link        127.0.0.1      306
        127.0.0.1   255.255.255.255       On-link        127.0.0.1      306
  127.255.255.255   255.255.255.255       On-link        127.0.0.1      306
     192.168.10.0     255.255.255.0       On-link    192.168.10.10      281
    192.168.10.10   255.255.255.255       On-link    192.168.10.10      281
   192.168.10.255   255.255.255.255       On-link    192.168.10.10      281
        224.0.0.0         240.0.0.0       On-link        127.0.0.1      306
        224.0.0.0         240.0.0.0       On-link    192.168.10.10      281
  255.255.255.255   255.255.255.255       On-link        127.0.0.1      306
  255.255.255.255   255.255.255.255       On-link    192.168.10.10      281
(output omitted)
A diagram illustrating important network routes. It presents a table with columns for Network, Meaning, and Gateway. The entries are: 0.0.0.0, which is the default route for everything else, pointing to gateway 192.168.10.1; 127.0.0.0, which is the loopback for itself, pointing to On-link; and 192.168.10.0, which is the local network, also pointing to On-link. A note below explains that "On-link" means no gateway is needed, and traffic is sent directly within the local network.

Cách Đọc Bảng Định tuyến

Bảng định tuyến có các cột chính:

  • Network Destination: Mạng đích muốn đến
  • Netmask: Subnet mask của mạng đích
  • Gateway: Cổng/cửa để đi đến mạng đích
  • Interface: Card mạng sẽ dùng để gửi packet
  • Metric: Độ ưu tiên (số nhỏ = ưu tiên cao)

Giải thích Chi tiết các Route

1. Default Route (0.0.0.0)

0.0.0.0    0.0.0.0    192.168.10.1    192.168.10.10    25
  • Ý nghĩa: "Mọi thứ khác" - khi không tìm thấy route cụ thể
  • Hoạt động: Gửi tất cả packet không khớp route nào đến gateway 192.168.10.1
  • Ví dụ thực tế: Như biển báo "Các hướng khác" ở ngã tư

2. Loopback Routes (127.x.x.x)

127.0.0.0    255.0.0.0    On-link    127.0.0.1    306
  • Ý nghĩa: Địa chỉ để giao tiếp với chính mình
  • "On-link": Không cần qua gateway, gửi trực tiếp
  • Ví dụ thực tế: Như gọi điện cho chính mình để test

3. Local Network Route (192.168.10.0)

192.168.10.0    255.255.255.0    On-link    192.168.10.10    281
  • Ý nghĩa: Mạng local mà máy đang kết nối
  • "On-link": Gửi trực tiếp, không qua router
  • Ví dụ thực tế: Như đi bộ đến nhà hàng xóm trong cùng khu phố

Quy trình Hoạt động của Bảng Định tuyến

Flowchart describing how a PC sends a packet: A PC wants to send a packet, then checks the destination IP. If the IP is 127.x.x.x, it sends to the loopback interface, and the packet returns to the machine. If the IP is in the local network, it consults the on-link table and sends directly via a switch. Otherwise, it consults the default route table, sends to gateway 192.168.10.1, and the router processes it.

Ví dụ Cụ thể

Khi PC1 (192.168.10.10) muốn gửi data:

  1. Đến PC2 (192.168.10.15):
  • Kiểm tra: Cùng mạng 192.168.10.0/24
  • Quyết định: On-link → Gửi trực tiếp
  1. Đến Google (8.8.8.8):
  • Kiểm tra: Không có route cụ thể
  • Quyết định: Dùng default route → Gửi đến gateway 192.168.10.1
  1. Đến chính nó (127.0.0.1):
  • Kiểm tra: Khớp với loopback route
  • Quyết định: On-link → Gửi về chính mình

💡 Tóm lại: Bảng định tuyến host hoạt động như GPS đơn giản với 3 lựa chọn chính:

  • Loopback: Quay về chính mình
  • On-link: Đi bộ được (cùng mạng)
  • Default gateway: Cần xe (router) để đi xa

Lưu ý: Output chỉ hiển thị bảng route IPv4.

Nhập lệnh netstat -r hoặc lệnh tương đương route print hiển thị ba phần liên quan đến kết nối mạng TCP/IP hiện tại:

  • Interface List - Liệt kê địa chỉ Media Access Control (MAC) và số interface được gán của mọi interface có khả năng mạng trên host, bao gồm Ethernet, Wi-Fi, và Bluetooth adapter.
  • IPv4 Route Table - Liệt kê tất cả các route IPv4 đã biết, bao gồm kết nối trực tiếp, mạng local, và route mặc định local.
  • IPv6 Route Table - Liệt kê tất cả các route IPv6 đã biết, bao gồm kết nối trực tiếp, mạng local, và route mặc định local.