Cấu hình hành vi cổng bị khóa
captive_portal_detection_enabled
(<= Android 7.1.1)
- hoạt động như mô tả trong cơ thể câu hỏi
captive_portal_mode
(> = Android 7.1.2)
- hoạt động như mô tả trong cơ thể câu hỏi
Đặt (các) URL cổng bị khóa
captive_portal_server
(<= Android 6.0.1)
- Máy chủ chứa một
generate_204
trang, được sử dụng để tạo nội bộ URL để phát hiện cổng bị khóa ( new URL("http", mServer, "/generate_204");
- lỗi thời kể từ Android 7.0, xem bên dưới)
captive_portal_use_https
(> = Android 7.0)
0
: Không sử dụng HTTPS để xác thực mạng
1
: Sử dụng HTTPS (mặc định)
captive_portal_http_url
(> = Android 7.0)
- URL được sử dụng để phát hiện cổng bị khóa HTTP - sử dụng theo cặp với
captive_portal_use_https
(được đặt thành 0
)
- > = Android 7.1.1: Hệ điều hành không còn
generate_204
tự động thêm vào URL, giúp URL đầu vào linh hoạt hơn
captive_portal_https_url
(> = Android 7.0)
- URL được sử dụng để phát hiện cổng bị khóa HTTPS - sử dụng theo cặp với
captive_portal_use_https
(được đặt thành 1
)
- > = Android 7.1.1: Hệ điều hành không còn
generate_204
tự động thêm vào URL
Yêu cầu cho URL được sử dụng
Mã phản hồi HTTP 204 ("không có nội dung") từ máy chủ được sử dụng để xác thực, không cần thêm nội dung: lấy ví dụ về URL phát hiện mặc định, curl clients3.google.com/generate_204
trả về sản phẩm nào và kiểm tra phản hồi HTTP bằng cách thêm --write-out %{http_code}
trả về 204
. '
Một danh sách nhỏ các URL máy chủ cổng bị khóa có thể sử dụng ở Trung Quốc đại lục (đã được thử nghiệm cá nhân)
https://captive.v2ex.co/generate_204 (được lưu trữ bởi v2ex.com)
https://connect.rom.miui.com/generate_204 (được lưu trữ bởi Xiaomi, được sử dụng theo mặc định trên MIUI)
https://noisyfox.cn/generate_204 (được lưu trữ bởi noisyfox.cn)
https://www.google.cn/generate_204 & https://developers.google.cn/generate_204 (được lưu trữ bởi Google)
https://www.qualcomm.cn/generate_204 (được lưu trữ bởi Qualcomm)
Ghi chú thêm
Nguồn tin cũng đề cập đến các thông số captive_portal_user_agent
, captive_portal_fallback_url
và captive_portal_other_fallback_urls
:
captive_portal_fallback_url
(> = Android 7.1.1) rõ ràng được cho là giữ một URL, trong khi
captive_portal_other_fallback_urls
giữ nhiều URL hơn nữa (danh sách được phân tách bằng dấu phẩy, vì vậy các URL có thể không chứa bất kỳ dấu phẩy nào).
Nhưng cá nhân tôi đã tiến hành thử nghiệm trên Android 8.0.0 và cả hai tham số dự phòng đều không hoạt động. Giả sử bây giờ họ đang khai báo mà không thực hiện.
Một số ví dụ về cài đặt cổng bị khóa của Android tại Trung Quốc cho thấy việc sử dụng một số cài đặt ở trên:
cài đặt shell adb đặt captive_portal_http_url toàn cầu http://www.google.cn/generate_204
cài đặt shell adb đặt captive_portal_https_url https://www.google.cn/generate_204 toàn cầu
cài đặt shell adb đặt captive_portal_fallback_url toàn cầu http://www.google.cn/generate_204
cài đặt shell adb đặt captive_portal_other_fallback_urls toàn cầu http://www.qualcomm.cn/generate_204
Biết rằng, "lá thiếc" thậm chí có thể thiết lập dịch vụ xác minh của riêng họ. Với Apache:
RewriteEngine On
RewriteCond% {REQUEST_URI} / created_204 $
RewriteRule $ / [R = 204, L]
hoặc với Nginx:
location / created_204 {return 204; }
Người giới thiệu
1 , 2 (Trung Quốc), 3 (Trung Quốc)
new URL("http", mServer, "/generate_204");
(vớimServer
việc được khởi tạo bởicaptive_portal_server
if set) - vì vậy đây chỉ là tên máy chủ (hoặc IP) ở đó (rất có thể là một trong những lý do khiến tôi thất bại trên thiết bị MM). Không chắc chắn khi nào nó thay đổi - nhưng từ những gì bạn viết có lẽ với N. Đối với 204, tôi đã tìm thấy điều này - vì vậy có vẻ như tôi đã giả định chính xác: chỉ là mã 204, không có nội dung.