Hai VPN iPhone cùng lúc: cái nào chở lưu lượng của bạn?
Hai VPN được kết nối trên iPhone không phải một chuỗi. Hãy đọc mô hình cùng tồn tại đã được ghi chép, rồi kiểm tra cấu hình nào chở mỗi luồng.
Hai ứng dụng VPN đều hiển thị Connected, và người ta cho rằng lưu lượng giờ đi qua cả hai, cái này nằm trong cái kia. Thường thì không phải vậy. iOS có một mô hình cùng tồn tại cụ thể, và nó không phải một chuỗi. Một lớp cấu hình bị giới hạn ở một thực thể được bật, lớp kia có thể chạy bên cạnh, và mức ưu tiên tuyến quyết định xung đột. Hai công tắc sáng không phải hai bước nhảy. Mô hình đã được ghi chép, nghĩa là có thể dự đoán đường đi thay vì đoán từ các biểu tượng.
Ngộ nhận: hai VPN kết nối là một chuỗi
Một chuỗi hai bước cần một phương tiện vận chuyển bên ngoài xác định, một đường hầm bên trong xác định, định tuyến điểm cuối tương thích và một kế hoạch cho việc gì xảy ra khi một trong hai thất bại. Hai cấu hình độc lập không tạo ra điều đó chỉ bằng việc cùng tồn tại. Ưu tiên tuyến không giống với đóng gói, và việc một cấu hình thắng một lần tra cứu tuyến không nói gì về việc cái kia có chở các gói kết quả hay không.
Nếu bạn cần lồng nhau, hãy thiết kế nó như lồng nhau. Đừng suy ra điều đó từ hai chỉ báo kết nối. Sự khác biệt đó tiết kiệm rất nhiều việc gỡ lỗi.
Mô hình được ghi chép đằng sau ngộ nhận đó
NETunnelProviderManager của Apple mô tả các cấu hình VPN doanh nghiệp thông thường và nêu rằng chỉ một cấu hình loại đó có thể được bật tại một thời điểm. Cùng tài liệu cho phép một Personal VPN vẫn được bật và kết nối bên cạnh, và dành ưu tiên cho các tuyến doanh nghiệp ở nơi hai bên chồng lấn.
Ở đây Personal VPN là thuật ngữ API cho phần triển khai IPsec hoặc IKEv2 tích hợp được quản lý qua NEVPNManager. NETunnelProviderManager là mô hình nhà cung cấp đường hầm. Một ứng dụng tiêu dùng có thể dùng mô hình nhà cung cấp, nên một tên sản phẩm chứa personal không phân loại nó.
Apple ghi chép một tổ hợp được phép, và sự cho phép không nói với bạn rằng hồ sơ của hai nhà cung cấp tương thích, nên hãy hỏi từng nhà cung cấp cặp nào được hỗ trợ. Các loại cấu hình, tuyến và chính sách của họ vẫn quyết định kết quả.
Ngộ nhận: VPN cá nhân nhận lưu lượng duyệt web
Một hồ sơ công việc đòi mọi điểm đến cũng sẽ thắng lần tra cứu tuyến cho duyệt web công cộng, nên lối ra cá nhân không chở gì trong đó. Theo mức ưu tiên đã ghi chép, các tuyến doanh nghiệp thắng ở nơi chúng xung đột, nên duyệt web công cộng không tự động lấy lối ra cá nhân chỉ vì ứng dụng đó cũng báo đã kết nối. Một cấu hình công việc hẹp hơn có thể thay đổi bức tranh định tuyến, nhưng ứng dụng khách của tổ chức vẫn có thể áp đặt yêu cầu về DNS, chặn hoặc thiết bị. Hãy lấy cách sắp xếp được hỗ trợ từ chủ sở hữu thay vì sửa các yêu cầu đó tại máy.
Các cấu hình được quản lý theo ứng dụng có phạm vi riêng. Đừng ngoại suy một quy tắc cấp thiết bị cho mọi triển khai được quản lý.
Ghi lại hai luồng trước khi kiểm tra: tên và dải riêng của dịch vụ công việc, và một yêu cầu duyệt web công cộng mới. Cả hai đều hợp lệ, và chúng cần các kiểm tra khác nhau.
Ưu tiên tuyến với hồ sơ công việc có đường hầm chia tách
Một hồ sơ công việc có đường hầm chia tách đòi các tiền tố riêng và hậu tố DNS nội bộ mà nó liệt kê, và những tuyến đó thắng mọi lần tra cứu khớp với chúng. Các điểm đến công cộng không khớp với tuyến doanh nghiệp nào sẽ rơi xuống liên kết vật lý trừ khi VPN cá nhân đòi chúng trước. Quy tắc ưu tiên chỉ quyết định các kết quả khớp chồng lấn, vì thế hai hồ sơ phải được đọc như bảng tuyến chứ không phải như biểu tượng.
Viết cặp thành hai dòng và nêu người thắng dự kiến cho từng dòng: một tên máy chủ công việc phân giải thành 10.x hoặc 172.16.x nên ra ngoài qua đường hầm doanh nghiệp, và một địa chỉ công cộng không có tiền tố khớp nên lấy tuyến mặc định còn lại. Nếu cả hai dòng nêu cùng một lối ra, việc chia tách không làm điều tài liệu mô tả.
Ghi lại hai luồng và kiểm tra từng luồng
Với mỗi luồng, ghi lại cấu hình đã được phê duyệt nào nên chở nó và trình phân giải nào nên nhận từng loại tên. Sau đó xác minh bằng các yêu cầu mới, không phải bằng một trang công việc đã lưu đệm hay một kết quả IP cũ.
Dừng một cấu hình và lặp lại cả hai luồng. Hành vi khi thất bại là một phần của thiết kế, và đó là phần người dùng nhận ra. Khi hai nhà cung cấp không thể hỗ trợ tổ hợp, hãy chốt một cấu hình đã được phê duyệt và ghi lại nó chở luồng nào, hoặc chuyển sang thiết kế một đường hầm được quản lý. Tài liệu NETunnelProviderManager là nguồn của quy tắc cùng tồn tại.