この記事はカノジョできてるエンジニア Advent Calendar 2016 17日目の記事です。
インターネットが発達したおかげで、彼女が遠くに住んでいても(L1的に遠い)コミュニケーション手段は豊富にあります。
しかし、インターネット経由ではIXを間に通すため、L2的にも遠く離れていることになります。
やっぱり直ぐに会いたいのが正直なところ。それをL3サイドで少しでも解決してみようと思い立ったわけです。
VPNで一つ屋根の下で暮らす
世の中にはVPNという便利な機能が存在します。
L3でVPNセッションを張ると、こちらのローカルエリアネットワークにリーチ出来るようになります。
そうすれば同じサブネット内に遠隔地の彼女が居るわけですから、これでL3的に同じ屋根の下で暮らしていることになりますね?
実現方法について
前振りは置いといて、彼女側での作業を極力減らす様に実装しなければいけません。
ネットワークインフラ屋同士であれば、IPsecなりでサイト間VPNでセッションを張れば良いですが、相手がネットワークについて詳しくなければ、相手への負担が大きくなってしまいます。
そうなると、向こうからこちらへ都度VPNセッションを張れるようにするのが一番です。
Softether VPNでサクッとOpenVPN
相手への負担が軽くなりかつ、マルチプラットフォーム対応させるのであれば、1番にOpenVPNが候補に挙がります。
構成ファイルとauthデータを用意し、authデータからログイン情報を渡してあげれば、相手側では接続をクリックするだけでVPNセッションを張ることができますね。
Softether VPNで構築側の稼働も削減
IPsecより楽とは言え、OpenVPNでも構築にはそれなりの稼働を要します。
できることなら、構築側の稼働も削減したい。そんな要望に対応できるのが、Softether VPNです。
Softether VPNであれば、ポチポチGUIで数ステップ設定するだけで、Open VPNが使えてしまう便利なソフトウェアです。
Softether VPNでサクッと設定とユーザー作成を行い、構成ファイルを自動生成して、ログイン情報をauthデータから読み込むように編集し、authデータを作成すればこれで完了です。
後は彼女にOpenVPNクライアントをインストールしてもらい、構成ファイルとauthデータをインポートしてもらいます。
後は彼女側でOpenVPNクライアントの接続開始ボタンをクリックすれば、これでめでたく彼女がこちら側のローカルネットワークへリーチする事ができます。
ここから真面目な話
僕は家に検証用の仮想基盤クラスタ(ESXi、Hyper-V、Linux kvm)を用意しています。
この資源を使えば、サーバー構築に関する検証を一通り行うことが出来ます。
これを彼女が使えるようにするために、VPNサーバーを構築したのでした。
昔から人に技術系のことを教えるのが好きなので、これからゆっくり一緒に勉強していけたらなぁと思います。
教える側もより一層知識が身に付きますので、Win-Winな感じですね。
今年中にSoftetherを使ったOpen VPNサーバーの構築howto記事書きますね。