ネットブックでArch Linuxを実行しています。私の学校には開いているアクセスポイントがあり、接続されていない場合にWebサイトを開こうとするとリダイレクトされるページを介してネットワークにサインインする必要があります。
私のAndroid Smartphoneで動作します。Windowsで動作します。私の先生が接続できるのでLinuxでも動作するはずです(彼はUbuntuを実行しています)。
Wifiメニューを使用してアクセスポイントに接続し、netctlプロファイルを生成します。接続しましたが、ログインページにリダイレクトされず、(電話から取得した)アドレスを入力してもサーバーが見つかりません... IPv6を無効にしてみましたが、何も変わりません...
あなたが説明するものは captive portal と呼ばれます。通常、Wi-Fiホットスポットでの認証に使用されますが、有線ネットワークアクセスの制御にも使用できます。
キャプティブポータルを実装するには、いくつかの方法があります。
HTTPリダイレクション
この場合、認証されていないクライアントからのDNSクエリは通常どおり解決されます。ただし、ブラウザが解決されたIPアドレスにHTTPリクエストを送信すると、透過プロキシとして機能するファイアウォールによってリクエストが傍受されます。クライアントのHTTPリクエストは、ローカルネットワークのサーバーに転送され、HTTPでサーバー側リダイレクトを発行します302 Foundステータスコード 、クライアントをキャプティブポータルにリダイレクトします。
DNSリダイレクション
DNSベースのリダイレクトでは、ファイアウォールにより、DHCPによって提供されるDNSサーバーのみが認証されたクライアントによって使用されることが保証されます。ファイアウォールは、認証されていないクライアントからローカルDNSサーバーにDNSクエリをリダイレクトすることもできます。このDNSサーバーは、認証されていないクライアントによって行われたすべてのDNSルックアップへの応答として、キャプティブポータルのIPアドレスを返します。
IPリダイレクション
IPレイヤーでのリダイレクトでは、ルーターが Destination Network Address Translation (DNAT)を実行して、キャプティブホストからキャプティブポータルに送信されるパケットを再ルーティングします。キャプティブポータルソフトウェアがルータ自体で実行されている場合、パケットは代わりに内部インターフェイスに送信されます。キャプティブポータルからホストに向かうパケットは順番に source addressrewritten を取得するため、元の宛先から発信されたように見えます。
キャプティブポータルの問題をトラブルシューティングする場合、最初のステップは、使用されているリダイレクトのタイプを識別し、その時点でリダイレクトが失敗することです。このジョブに適したツールは、 Wireshark などの パケットアナライザー です。ただし、学校のITポリシーでは、ローカルネットワークでのパケットスニファの使用が禁止されている可能性があることに注意してください。このようなツールは、暗号化されていないネットワーク上の他人のプライバシーを簡単に侵害できるためです。
学校の技術サポートに相談することもできます。彼らは、ローカルWi-Fiネットワークのキャプティブポータル構成を認識しており、特に教員がLinuxを使用している場合は、問題の原因を特定するのに役立つ可能性があります。
リダイレクトページが読み込まれず、再接続しても問題が解決しない場合、次の最も簡単な手順は、ルーターを直接アドレス指定することです。
192.168.1.1
をお試しください。これは最も一般的なデフォルトのアドレスであり、通常は変更されません。
ルーターをアドレス指定すると、リダイレクトページに移動します。
私の場合Chrome=が邪魔になりました。 シークレットウィンドウ を開いてランダムなWebページに移動すると、リダイレクトが機能しました。 Arch Linuxスレッド の投稿からのアイデア。
ホテルは172.17.x.xネットワークを使用しており、Dockerのインストールも同様でした。現在、Dockerインスタンスを使用する必要のあるクライアントがなかったため、アンインストールし、サインインのためのログインリダイレクトで問題が発生しなくなりました。
通常、ルーターはキャプティブポータルもホストします(ただし常にではありません)。接続すると、通常はキャプティブポータルが表示されます。キャプティブポータルのアドレスを確認するには、適切にリダイレクトするデバイスのアドレスを確認して覚えるか、route -n
を実行してデフォルトルートに対応するアドレス(ゲートウェイの下)を選択します(上部)行-0.0.0.0/0)。
そのアドレス(デフォルトのルーターアドレス)をブラウザーウィンドウに入力すると、キャプティブポータルが表示されるはずです。