キャプティブポータルのパラメーター


10

あり、いくつかのキャプティブポータルのパラメータ 1が経由してAndroidデバイスに適用できるがsettings put global-最も有名なのは、おそらくされて

settings put global captive_portal_detection_enabled 0

キャプティブポータルチェックを完全にオフにします(Android <8の場合)。誰かが他のものを使用する方法を説明できますか-たとえば、「スズ箔用のカスタムキャプティブポータルサーバー」を定義するために?たとえば、単純に

settings put global captive_portal_server example.com

これにより、ほとんどの場合、キャプティブポータルチェックが永続的に失敗します(バックグラウンド:そうすると、ポータルチェックはURL http://example.com/generate_204を構築し、特定の応答を期待してそれをチェックします)。

したがって、キャプティブポータルチェックを単に無効にするだけでなく(私が読んだように、場合によっては正しいポータルにリダイレクトされないなど、他の問題が発生する可能性があります)、このコンテキストでプライバシーを強化するために他に何ができますか?

例(私がそれらを正しく理解している場合):

  • captive_portal_mode (Android 8以降?):
    • 0:キャプティブポータルを検出しようとしないでください
    • 1:ユーザーにサインインを促す
    • 2:すぐにネットワークから切断し、将来そのネットワークに再接続しないでください
  • captive_portal_detection_enabled (Android <8?):
    • 0:キャプティブポータルチェックを完全に無効にする
    • 1:有効にする(デフォルト)

これらの例は非常に単純ですが、他のパラメーターの使用方法は?

回答:


12

キャプティブポータルの動作の構成

  • captive_portal_detection_enabled (<= Android 7.1.1)
    • 質問の本文に記載されているとおりに機能する
  • captive_portal_mode (> = Android 7.1.2)
    • 質問の本文に記載されているとおりに機能する

キャプティブポータルURLの設定

  • captive_portal_server (<= Android 6.0.1)
    • generate_204キャプティブポータル検出用のURLを内部で作成するために使用されるページを保持するサーバー(new URL("http", mServer, "/generate_204");– Android 7.0で廃止、以下を参照)
  • captive_portal_use_https (> = Android 7.0)
    • 0:ネットワーク検証にHTTPSを使用しないでください
    • 1:HTTPSを使用(デフォルト)
  • captive_portal_http_url (> = Android 7.0)
    • HTTPキャプティブポータルの検出に使用されるURL-と組み合わせて使用captive_portal_use_https(に設定0
    • > = Android 7.1.1:OSはgenerate_204URLに自動的に追加されなくなり、入力URLにある程度の柔軟性が与えられます
  • captive_portal_https_url (> = Android 7.0)
    • HTTPSキャプティブポータルの検出に使用されるURL-と組み合わせて使用captive_portal_use_https(に設定1
    • > = Android 7.1.1:OS generate_204がURLに自動的に追加しなくなりました

使用するURLの要件

サーバーからのHTTP 204応答コード(「コンテンツなし」)が検証に使用されます。追加のコンテンツは必要ありません。たとえば、デフォルトの検出URLを使用してcurl clients3.google.com/generate_204空を--write-out %{http_code}返し、returnを追加してHTTP応答を検査します204。 '

中国本土で使用可能なキャプティブポータルサーバーURLの小さなリスト(個人的にテスト済み)

https://captive.v2ex.co/generate_204(v2ex.comがホスト)

https://connect.rom.miui.com/generate_204(Xiaomiによってホストされ、MIUIではデフォルトで使用されます)

https://noisyfox.cn/generate_204(noisyfox.cnがホスト)

https://www.google.cn/generate_204およびhttps://developers.google.cn/generate_204(Googleがホスト)

https://www.qualcomm.cn/generate_204(Qualcommがホスト)

その他のメモ

ソースもパラメータを言及しcaptive_portal_user_agentcaptive_portal_fallback_urlそしてcaptive_portal_other_fallback_urls

  • captive_portal_fallback_url (> = Android 7.1.1)明らかに単一のURLを保持することになっていますが、
  • captive_portal_other_fallback_urls さらに複数のURLを保持します(カンマ区切りのリストなので、URLにはカンマが含まれない場合があります)。

しかし、私は個人的にAndroid 8.0.0でテストを実施しましたが、どちらのフォールバックパラメーターも機能しません。それらが今のところ実装のない宣言であると仮定します。

中国におけるAndroidキャプティブポータル設定のいくつかの例は、上記の設定のいくつかの使用を示しています。

adbシェル設定により、グローバルなcaptive_portal_http_url http://www.google.cn/generate_204が配置されます
adbシェル設定により、グローバルなcaptive_portal_https_url https://www.google.cn/generate_204が配置されます
adbシェル設定により、グローバルなcaptive_portal_fallback_url http://www.google.cn/generate_204が配置されます
adbシェル設定により、グローバルなcaptive_portal_other_fallback_urls http://www.qualcomm.cn/generate_204が配置されます

それを知って、「ブリキ」は彼ら自身の検証サービスをセットアップすることさえできた。Apacheの場合:

RewriteEngine On
RewriteCond%{REQUEST_URI} / generate_204 $
RewriteRule $ / [R = 204、L]

またはNginxを使用:

location / generate_204 {return 204; }

参考文献

12(中国語)、3(中国語)


1
関連する投稿 –少なくともMMでは、次のコードが使用されます:(設定されている場合は初期化されnew URL("http", mServer, "/generate_204");mServerいますcaptive_portal_server)–これはサーバー名(またはIP)だけである必要があります(これが失敗した理由の1つである可能性が高いです) MMデバイス上)。それがいつ変更されたかはわかりません、おそらくNを使用して作成したものからです。204の場合、これを見つけました。つまり、204コードのみで、コンテンツはないと想定しているようです。
イジー

@Izzy残念ながら、2つのフォールバックオプションが機能していないようです。デフォルトcaptive_portal_https_urlを使用して到達可能なURLを配置captive_portal_fallback_urlしても、クロスマークは削除されません。配置する場合も同様です。まっすぐにcaptive_portal_other_fallback_urls設定captive_portal_https_urlすることが唯一の方法です。テストはWiFiではなくLTEで行われることに注意してください。何らかの理由で、完全に無効なURLを設定した場合でも、学校のWiFiは常に私をキャプティブポータルに誘導します。
Andy Yan

これらのフォールバックパラメーターは、Oreoで導入された可能性があります(それらを見つけるためにOreoコードを調べたことに注意してください)。あなたがヌガーをチェックしたと思いませんか?//小さなサーバーリストを含めることをお勧めします。AFAIKもありg.cnます;)
Izzy

1
@Izzyああ、そうだとは思いませんでした。LOS15を搭載したデバイスはまだフラッシュしていません。チェックアウトする価値があるかもしれません。それが機能する場合は、コメントをクリーンアップするように更新とpingを送信します。また、g.cnのHTTPS証明書は本土で有効期限が切れていると言われているため、HTTPSでは使用できなくなりました。//しかし、ちょっと待ってください... 7.1.2ソースコードには、への参照も含まれていcaptive_portal_fallback_urlます。
アンディヤン

多くの新機能と同様に、機能が完了する前に参照が表示されることがあります。そして、参照されているファイルは、機能ではなく定数を主に定義していますよね?
イジー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.