Kiểm tra định tuyến chính sách của Linux trước khi đổi tuyến mặc định
Một quy tắc có thể đưa luồng sang bảng khác và làm tuyến mặc định chính trở nên không liên quan. Hãy đọc mức ưu tiên, bảng và chủ sở hữu trước khi đổi tuyến VPN trên Linux.
Một máy chủ VPN trả lời trên một giao diện và từ chối gửi phản hồi trở lại qua đường hầm, còn tuyến mặc định trông vẫn đúng. Đó là điểm mà bảng chính không còn là toàn bộ câu chuyện. Linux có thể chọn bảng định tuyến cho từng gói bằng các quy tắc chính sách, và VPN có thể đã cài một bảng. Hãy đọc các quy tắc trước khi chạm vào tuyến mặc định.
Thứ tự quan trọng: quy tắc trước, rồi bảng mà mỗi quy tắc chọn.
Đọc các quy tắc theo thứ tự ưu tiên
Chạy ip rule show và đọc từ trên xuống. Số ưu tiên điều khiển thứ tự đánh giá, và số nhỏ hơn được kiểm tra sớm hơn. Quy tắc mặc định ở 32766 thường là quy tắc cuối cùng có ý nghĩa. Nếu danh sách dài, hãy lưu nó vào tệp trước khi thay đổi bất cứ điều gì.
Với mỗi quy tắc, ghi lại mức ưu tiên, điều kiện khớp (nguồn, dấu, giao diện hoặc đích) và bảng mà nó tham chiếu. Một quy tắc không có bảng dùng được là ngõ cụt, không phải tuyến.
Làm điều tương tự với IPv6 bằng ip -6 rule show. Một chính sách chỉ tồn tại trong họ IPv4 sẽ để họ còn lại trên bảng chính.
Đọc bảng mà mỗi quy tắc chọn
Dùng ip route show table <name or number> cho từng bảng được tham chiếu. So sánh các tuyến của nó với giao diện và bước nhảy tiếp theo mà bạn mong đợi. Một bảng trống hoặc chưa đầy đủ giải thích lỗi hỏng mà bảng chính không thể giải thích.
Bảng chính vẫn có thể giữ tuyến mặc định, và điều đó ổn. Nếu một quy tắc gửi luồng của bạn tới bảng 51820 trước, tuyến mặc định chính không liên quan tới gói đó.
Tra tên bảng trong /etc/iproute2/rt_tables nếu số không quen. Việc tra cứu đó mất một giây và tránh một đường vòng dài.
Tìm ra ai đã cài quy tắc
NetworkManager, wg-quick và các script khác có thể cài quy tắc một cách linh hoạt. Xóa một quy tắc khi đang chạy có thể bị hoàn tác ở lần kết nối lại tiếp theo. Hãy kiểm tra cấu hình của trình quản lý trước khi thêm một quy tắc cạnh tranh.
Ví dụ, wg-quick thêm một quy tắc được đánh dấu và một bảng cho các địa chỉ được phép của đường hầm. Chính quy tắc đó là lý do lưu lượng tới các địa chỉ này bỏ qua tuyến mặc định chính. Nếu bạn gỡ nó mà không đổi cấu hình, lần up tiếp theo sẽ khôi phục nó.
Giữ tuyến ngoài của điểm cuối và quyền truy cập quản trị trong khi xem xét. Đừng xóa toàn bộ quy tắc trên một cổng mạng từ xa đang hoạt động để đơn giản hóa đầu ra. Một phiên quản trị sống sót qua thay đổi cũng là một phần của bài kiểm tra.
Kiểm tra ngữ cảnh nguồn quan trọng
Một lệnh ip route get chung trả lời câu hỏi khác với luồng ứng dụng. Thêm địa chỉ nguồn, và dấu nếu VPN dùng một dấu, để thấy đường đi mà gói thật sự đi. Kiểm tra một đích được bao gồm và một đích bị loại trừ với cùng ngữ cảnh nguồn. Sau đó lặp lại với IPv6 nếu máy chủ chạy ngăn xếp kép.
Sau một chỉnh sửa được duyệt, chạy lại hai tra cứu đó và so sánh. Ghi lại quy tắc dự định, bảng và việc quy tắc tồn tại qua bao lâu sau khi khởi động lại. Bản ghi đó khiến lần khởi động lại dịch vụ tiếp theo có thể giải thích được thay vì bí ẩn. trang hướng dẫn ip-rule ghi lại các bộ chọn khớp và cú pháp bảng.