Một hồ sơ hoạt động qua TCP và thất bại qua UDP với cảnh báo chứng chỉ. Cách đọc trực giác là đường UDP đã phá vỡ sự tin cậy, và cách sửa trực giác là chấp nhận chứng chỉ. Cả hai giả định đều bỏ qua một khả năng giải thích trọn vẹn triệu chứng: hai phương thức vận chuyển đã đến những máy khác nhau. Quy tắc chuyển tiếp được khớp theo giao thức, và không gì buộc nửa TCP và nửa UDP của một số cổng phải trỏ tới cùng một máy chủ.

Một số cổng, hai quy tắc độc lập

Chuyển tiếp là tra bảng theo giao thức, địa chỉ đích và cổng. Một cổng kết nối có quy tắc cho TCP 1194 và quy tắc cho UDP 1194 đang diễn đạt hai quyết định độc lập, và chúng có thể chỉ định những máy chủ nội bộ khác nhau. Con số dùng chung là sự tiện lợi cho con người, không phải thuộc tính mà mạng áp đặt. Hãy coi số cổng là nhãn chứ không phải định nghĩa dịch vụ.

Hãy xem các quy tắc có hiệu lực thay vì các quy tắc dự định. Địa chỉ đích, cổng đã dịch và giao diện vào đều tham gia, và một quy tắc còn sót lại từ lần di chuyển trước là lý do thường gặp khiến hai nửa không khớp.

Hãy ghi cả hai ánh xạ trước khi thay đổi bất cứ điều gì khác. Cặp dòng chính là toàn bộ giả thuyết.

Khách thực sự đã xác minh điều gì

Trong quá trình bắt tay, khách kiểm tra chứng chỉ theo sự tin cậy đã cấu hình và theo tên mà nó mong đợi. Một chứng chỉ bất ngờ là xác minh thành công nhưng trượt bước kiểm tra danh tính, và đó là kết quả đúng khi đối phương không phải bên mà bạn muốn đến. Từ chối nó là bằng chứng khách hoạt động, không phải bằng chứng đường truyền hỏng. Hãy đọc tên được báo cáo trước chuỗi được báo cáo, vì tên là thứ khách đã so sánh.

Sự phân biệt này quan trọng vì hai lỗi dẫn tới hai cách sửa khác nhau. Vấn đề tin cậy cần sửa tin cậy, còn đối phương bất ngờ cần sửa định tuyến hoặc chuyển tiếp.

Hãy ghi lại danh tính mà khách đã báo cáo. Tên đó là manh mối mạnh nhất về máy nào đã trả lời.

Tương quan nỗ lực với một máy chủ

Ghi lại hồ sơ, địa chỉ công cộng, phương thức vận chuyển và cổng mà khách đã dùng. Sau đó đối chiếu thời điểm nỗ lực với nhật ký của máy chủ mà bạn muốn đến. Sự vắng mặt ở đó là manh mối chứ không phải bằng chứng tường lửa đã bỏ gói, vì mức ghi nhật ký khác nhau giữa các lần triển khai. Dấu thời gian cùng địa chỉ nguồn thu hẹp nhiều hơn so với từng thứ riêng lẻ.

Hãy so sánh danh tính chứng chỉ bạn gặp với danh tính mong đợi qua một kênh quản trị. Chính việc so sánh ngoài kênh đó giữ cho bước kiểm tra đáng tin.

Hãy kiểm tra các quy tắc chuyển tiếp cũ, các bộ lắng nghe thay thế và mọi đường cân bằng tải trước khi kết luận rằng hai phương thức vận chuyển dùng chung một phần phía sau. Mỗi thứ trong số đó có thể chuyển hướng một luồng mà không chạm vào phương thức kia.

Đừng chỉnh sự tin cậy cho khớp với một đối phương sai

Nhập CA bất ngờ làm triệu chứng biến mất và thay đổi người mà khách tin cậy. Đó là trạng thái tệ hơn một kết nối thất bại, vì nó che giấu sự không khớp thay vì giải quyết. Điều tương tự cũng đúng với việc tắt xác minh chỉ để xem đường hầm có dựng lên hay không.

Nếu đối phương hóa ra hợp pháp nhưng không chủ ý, hành động đúng là cho nó ngừng hoạt động hoặc trỏ quy tắc tới đúng máy chủ. Kho tin cậy không phải nơi để hòa giải một lỗi kiểm kê.

Hãy giữ văn bản từ chối. Đó là bản ghi duy nhất về những gì khách đã thấy.

Sau khi sửa, hãy thử một luồng mới

Sửa ánh xạ rồi kết nối bằng một phiên khách mới. Dịch có trạng thái có thể giữ một luồng hiện có trỏ tới đích cũ, nên một kết nối đã thiết lập có thể sống sót qua thay đổi và đánh lừa bạn. Hãy bắt đầu một luồng mới và xác nhận từ nhật ký của máy chủ dự định rằng nó đã xử lý nỗ lực đó.

Nếu cả hai phương thức vận chuyển chứng minh được là đến cùng một máy chủ mà vẫn hành xử khác nhau, khác biệt còn lại là bộ lắng nghe và cấu hình của chính máy chủ đó. So sánh phương thức vận chuyển chỉ có nghĩa sau khi danh tính điểm cuối đã được xác định.

Bài viết liên quan