web-dev-qa-db-ja.com

Wifiホットスポット、OSが私をキャプティブポータルとして検出しないのはなぜですか?

私のプロジェクトはWifiキャプティブアクセスポイントを作成することでした。つまり、このWi-Fiスポットに接続すると、インターネットを閲覧できなくなり、ローカルWebサイトのみが閲覧できます。可能なすべてのポートについて、任意のドメイン、任意のIPにアクセスすると、クライアントはローカルWebサイトにリダイレクトされます。できます。ええ。

どこかで間違っていない限り、100%拘束されています。IP転送も、インターネットアクセスもありません。

しかし、私はOSによってキャプティブポータルとは見なされていません。私がテストしたOS(Mac OS X、iOS、Android)はそれを認識していないようですキャプティブとして。したがって、noポップアップ/スプラッシュ/通知を受け取ります。 (Apple CNA:設定したリダイレクトに関して、通知があり、アシスタントに表示されるはずです)

誰かがこれで大部分の助けを所有していますか? 壁に囲まれた庭として検出されることで、いくつかのものが欠落/誤解されていますか?.

助けてくれてありがとう。

編集___________コンソールで、Mac OSXがWifiスポットに参加したときに表示される一連の行を次に示します。

UserEventAgent [40]:キャプティブ:CNPluginHandler en1:認証済み

UserEventAgent [40]:キャプティブ:[CNInfoNetworkActive:1709] en1:SSID'MyWifiTest2 'がインターフェイスをプライマリにしない(キャッシュエントリなし)

UserEventAgent [40]:キャプティブ:CNPluginHandler en1:評価中

UserEventAgent [40]:キャプティブ:en1:「MyWifiTest」をプローブしていません(キャッシュはキャプティブではないことを示します)

同様の問題@ https://discussions.Apple.com/thread/6251349 "つまり、キャッシュはもはや問題ではないことがわかりますが、何かがバグになっていますプローブ(つまり、Captive NetworkAssistantがApple成功のWebページ)を要求し、エラー状態では、オンラインであると想定しますが、そうではありません。これもバグがあるようです。少しおかしいです。 、つまり、コンピュータがオンラインであると見なすとすぐに、私の小さなバックグラウンドプロセスがすべて要求を開始し、それらのプロセスがスローするエラーにキャプティブポータルログインページのマークアップのダンプが表示されます。 "

Library/Preferences/SystemConfiguration/CaptiveNetworkSupport/Settings.plistのProbeURLは次のとおりです。

http://captive.Apple.com/hotspot-detect.html
6
ArchiT3K

私はそれを進めてきたので、私の質問に答えます。

Library/Preferences/SystemConfiguration/CaptiveNetworkSupport/Settings.plistのProbeURLは次のとおりです。 http://captive.Apple.com/hotspot-detect.html

まず第一に、これは実際にはprobeUrlではありません。 ProbeUrlは、試行ごとに一意のフォートです。 200についての噂でさえApple urlsは間違っています。Apple OSX/iOSがWifiをプローブするたびに新しいURLを生成します。*ポップアップの表示を避けたい場合、Successボディにサービスを提供するだけです。*

次に、100%拘束されているだけでは不十分です。リダイレクトは問題の半分です。 2番目の部分はWifiに関するプロトコルの問題です。それについて、wifiローミングなどについて学ぶ必要があります。

0
ArchiT3K

あなたの質問は他のオペレーティングシステムを参照していますが、Windowsがキャプティブポータルをどのように検出するかを見ると、解決策につながる可能性があります。

キャプティブポータルの存在を検出するために、Windowsはdns.msftncsi.comに対してDNSルックアップ要求を実行します。このDNSアドレスは131.107.255.255に解決される必要があります。 DNS解決が失敗した場合(0.0.0.0に解決)、または解決されたIPが正しくない場合は、インターネット接続が正しく機能していないと見なされます。 DNSクエリが適切に解決されたがページにアクセスできない場合は、インターネット接続が機能していると見なされますが、DNS要求はブラウザ内の認証ページ(キャプティブポータル)にリダイレクトされています。

詳細については、次のブログを参照してください。 http://blog.superuser.com/2011/05/16/windows-7-network-awareness/

1
Nick Painter

私にとっては、ページにWispRxml標準を設定してから機能しています。

これがないと、私のポータルはiOSではなくAndroidによってキャプチャされたことが検出されました...

1
ArchiT3K