route chấp nhận tên giao diện Wi-Fi, thoát mà không phàn nàn, và máy chủ vẫn không thể tới được. Không có gì bị hỏng; quan hệ trong tuyến chỉ đơn giản là sai: cờ giao diện nói đích nằm trên liên kết nào, không nói bộ định tuyến nào phải nhận lưu lượng cho một đích ở nơi khác. Lệnh thành công vì nó hợp lệ về cú pháp, không phải vì nó mô tả một đường đi hoạt động được.

Sự khác biệt đó quyết định liệu một ngoại lệ tuyến bên cạnh VPN có hoạt động hay chỉ trông có vẻ hợp lý.

Giao diện là lối ra, bước nhảy tiếp theo là việc chuyển giao

Trên một Mac có địa chỉ 192.168.50.20 và bộ định tuyến tại 192.168.50.1, một máy khác trên cùng liên kết có thể tới trực tiếp. Khung được gửi tới máy đó và đặt lên dây. Không có bộ định tuyến nào tham gia, và một tuyến giới hạn theo giao diện diễn đạt đúng điều đó. Đổi đầu xa thành máy chủ ở tòa nhà khác và lệnh đó không còn ý nghĩa. Mac không có địa chỉ lớp hai để đặt lên dây, nên cờ giao diện không có gì để mô tả.

Đích ngoài liên kết thì khác. Mac không thể đặt lên dây một khung gửi tới máy chủ mà nó không tới được ở lớp hai; nó giao gói cho một bộ định tuyến có thể làm được. Vì vậy tuyến cần một cổng vào, và bản thân cổng vào phải tới được trên liên kết đã kết nối.

Dùng cờ giao diện cho đích ngoài liên kết báo macOS coi đích đó như thể nằm trên dây. Nhân hệ điều hành sau đó không phân giải được địa chỉ lớp hai cho nó, và gói bị loại bỏ mà lỗi không chứa gì hữu ích.

Cờ giao diện thực sự khẳng định điều gì

Tài liệu tham chiếu tuyến của Apple định nghĩa dạng giao diện cho các đích có thể tới trực tiếp mà không cần trung gian. Đó là một phát biểu về mô hình liên kết, không phải sở thích về việc dùng bộ điều hợp nào. Tới một máy chủ internet qua Wi-Fi vẫn cần bộ định tuyến trên liên kết Wi-Fi đó, và tuyến phải nêu tên nó.

Phạm vi giao diện là một thuộc tính riêng. Nó gắn một tuyến với một giao diện cụ thể cho các quyết định phạm vi như địa chỉ nguồn nào áp dụng, nhưng không tạo ra khả năng tới cho một đích mà giao diện không tự tới được. Hai thuộc tính trả lời hai câu hỏi khác nhau.

Đó là lý do một lệnh có thể được chấp nhận, xuất hiện trong bảng và vẫn thất bại. Nhân hệ điều hành không xác thực ý định của bạn; nó ghi lại điều bạn khẳng định, và khẳng định đó là đích nằm trên liên kết. Thành công im lặng rồi bị loại bỏ im lặng là kết quả mong đợi, không phải lỗi. Đọc lại khẳng định đó trước khi đổ lỗi cho mạng.

Tuyến mà một đích ngoài liên kết cần

Với một đường được phê duyệt tới địa chỉ tài liệu như 198.51.100.25 qua bộ định tuyến LAN, quan hệ dự kiến là một đích, bước nhảy tiếp theo 192.168.50.1 và giao diện LAN tới được bước nhảy đó. Giao diện được ngụ ý bởi việc tra cứu bước nhảy tiếp theo thay vì bị lệnh tuyến áp đặt.

Trên macOS, việc kiểm tra chỉ đọc là route -n get 198.51.100.25. Đọc các dòng cổng vào và giao diện cùng nhau và kiểm tra rằng cổng vào là địa chỉ mà Mac thực sự tới được. Một cổng vào ở subnet khác, hoặc đã biến mất từ lần thay đổi mạng cuối, tạo ra một tuyến trông đúng mà không chuyển tiếp gì.

Đừng mã hóa cứng en0 trong một chỉ dẫn lâu dài. Tên giao diện thay đổi theo bộ điều hợp, dock và ứng dụng VPN, và một tuyến nêu tên sai sẽ thất bại theo cách dễ bị hiểu nhầm là sự cố mạng rộng hơn.

Đọc lựa chọn hiện tại trước khi thay thế nó

Trước khi thêm bất cứ thứ gì, hãy kiểm tra hệ thống đã chọn gì và vì sao. Kết quả đó cho biết lưu lượng đi qua đường hầm, qua bộ định tuyến LAN hay không đi đâu cả, và cho bạn một đường cơ sở để so sánh sau khi thay đổi. Không có nó, bạn không thể biết tuyến mới có hiệu lực hay không.

Sau đó kiểm tra họ địa chỉ. Một tuyến được thêm cho IPv4 không làm gì cho đích IPv6, và một dịch vụ phân giải ra cả hai họ có thể trông như tới được từng lúc. Bảng tuyến và bộ phân giải trả lời hai câu hỏi khác nhau, và cả hai phải khớp với đường dự kiến.

Cuối cùng, hãy nhớ rằng tuyến là một lựa chọn, không phải một sự cho phép. Một hồ sơ VPN được quản lý hoặc bộ lọc ứng dụng vẫn có thể cấm đường trực tiếp ngay cả khi bảng trỏ tới nó, vì vậy hãy kiểm tra bằng ứng dụng thực tế thay vì cho rằng một mục trong bảng thành công là kết thúc điều tra.

Đường hầm và chính sách thay đổi hình dạng

Giao diện điểm-đến-điểm là trường hợp riêng. Một đường hầm có thể mang tuyến mà không cần địa chỉ cổng vào kiểu Ethernet, và điều đó không tự động sai. Hãy áp dụng mô hình liên kết thực của giao diện thay vì mở rộng ví dụ Wi-Fi cho mọi mục trong bảng mà bạn thấy.

Với các yêu cầu thay đổi, hãy ghi lại đích, đường mạng được phê duyệt, cổng vào và giao diện hiện tại, và ai được kỳ vọng duy trì ngoại lệ. Chủ sở hữu quan trọng vì một tuyến một lần gõ tại dấu nhắc không phải là chính sách, và lần kết nối lại tiếp theo sẽ xóa nó.

Nếu yêu cầu là tới máy chủ này khi VPN đang bật, câu trả lời trung thực thường là một tuyến máy chủ cụ thể qua bộ định tuyến cục bộ, do người quản lý mạng sở hữu giao diện cài đặt. Nếu yêu cầu là tới mọi thứ trực tiếp, bản thân yêu cầu cần được xem xét chính sách trước khi cần đến lệnh tuyến.

Bài viết liên quan