--- title: コンシューマー向けのハイエンドルーターでVPNを利用してみた author: kazu634 date: 2015-01-31 url: /2015/01/31/use-vpn-server-function-of-highend-consumer-router/ wordtwit_posted_tweets: - 'a:1:{i:0;i:6658;}' wordtwit_post_info: - 'O:8:"stdClass":14:{s:6:"manual";b:1;s:11:"tweet_times";i:1;s:5:"delay";s:1:"0";s:7:"enabled";s:1:"1";s:10:"separation";i:60;s:7:"version";s:3:"3.7";s:14:"tweet_template";s:142:"ブログに新しい記事を投稿したよ: コンシューマー向けのハイエンドルーターでVPNを利用してみ… - [link] ";s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:6658;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}s:4:"text";s:161:"ブログに新しい記事を投稿したよ: コンシューマー向けのハイエンドルーターでVPNを利用してみ… - http://tinyurl.com/mwh37en";}' tmac_last_id: - 594128247962505216 categories: - インフラ --- 海外からだと一部のサイトが閲覧できないケースがあります。有名な例をあげれば、中国だとFacebookにアクセスできなかったりします。こうした場合、IT系のエンジニアは考えます。VPNを張ろうって。今回は実家のネットワーク環境の改善をした際に、ハイエンドルーターを導入し、VPNを利用できるようにしてみたので、その時に実施したことをつらつらとまとめてみます。 ## VPNとは VPNは、Virtual Private Networkの略です。 Virtualという言葉を「仮想」としてしまうとわかりづらくなってしまうのですが、一言で言ってしまえば、「細かな違いはあるけれども気にしなくてOK。実質的には同じだから」みたいな意味と捉えるといいかと思っています。 Private Networkというのは、「専用線」というやつです。要するに、糸電話みたいに、通信するときに、特定の二者間だけのために専用に線を引いたものを指しています。こうすると、断線しない限り確実に通信できるし、通信品質も自分達以外に利用している人がいないため、一定の水準が保証されます。 まとめると、VPNというのは、実質的には専用線と同じように機能する仕組みとなります。 ## VPNを使うとどうなるのか? VPNを利用すると、接続先のVPNサーバーからインターネットに接続することができます。つまり、自分がどこにいようとも、VPNサーバーさえ日本にあれば、VPNサーバーを経由することで日本からアクセスしていることにできるのです。海外からアクセスすると、海外のネットワーク上にあるファイアーウォールで接続をブロックされることがあります: これではアクセス出来ないので、日本にあるVPNサーバーに接続してあげることで、こんな感じで接続できるようになります: 海外のネットワークでブロックされるところを、うまいこと回避できてしまうわけです。Virtualな部分を強調すると、本当は上の画像の経路で接続しているのですが、こんな風にあたかも接続しているように振る舞います: ## ハイエンドルーターを導入する前の実家のネットワーク環境 ハイエンドルーターを導入する前はこのようなネットワーク図でした。よく考えたら、ADSLルーターだから、ここを普通のルーターに置き換えることはできませんでした。。。: ## ハイエンドルーター導入後の実家のネットワーク環境 導入後はこのような形になりました: ## 導入に際して実施したこと 基本的にはほとんどやることはありません。買ってきたルーターでVPN機能を有効にしてあげました。 考慮しなければいけなかったのは以下の点です: ①については、プロバイダーと契約するときに固定IPアドレスを取得していなければ、不定期に外部からアクセスするときのIPアドレスが変更されてしまいます。勝手に変更されてしまうと、外部からアクセスできなくなってしまうので、DDNSという仕組みを利用してあげます。DDNSというのは簡単に言うと、IPアドレスに名前をつけてあげて(例えば www.google.com とかね)、IPアドレスの変更を検知したら、名前に紐づくIPアドレスを変更してあげる仕組みです。名前は常に同じだけれども、紐づくIPアドレスは常に更新されるため、一見固定IPアドレスにしているように見せる仕組みです。PCが起動した時に更新するようにしておきました。詳細はDDNSとか、DiCEでググってください。 ②については、ADSLルーターのDHCPサーバーの設定を変更してあげて、購入したルーターに常に同じIPアドレスを割り振るようにしました。 最後に、ADSLルーターのインターネット側からVPN関連のアクセスが有った際に、購入したルーターにNAT(=転送)する設定を入れてあげて、設定を終えました。 ## 接続確認 手元のiPhoneで接続確認してみました。まずはVPN接続する前のグローバルIPアドレスを確認します: この状態でVPN接続してみます: つながりました。小さく「VPN」と表示されてることに注目: この状態でグローバルIPアドレスを確認します: 実家から接続している状態になっているわけですから、当然ながらグローバルIPアドレスが変わっています! * * *