Lệnh route trong Linux

Giới thiệu

Trong lab này, bạn sẽ học cách sử dụng lệnh route của Linux để quản lý định tuyến tĩnh và động trong mạng của bạn. Lab này bao gồm mục đích và cú pháp của lệnh route, cách cấu hình các tuyến tĩnh và cách quản lý định tuyến động. Bạn sẽ khám phá các ví dụ về xem bảng định tuyến, thêm các tuyến tĩnh mới và xóa các tuyến hiện có. Lab này cung cấp kiến thức thực tế cho các systemadmin và nhà phát triển làm việc với mạng Linux.

Tìm hiểu Mục đích và Cú pháp của Lệnh route

Trong bước này, bạn sẽ tìm hiểu về mục đích và cú pháp của lệnh route trong Linux. Lệnh route được sử dụng để xem và thao tác với bảng định tuyến IP, chịu trách nhiệm xác định đường dẫn mà lưu lượng mạng sẽ đi để đến đích.

Để bắt đầu, hãy khám phá cú pháp cơ bản của lệnh route:

sudo route [command] [destination] [gateway] [metric]

Đây là ý nghĩa của từng tham số:

  • command: Hành động cần thực hiện, chẳng hạn như add, del hoặc show.
  • destination: Mạng hoặc host mà tuyến đường áp dụng.
  • gateway: Gateway hoặc router next-hop mà các gói tin sẽ được chuyển tiếp đến.
  • metric: Chi phí hoặc mức độ ưu tiên của tuyến đường, được sử dụng cho các quyết định định tuyến.

Bây giờ, hãy thử một số ví dụ để xem lệnh route hoạt động.

Để xem bảng định tuyến hiện tại, hãy sử dụng lệnh show:

sudo route -n show

Ví dụ đầu ra:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.17.0.1      0.0.0.0         UG    100    0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0

Điều này cho thấy default gateway (0.0.0.0) và tuyến mạng cục bộ (172.17.0.0).

Để thêm một tuyến tĩnh mới, hãy sử dụng lệnh add:

sudo route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.1

Thao tác này thêm một tuyến đến mạng 192.168.1.0/24, với gateway là 10.0.0.1.

Để xóa một tuyến, hãy sử dụng lệnh del:

sudo route del -net 192.168.1.0 netmask 255.255.255.0

Thao tác này xóa tuyến đến mạng 192.168.1.0/24.

Cấu hình Các Tuyến Tĩnh Sử Dụng Lệnh route

Trong bước này, bạn sẽ học cách cấu hình các tuyến tĩnh bằng lệnh route. Các tuyến tĩnh là các tuyến được xác định thủ công được thêm vào bảng định tuyến và được ưu tiên hơn các tuyến động.

Hãy bắt đầu bằng cách thêm một tuyến tĩnh vào bảng định tuyến:

sudo route add -net 192.168.2.0 netmask 255.255.255.0 gw 10.0.0.2

Lệnh này thêm một tuyến tĩnh vào mạng 192.168.2.0/24, với gateway là 10.0.0.2.

Bạn có thể xác minh tuyến mới bằng cách chạy lệnh route -n:

sudo route -n

Ví dụ đầu ra:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.17.0.1      0.0.0.0         UG    100    0        0 eth0
10.0.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.2.0     10.0.0.2        255.255.255.0   UG    0      0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0

Bạn có thể thấy tuyến tĩnh mới đến mạng 192.168.2.0/24 với gateway 10.0.0.2.

Để làm cho tuyến tĩnh tồn tại vĩnh viễn sau khi khởi động lại, bạn có thể thêm nó vào file /etc/network/interfaces:

sudo nano /etc/network/interfaces

Thêm các dòng sau vào file:

up route add -net 192.168.2.0 netmask 255.255.255.0 gw 10.0.0.2

Điều này sẽ đảm bảo rằng tuyến tĩnh được thêm tự động khi interface mạng được bật.

Quản lý Định tuyến Động với Lệnh route

Trong bước này, bạn sẽ học cách quản lý định tuyến động bằng lệnh route. Các giao thức định tuyến động, chẳng hạn như OSPF hoặc BGP, tự động cập nhật bảng định tuyến dựa trên các thay đổi của mạng, giúp bạn dễ dàng duy trì các cấu trúc liên kết mạng phức tạp.

Hãy bắt đầu bằng cách thêm một default route bằng lệnh add default:

sudo route add default gw 10.0.0.1

Lệnh này thêm một default route, sẽ được sử dụng cho bất kỳ lưu lượng nào không khớp với một tuyến cụ thể hơn trong bảng định tuyến.

Bạn có thể xác minh default route mới bằng cách chạy lệnh route -n:

sudo route -n

Ví dụ đầu ra:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 eth0
10.0.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.2.0     10.0.0.2        255.255.255.0   UG    0      0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0

Bạn có thể thấy default route mới với gateway 10.0.0.1.

Để xóa một tuyến động, bạn có thể sử dụng lệnh del:

sudo route del default

Thao tác này xóa default route khỏi bảng định tuyến.

Tóm tắt

Trong lab này, trước tiên bạn đã tìm hiểu về mục đích và cú pháp của lệnh route trong Linux, được sử dụng để xem và thao tác với bảng định tuyến IP. Bạn đã khám phá cấu trúc lệnh cơ bản và học cách xem bảng định tuyến hiện tại bằng lệnh show. Bạn cũng đã học cách thêm và xóa các tuyến tĩnh bằng các lệnh adddel. Tiếp theo, bạn tập trung vào cấu hình các tuyến tĩnh, là các tuyến được xác định thủ công và có quyền ưu tiên hơn các tuyến động. Bạn đã thực hành thêm, sửa đổi và xóa các tuyến tĩnh bằng lệnh route. Cuối cùng, bạn đã khám phá việc quản lý định tuyến động, nơi bạn đã học cách sử dụng lệnh route để tương tác với các giao thức định tuyến động và cập nhật bảng định tuyến cho phù hợp.

400+ câu lệnh phổ biến trong Linux