iPhoneでのプロキシサーバーの使い方は? 設定や構成ってどうやるの?

学校や企業内でのWi-Fiを使用するときに、直接接続でのアクセスができず、プロキシ環境での使用を強いられることがあります。

「Wi-Fiではなく自前のSimカードで4Gを使えばアクセス先は自由だけど、通信量がかさんで通信制限されるのは困るなあ。自分のiPhoneにプロキシサーバーの設定とやらをすれば学校(会社)のWi-Fiを使えるらしいけど、やり方ってどうすればいいんだろう?」

と思う方もいらっしゃるのではないでしょうか。

iPhone や iPad などの iOSデバイスでプロキシサーバーを使用するためには、iOSデバイスのWi-Fiの設定にプロキシサーバーの情報を登録すればOKです。

その方法を詳しくみていきましょう。

iPhoneでのプロキシ設定方法

前提として、Wi-Fiに接続できるエリア内(電波の届く範囲)に居る状態でのみ設定が可能です。

手順
手順1:ホーム画面から「設定」をタップ

手順2:「設定」画面にある「Wi-Fi」をタップ

手順3:プロキシ設定をしたい対象のWi-Fiネットワークの名前をタップ
(Wi-Fiを使用するための認証をまだしていない場合は、認証をおこなうこと)

手順4:画面を下までスクロールし、「プロキシを構成」をタップ

手順5:「手動」または「自動」をタップ(どちらを選択するかは下記を参照)

ここからは、手順が「手動」または「自動」のいずれかに分岐します。
・プロキシサーバーのポートとアドレスを入力する場合は、「手動」をタップ
・IDやパスワードなどの認証情報が必要な場合は、「手動」をタップ

・プロキシ自動構成スクリプトが置いてあるURLを入力する場合は、「自動」をタップ

「手動」「自動」それぞれについて詳しく説明します。

手動設定の場合

手動設定の場合は、下記の各項目を入力します。

・サーバ
プロキシサーバーのIPアドレスまたはFQDNを入力します。

※FQDNとは?
Fully Qualified Domain Name の略で、完全修飾ドメイン名のことです。
DNSなどのホスト名、ドメイン名(サブドメイン名)これらすべてを省略することなく指定する記述形式を指します。

省略されている例: example.com
省略されていない例(FQDN): www.example.com.

厳密なFQDNには、上記の例にある com. のように右端に . (ピリオド)を付けますが、今回のようなiPhoneのプロキシ手動設定の場合は右端にピリオドは付けません。

サーバの設定については、IPアドレスがわかるのであれば、IPアドレスを直接記述するのがベストです。(そうすることにより、DNSの名前解決ができないトラブルとは無縁となります)

・ポート
プロキシサーバーのポート番号を入力します。

・認証
「認証」のチェックマークは基本的にオフのままでかまいません。
認証用のIDやパスワードなどが必要な場合のみ「認証」をオンにし、
ユーザ名とパスワードを入力してください。

※サーバやポート番号がわからない場合や、認証情報が必要なのにわからない場合は、
プロキシサーバーの対象となる施設や組織(学校や会社など)のネットワーク管理者に問い合わせてください。

※手動で入力したHTTPプロキシ情報が保存されず、勝手にオフになってしまう場合の解決方法

プロキシ設定先のWi-Fiへのネットワーク接続情報が、iPhoneのバックアップから復元されていた場合、この現象が起こることがあります。(iOSのバージョンによっては起こらない場合もあります)

解決方法(Wi-Fiの接続パスワードがわかっている場合のみ)は、対象のネットワーク設定をいったん削除し、あらためてWi-Fiの接続パスワードを入力して接続してから再度HTTPプロキシ情報を手動で入力すればOKです。

自動設定の場合

iPhoneの「プロキシを構成」をタップしたあとの画面で「自動」をタップし、
pacファイルが配置されているURLを入力します。

※pacとは?
pacは Proxy Auto Configuration の略で、プロキシ自動設定ファイルです。
javascriptのFindProxyForURL関数にて記述します。
(pacの記述方法については検索してみてください。javascriptをマスターしていなくても書くことができます)

「自動」を選んでURLを入力してもスクリプトが見つからない場合は?

その場合は、以下の点をチェックしてみてください。

確認ポイント

確認ポイント1: プロキシ自動構成スクリプトは正常に配置(アップロード)されているか?
確認ポイント2: プロキシ自動構成スクリプトを配置したURLを正確に入力できているか?
確認ポイント3: プロキシ自動構成スクリプトの中身は正常に記述されているか?

上記すべてチェックOKにもかかわらずスクリプトが動作しない場合は、DNSの名前解決ができていない可能性があります。
その場合の対処法としては、URLを文字列ではなく、IPアドレスで直接指定することで正常に動作する場合がありますので試してみてください。
(IPアドレスで直接記述するのはURLの前半部分のみであり、URLの後半部分にあるファイル名の部分は文字列となります)

URLの設定に、IPアドレスの直接記述を使用した例:
(下記の nnn の部分は、実際にはプライベートIPアドレスの数字が入ります)

http://192.168.nnn.nnn/proxy.pac

 

自動設定(pacファイルを記述した場合)のメリットは?

例外設定ができる

例外設定することにより、「特定のアプリケーションだけはプロキシサーバーを経由させない」
というような設定が可能となります。プロキシサーバーを通すと動作しないようなアプリケーションを併用したい場合に便利です。

例外設定の手順
手順1:pacファイルに例外設定を記述

手順2:pacを置く(Webサーバ上に proxy.pac というファイル名にて設置)
例:(下記の nnn の部分は、実際にはプライベートIPアドレスの数字が入ります)
http://192.168.nnn.nnn/proxy.pac

手順3:iPhoneのプロキシ設定画面を開き「自動」をタップしたあとの画面にて設定するURLに、pacを配置したアドレスを指定

 

複数の設定を自動で切り替えできる

pacファイルの記述しだいで、複数のプロキシ設定を自動的に切り替えて使うことができます。

動作イメージとしては、

動作の流れの例

プロキシ設定その1にて接続試行

プロキシ設定その2で404が返ってきたらプロキシ設定その3を試行

プロキシ設定その3で404が返ってきたらプロキシ設定その4を試行
(中略)
プロキシ設定その8で404が返ってきたら、プロキシを使用せず直接接続を試行
のような感じです。
エンドユーザ側で「あー、ここの設定だとつながらないから次の設定を試すためにまた入力しないとダメか~」というような面倒な再設定が必要なくなるので便利です。

負荷分散ができる

pacの記述にて、カンタンな負荷分散も可能です。
・プロトコル(http や ftp など)の違いによって使用するプロキシサーバーを分散する
・ドメインの違いによって使用するプロキシサーバーを分散する
のようなことが実現可能です。

トラフィック量による厳密な負荷分散とまではいきませんが、これだけでもある程度の負荷分散効果が見込めるでしょう。

まとめ

いかがだったでしょうか?

iPhoneでプロキシの設定をするときは、手動と自動、2種類の設定方法があります。
入力する内容がわからない場合は、管理者に問い合わせてみてください。

それでは、よいプロキシライフを!

あわせて読みたい記事