Hôm qua máy khách gốc vẫn hoạt động. Hôm nay máy mới yêu cầu một kết nối trong khi hồ sơ cũ dừng ở giai đoạn mà trước đây nó đi qua mà không phàn nàn. Thông tin đăng nhập hiếm khi liên quan, và cổng kết nối thường vô can. Điều đã thay đổi là hai ngăn xếp VPN giờ muốn cùng một tài nguyên độc quyền, và việc sửa chữa phụ thuộc vào việc gọi tên nó. Hãy đi qua các lớp thay vì cài lại cả hai.

Đi qua bốn lớp theo thứ tự

Một sản phẩm VPN cần bốn tài nguyên có thể xung đột: một dịch vụ nền thường từ chối chạy hai lần, một cổng cố định, một bộ điều hợp ảo hoặc bộ lọc nhân nhìn thấy lưu lượng trước bảng định tuyến, và quyền cài đặt tuyến trước tuyến mặc định. Biết cái nào đã nhường biến một xung đột mơ hồ thành một câu hỏi duy nhất với câu trả lời kiểm chứng được.

Gán triệu chứng cho một lớp trước khi chạm vào bất cứ thứ gì. Máy khách không khởi động chỉ vào dịch vụ; máy khởi động mà không bao giờ thương lượng chỉ vào cổng; máy kết nối trong khi máy kia mất toàn bộ kết nối chỉ vào bộ lọc hoặc tuyến mặc định. Hãy ghi lại ánh xạ đó, vì nó tiết kiệm một giờ cài lại ứng dụng trong hy vọng.

Bắt đầu từ dịch vụ không chạy hai lần

Trên Windows, máy khách doanh nghiệp thường nhiều hơn một đường hầm, vì nó cài một dịch vụ, một trình điều khiển lọc và đôi khi một nhà cung cấp thông tin đăng nhập bên cạnh hồ sơ. Ghi lại những dịch vụ chạy trước thay đổi và một lần nữa sau đó, rồi so sánh hai danh sách thay vì khởi động lại cho đến khi có gì đó hoạt động. Các dịch vụ cũng có thể loại trừ nhau qua phụ thuộc, nơi khởi động cái này dừng cái kia, và cùng kiểu mẫu xuất hiện trên macOS với các tác vụ launchd và một daemon dùng chung. Một máy khách khởi động và thoát trong vài giây đang báo cáo quyền sở hữu, không phải cấu hình.

Đọc trạng thái dịch vụ và nhật ký của nó trước khi đọc hồ sơ. Một dịch vụ khởi động và dừng trong cùng một phút là kiểu mẫu cần tìm, và nhật ký sự kiện của chính nó gọi tên phụ thuộc đã đẩy nó ra. Hồ sơ không thể sửa một tiến trình không chạy, và thời gian dành để chỉnh sửa nó là thời gian không dành cho xung đột thật.

Sau đó hỏi ai sở hữu cổng

Quyền sở hữu cổng là bằng chứng rõ ràng nhất bạn sẽ có, vì lỗi liên kết gọi tên xung đột trực tiếp. Hai triển khai IKE không thể cùng trả lời trên cùng địa chỉ cục bộ và cổng UDP, và không lượng thử lại nào thay đổi điều đó.

Get-NetUDPEndpoint -LocalPort 500,4500 | Select-Object LocalAddress,LocalPort,OwningProcess
netstat -ano | findstr :500
sudo lsof -nP -iUDP:500
ss -lunp | grep -E ':500|:4500'

Dù dòng nào khớp với nền tảng của bạn, câu trả lời bạn muốn là một tiến trình và dịch vụ đã sinh ra nó. Nếu trình lắng nghe là dịch vụ IKE tích hợp, máy khách thứ hai là kẻ xâm nhập; nếu đó là đại lý của nhà cung cấp, máy khách tích hợp là kẻ xâm nhập. Quyết định cái nào được khởi động khi đăng nhập và tắt tự khởi động của cái kia thay vì giết nó mỗi phiên.

Trình điều khiển lọc nằm dưới các tuyến của bạn

Một trình điều khiển lọc mạng chặn lưu lượng giữa bộ điều hợp và ngăn xếp giao thức, nên nó có thể viết lại hoặc chặn gói bất kể bảng định tuyến nói gì. Đó là cách một tuyến trông đúng bị bỏ qua, và là lý do một ping thành công có thể nằm cạnh một trình duyệt không tải được gì.

Các thành phần của nhà cung cấp cũng liên kết với những kết nối cụ thể. Một bộ lọc cũ liên kết với một bộ điều hợp có thể ngăn một hồ sơ đúng về mọi mặt hoàn tất bắt tay, và việc tháo thành phần đó khỏi thuộc tính của bộ điều hợp hẹp hơn và dễ đảo ngược hơn so với gỡ bỏ hoàn toàn sản phẩm. Vì liên kết là theo từng kết nối, hãy so sánh các bộ điều hợp thay vì toàn bộ ngăn xếp.

Quyết định sản phẩm nào sở hữu quá trình khởi động, rồi ghi lại

Sự cùng tồn tại chỉ thực tế khi hai máy khách theo thiết kế chiếm các lớp khác nhau, như một ngăn xếp IPsec bên cạnh một proxy chỉ xử lý lưu lượng ứng dụng. Nơi cả hai muốn cùng một cổng, cùng một lớp lọc hoặc quyền công bố một tuyến mặc định, chúng sẽ tiếp tục thay phiên nhau và mỗi thất bại sẽ giống như một lỗi mới.

Chọn chủ sở hữu một cách có chủ đích. Các hình thức sống sót qua khởi động lại bao gồm chạy máy khách thứ hai trong máy ảo, giữ nó trên phần cứng chuyên dụng, hoặc chuẩn hóa trên một máy khách nói được cả hai giao thức. Tắt tự khởi động và dịch vụ của bên thua là thay đổi nhỏ hơn việc dựng lại bảng định tuyến sau mỗi lần khởi động, và nó được hoàn tác bằng một lần sửa cài đặt.

Bài viết liên quan