最近iPhoneで脱獄せずにテザリングできる系の話を連続で目にしました。仕組みは
- ProxyとなるJavaScriptプログラムやアプリをiPhoneで起動
- MacでアドホックWi-Fiネットワークを作成しiPhoneからWi-Fi接続
- Macでの通信をiPhoneのSOCKET Proxyを介して行う
という事のようです。
もちろんそんなアプリがAppleに承認されるはずはないですし、最近話題になったアプリはこっそりw、JavaScriptプログラムを使用するものは運営会社のサーバを介するので気持ち悪い上にちょっぴり良くない話もあって、ちょっとなーというところです。
仕組みは分かってるのだから開発者たるもの自分で作れば良いじゃないか!普通の人にはテザリングするためだけにApple Developer Connectionの年間$80は高いでしょうが、どうせ既に払ってる訳ですし(笑)
よし、作るか!と思ったと同時に同じ事を考える人はたくさんいそうと思いつきGitHubで「ios tethering」で検索したらあった(・ω・)
https://github.com/PetroEkos/iOSTether
ソースコードがあるのでよからぬ事をしててもコードを読めば分かるネ!ざっと見た限り見知らぬところに情報を送ったりしてはいないようです。
追記:上記のリポジトリなくなってますネ...検索したら別のが見つかりましたが同じものかどうかまだ確認しておりません...https://github.com/FossilizedCarlos/iOSTether
ProxyアプリをiPhoneで起動
早速コンパイルして起動してみましょう。
プロジェクトをXcodeで開いたらiPhoneを接続しておもむろにRun。
そうするとiPhoneでProxyアプリが起動します。
Getting Startedというボタンを押すと接続する手順が書いてありますのでその通りにやります、がせっかくなので日本語で手順を紹介しておきます。
MacでアドホックWi-Fiネットワークを作成
- 「システム環境設定>ネットワーク」を開いて「Wi-Fi」を選択します
- 「ネットワーク名」プルダウンを開いて「ネットワークを作成...」を選択します
- 「ネットワーク名」に適当な名前、後はデフォルトでOKなので「作成」します
ただ、CAFEとかで使うならセキュリティーを付けておいた方が良いかもしれません。
iPhoneでの設定
- iPhoneの「設定」を開いて「Wi-Fi」から先ほど作ったアドホックネットワークを選択します
- Tetheringアプリを開いてスタートをクリックします
Macのプロキシ設定
- 「システム環境設定>ネットワーク>詳細...>プロキシ>SOCKS プロキシ」を選択します
- 「SOCKSプロキシサーバ」にアプリの画面に表示されているIPアドレスとポート番号を入力して「OK」ボタンをクリックします
- 「適用」ボタンをクリックします
確認
iPhone経由で接続できていれば、Tetheringアプリの画面のステータスが通信によって更新されると思います。
もし何も動かない場合は、他に使用しているネットワーク接続を切断してみてください。有線LANやEMobileなどです。
これで、ブラウザなどでどこかページ(もちろんココでも!w)にアクセスすればiPhoneの3Gネットワーク経由で表示されるはずです。
私はauのiPhone 4Sを使っていますが、WEBページのブラウジングなら全く問題ないスピードに感じます。
ダウンロードがauより速いSoftBankの回線(もちろん電波が強いところに限りますがw)ならばもっと快適なのではないかと思います。
端末としての機能ではないので、アプリがバックグラウンドに回ると動作しません。従ってテザリング中はiPhoneを使えないです。
また、キャリアが認めている方法ではない事は確かなので、パケット数の上限を超えて帯域制限をかけられたりしないよう、使用方法や時間に注意した方が良いと思います。
あと、やはりアドホックWi-Fiネットワークはセキュリティをかけた方が良いでしょうね。iPhoneで接続するのが少し面倒ですが。
コメントする