読者です 読者をやめる 読者になる 読者になる

Rock Me!開発者ブログ

DEVELOPERS BLOG

スマフォでhostsの代用をする方法

弊社では占いサービスを展開しているのですが、プラットフォームによってはhostsを設定してテスト環境を利用するものがあります。
PCでは簡単に設定できるので問題ないのですが、スマフォ実機では普通のやり方ではhosts設定できません。(root化などが必要)
方法はいくつかあるのですが、今回はproxyサーバを立てて実現する方法を紹介します。

まずは物理サーバの用意ですが、数人が利用できれば良いレベルなので今回はRaspberryPiを使ってみます。
(個人的にいじってみたかっただけですが^^;)
RaspberryPiはAmazonなどでさくっと購入できます。
SDカードが必要になるので、無い場合は一緒に購入した方が良さそうです。

OSインストール

RaspberryPi用にカスタマイズされたOSがいくつかあるのですが、メジャーそうなRaspbianにしました。
NOOBという便利なツールがあるので、こちらを利用してインストールします。
一番簡単な Raspberry Pi 用SDカードの作り方 | The Yak Shaver

IPの固定化

proxyサーバのIPが変動してしまうと困るので、IPを固定化しておきます。
/etc/network/interfaces を環境に合わせて編集してください。
ここではIPを192.168.1.200に設定しています。

auto lo

iface lo inet loopback
iface eth0 inet static

address 192.168.1.200
netmask 255.255.255.0
gateway 192.168.1.1

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

再起動して反映させます。

sudo shutdown -r now

squidのインストール

proxyサーバとしてsquidをインストールします。
RaspberryPiでのインストール方法を紹介してくれているサイトがあったので、こちらを参考にしました。
Raspberry Pi / Squid(Proxy Server): IT備忘録

hosts設定

sqidのIP解決にはRaspberryPi上のhostsが使用されるので、 変更したいhostの設定を行います。

スマフォの設定

スマフォのプロキシとして、先ほど設定したsquidのIPとポートを設定します。

  • iPhoneでの設定例
    設定アプリ > Wi-Fi > 接続しているアクセスポイントをタップ
    一番下のHTTPプロキシで手動を選択
    サーバ:先ほどのIPを指定
    ポート:squidで設定したポートを指定
    認証:squidで認証設定をしている場合はユーザとパスワードを指定

Androidでも同様の設定があるのですが、機種によって設定方法が違うので調べてみてください。
(機種によってはこんなのわかるかよ!ってところにあります^^;)

以上でスマフォ上でもhostsを使用した時と同様の設定を行う事が出来ました。
同じような状況で困ってる方はぜひ参考にしてみてください。
RaspberryPiはわりと安定していて、数ヶ月間、特にトラブルなく動き続けています。


弊社ではエンジニアを募集しています。 是非リクルートページをご覧になってください。

リクルートページ