Raspberry pi でVPN拠点間接続

海外在住の人は同様かと思いますが、海外のインターネット接続では日本のradikoその他の一部サービスにアクセスできません。

また、フィリピンの私が使っているプロバイダ(PLDT)は、今年の3月にIPアドレスの割当がグローバルIPからプライベートIPに変わってしまいました。 これは、私が日本に帰省している間に、主たる作業場であるフィリピンのPCに外部から接続することの障害になります。

そこで、フィリピンの自宅内のすべてのPCやデバイスを日本の実家の回線にVPNで拠点間接続することにしました。

現在の構成は下図のようになっています。

この図の中の、無線LANルータを取り外し、Raspberry pi 3で作成したVPN ブリッジに置き換えます。 そうすると、VPNブリッジの配下に接続されているすべてのPCやスマートフォンは、日本の実家のルータに直接接続しているのと全く同じ状態になります。その結果、日本限定のサービスの利用や実家のひかり電話を海外で利用すること、日本と海外でのファイル共有、さらにプライベートIPアドレスが割り当てられている海外のネットワークに対して日本からWake On LAN させたり、VNCで接続して操作する、といったことが可能になります。

※フィリピンのPLDTのADSLはPPPoEの認証なしに、LANポートに接続したデバイスに直接IPアドレスが割り当てられますので、ルータを取り外して置き換えることが可能です。 そうでない環境では、現在のルータのLAN側ポートに刺さっているLANケーブルを全部抜き、今回作成するVPNブリッジのWAN側ポートをルータのLAN側ポートに、VPNブリッジのLAN側ポートをスイッチングハブに接続し、ルータから抜いたケーブルはスイッチングハブに接続すればOKです。

実際のものはこんな感じです。

Raspberry pi 3にUSB LANアダプタを接続します。 ルータで例えると、Raspberry pi にもともとついているLANアダプタがWAN側、追加したUSBのLANアダプタがLAN側になります。 このアダプタにはケーブルが一本しか刺せませんので、実際にはこの先に8ポートのスイッチングハブを接続し、すべてのPCやデバイスに接続できるようにしています。 また、Raspberry pi 3に最初から内蔵されているWIFIアダプタは、無線LANルータにWIFI接続するのと同じく、無線LANの機器を接続することが可能です。

以上が概略ですが、実際の作業手順は以下のようになります。

必要なもの

  • 自分のSoftEther VPNサーバー。(こちらをご購入いただくとすごく簡単です。)日本の実家などに設置してください。VPNサーバーの設置場所が親拠点というか、本店という位置づけになります。
  • Rasoberry pi 3 、ACアダプタ、マイクロSDカード8GB、電源ケーブルなど。
  • USB接続のLANアダプタ。Raspbianにドライバが入っていてすぐ動作するものが簡単です。 AX8872Bのものなら大丈夫そうでしたので、私はこちらを買いました。

作業手順

マイクロSDカードに Raspbian Jessie を書き込み、LANケーブルでルータに接続して起動します。

ルータのステータス画面で確認するか、netenum などのツールを使って Raspberry pi のIPアドレスを調べます。

TeratermなどでSSH接続します。

以下、ターミナルからの操作です。

SoftEther VPN Bridge をダウンロードします。

解凍します。

解凍されたファイルがあるフォルダ vpnbridge に移動します。

makeします。

すると、ライセンス許諾の説明が表示されますので、1、1、1で進めます。 終わったらフォルダを移動します。

移動したフォルダに入り、ファイルの権限を設定します。

自動起動スクリプトを作成します。

エディタが開きますので、下記を貼り付けてから CTRL+x, y, Enterキーで保存して閉じます。

作成したファイルに実行権限を与えます。

自動起動するように設定します。

続いて SoftEther VPNサーバー管理マネージャを使って設定を行います。

SoftEther VPNサーバー管理マネージャをWindowsのPCにダウンロードしてインストールします。

新しい接続設定をクリック
Raspberry piのIPアドレスを”ホスト名”欄に入力

 

接続ボタンをクリック
適当なパスワードを設定、たとえば password とか
拠点間接続に最初からチェックが入っているのでそのまま次へ
接続先のVPN Serverへの接続設定を行う
自分用のSoftEther VPNサーバーのアドレス、ポート番号を入力し、仮想ハブ名を選択。 ユーザー名とパスワードを入れてOKをクリック

 

正しく入力されていれば”オンライン”の表示になります
ローカルブリッジの設定欄をドロップダウンし、追加したUSBのネットワークアダプタ(eth1)を選択する

以上の手順で有線LANについては完成です。

Raspberry pi 3には内蔵の無線LAN機能がありますので、ついでに無線LANでも接続できるようにします。

再びSSHでRaspberry pi に接続します。

apt-get updateしてから hostapdをインストールします。

続いて hostapd の設定ファイルを作成します。

エディタが開いたら下記内容をコピーして貼り付け、CTRL+x, y, Enterキーで保存して閉じます。

最後の二行の ssid は好きなSSID名に、wpa_passphrase は無線LANで接続する際のパスワードですので適当なパスワード(8文字以上)に設定してください。

続いて hostapdが起動するときに上記の設定ファイルを読み込むように設定します。

エディタが開きますので、

という行を探し、

に書き換えます。

ここまで出来たら再度SoftEther VPNサーバー管理マネージャを使ってブリッジの設定を追加します。先ほどは eth1 をブリッジ接続しましたが、今度は wlan0を追加します。

ドロップダウンリストの一番下 wlan0 を選択します。

完成です。 ここで電源を急に切ると設定が消える場合がありますので、一度ちゃんとシャットダウンしてください。

出来上がりました。

ルータのWAN側がPPPoEでなくDHCPになっている場合はルータを取り外し、Raspberry piのWAN側(内蔵のLANポート)をモデムに、LAN側(追加したLANアダプタ)をハブに接続し、PCなどのデバイスはハブに接続してください。

ルータのWAN側がPPPoEになっている場合は、ルータのLAN側ケーブルを全部抜き、本機のWAN側だけをルータのLAN側に接続、本機LAN側からハブを経由してすべてのPCなどに接続します。

電源を入れて1分ほどでVPN接続が確立し、PCにはVPNサーバーが設置してある場所のルータからIPアドレスが割り振られます。PCを再起動するか、ネットワークアダプタを一度無効にしてから有効に戻してください。

実際に作成してすでに数日間使っていますが快調です。 停電やADSLのコネクションが切れるようなことがあっても、回復すれば自動的に再接続されますので安心です。


starstonesoft

投稿者: starstonesoft

1995年からフィリピン在住。 海外生活に役立つことなどを紹介していきたいです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です