AWS

8800円の格安VPNルータで家とAWS間をサイト間VPN(IPSec)で接続する

はじめに

AWSと拠点を結ぶためにはVPNかDirect Connectによる接続が必要となります。しかし、少数の拠点ではDirect Connecはコスパが悪いです。また、個人でVPN用にルータを購入するとYAMAHA RTX1210の現行機種だと10万を超えたりと高価です。家などのブランチ拠点からAWSへ、とりあえず安く接続したいんだけどという人は多いと思います。

そこで、Amazonで購入できるものでVPNルーターでIPSecで接続できる最も安いルータで接続する方法を紹介します。。記事を書いているときの8800円で購入しましたが、最安値は8140円でした。

TP-Link Omada ギガビット マルチWAN VPNルーター ER605

本記事はAzure用の記事をAWS用に変更したものです。

8800円の格安VPNルータで家とAzure間をサイト対サイトVPN(IPSec)で接続する - 技術的な何か。
8800円の格安VPNルータで家とAzure間をサイト対サイトVPN(IPSec)で接続する - 技術的な何か。

はじめに Azureと拠点を結ぶためにはVPNかExpress Routeによる接続が必要となります。しかし、少数の拠点ではExpress Routeはコスパが悪いです。また、個人でVPN用にルータを

level69.net

構成

我が家の構成です。

よくみかける家庭での構成です。特殊な機器などは利用していません。

auひかりのホームゲートウェイの後ろにVPNルータ ER605を追加で導入するだけです。

注意:NTTの回線では試していないため接続できるかはわかりません。v6プラスを利用している場合は接続できないらしいが・・・

大きく3つの作業があります。家環境の設定、AWS環境の構築、VPNの設定です。

順を追って解説してきます。

家環境の設定

家環境構でER605を利用してVPN環境構築するにあたり、IP設定、DHCPサーバーの設定を変える必要があります。

セグメントはWAN側とLAN側で分かれます。各機器はIP固定に設定します。また、クライアントへIP配布するDHCPサーバーはER605に任せます。これは無線APに任せても問題ありません。

下記の構成では無線APを含んでいますが、IPの固定方法、接続方法は機種によって異なるため個別にご確認してください。

WANポートにはauひかりのLANポートと接続します。LANポートには無線APやPCを接続します。

auひかり ホームゲートウェイの設定

ホームゲートウェイは規定の設定で192.168.0.1が割り当たっているため、あえて設定する必要はなくデフォルトのままで問題ありません。

好みでDHCPサーバーの機能をOFFにしてください。

ただし、設定する場合はクライアントに固定IP(192.168.0.0/24)でホームゲートウェイに接続する必要があります。

DHCPサーバー設定を開きます。

DHCPサーバ機能をOFFにします(私はONのままです)

ER605の設定

基本的な初期設定(パスワード設定など)は終了しているものとします。

AWSに接続する場合にはER605は最新のファームウェアである必要があります。必須ではありませんが、IKEv2に対応させるためです。たぶんAmazonで販売されているものはファームウェアが古いです。また、ハードウェアバージョンはv1だと思います。

ファームウェアをアップデートするにもER605のIPをWAN側を192.168.0.2/24、LAN側を192.168.1.253/24で固定します。またWAN側のIPアドレスも設定します。IPアドレスは環境に合わせて読み替えてください。

ER605のデフォルトのIPアドレスは192.168.0.1です。そのため最初の設定はauひかりホームゲートウェイに接続せずに設定します。LANポートにクライアント、無線APを接続してブラウザから192.168.0.1を開きます。接続できない場合は、クライアントに固定IPを設定します。

最初にLNAを開き設定を変更します。

  • IP Address : 192.168.1.253
  • Subnet Mask : 255.255.255.0
  • DHCP Server : Enable
    • Startting IP Address : 192.168.1.100
    • Ending IP Address : 192.168.1.199

 

これでOKを押して設定を反映します。設定変更後に192.168.1.253をブラウザで開き設定できることを確認します。クライアントのIPを固定している場合はDHCPに変更する必要があります。

次にWAN側のIPアドレスを設定します。

[Network]→[WAN]を開き[WAN]のタブを開きます。以下のように設定します。

  • Connection Type:Static IP
  • IP Address:192.168.0.2
  • Subnet Mask:255.255.255.0
  • Default Gateway:192.168.0.1
  • Primary DNS:192.168.0.1

System Statusで問題なくLink Upしていることを確認します。

 

次にファームウェアのアップデートを行います。ファームがER605(UN)_V1_1.2.0 Build 20220114以上でない場合にはIKEv2での接続が行えません。

ER605(UN)_V1_1.1.1_20210723 → ER605(UN)_V1_1.2.0 Build 20220114 にアップデートします。すでに最新の場合はこの作業は必要ありません。

下記よりファームウェア(ER605(UN)_V1_1.2.0 Build 20220114)をダウンロードし解凍します。

のコンテンツ ER605 | TP-Link 日本
のコンテンツ ER605 | TP-Link 日本

TP Link - Download Center Detail

www.tp-link.com

[System Tools] → [Management] → [Firmware Upgrade]を開き解凍したbinファイルを指定し、Upgradeを押します。

アップデート後のファームウェアのバージョンは同じ画面で確認できます。

以上で家環境の準備は整いました。

次にAWS環境を構築していきます。

AWS環境の構築

事前にVPCは構築されていることが前提です。

VPCの作成は基本的な作業として割愛します。

AWS環境で必要なものは以下になります。最短ルートで設定を行うため、各サービスを個別に作成していません。仮想ネットワークゲートウェイを作成すると自動で作成されるものあります。

  • VPC
  • カスタマーゲートウェイ
  • 仮想プライベートゲートウェイ
  • サイト間のVPN接続
  • ルートテーブルの設定

また、接続確認を行うためEC2を立ち上げます。

作業はVPCの仮想プライベートネットワーク (VPN)のメニューにあります。

カスタマーゲートウェイの作成

カスタマーゲートウェイを作成します。

  • IPアドレス:家環境のIPアドレスです。IPアドレスを確認できるサイトで調べます (https://www.cman.jp/network/support/go_access.cgi)、auひかりの場合には固定IPでないことも注意が必要です。

カスタマーゲートウェイの作成は完了です。

次に仮想プライベートゲートウェイの作成を行います。

仮想プライベートゲートウェイの作成

仮想プライベートゲートウェイを作成します。

設定する項目はありません。

作成後にVPCをアタッチします。

アタッチするVPC(EC2を配置する場所)を指定します。

以上で仮想プライベートゲートウェイの作成は完了です。

次にサイト間のVPN接続を作成します。

サイト間のVPN接続を作成

  • ターゲットゲートウェイのタイプ:仮想プライベートゲートウェイ
  • 仮想プライベートゲートウェイ:上記で作成したもの
  • カスタマーゲートウェイ:上記で作成したもの
  • ルーティングオプション:静的
  • 静的IPプレフィックス:192.168.1.0/24(家環境のIPアドレス)

 

トンネル1オプションを開き、事前共有キーを設定します。

以上でVPN接続の設定は完了です。

作成後に接続先のグローバルIPアドレスを確認します。

次にルートテーブルの設定を行います。

ルートテーブルの設定

VPCのルートテーブルには家環境は自動的に反映されません。手動で追加します。

  • 送信先:192.168.1.0/24
  • ターゲット:仮想プライベートゲートウェイを指定する

ルートテーブルの設定は完了です。

次にER605のVPNの設定です。

VPNの設定

ER605の管理画面から[VPN]→[IPSec]を開きます。

[Add]で追加します。

  • Policy Name:任意
  • Mode:LAN-to-LAN
  • Remote Gateway:サイト間のVPN接続のパブリックIPアドレス(上記で確認したもの)
  • WAN:WAN
  • Local Subnet:192.168.1.0/24(LAN側のIPアドレス範囲)
  • Remote Subnet:172.16.0.0/16(VPCに作成したIPアドレス範囲)
  • Pre-shared Key:上記で設定した共通キー
  • Status:Enable(設定時に有効化)
  • Phase-1 Settings
    • IKE Protocol Version:IKEv2(ファームウェアが古いと表示されません)

他は設定変更ありません。

保存するとVPN接続が行われるので[IPSec SA]のタブからセッションを確認します。

AWSからも確認できます。

以上で家環境からAWSにVPNで接続することが出来ます。

EC2への接続確認とスループット

EC2への接続確認を行い、VPN経由で接続できることを確認します。

UbuntuのEC2は事前に立ち上げておきます。例ではプライベートIPアドレス:172.16.0.72が振られています。

また、セキュリティグループで192.168.1.0/24を許可する必要があります。

下記は、WSLからSSHで接続しています。問題なく接続できることが分かります。

次にスループットを確認したいと思います。下記の公式ホームページではIPSec VPNのスループットは41.5Mbpsを記載されています。

TL-R605 | SafeStream ギガビット マルチWAN VPNルーター | TP-Link 日本
TL-R605 | SafeStream ギガビット マルチWAN VPNルーター | TP-Link 日本

TL-R605は、WAN/LANポートの両方でギガビットイーサネット接続に対応しており、複数のVPNプロトコル・高セキュリティ・高性能のVPN機能を備えているため、従業員のリモート接続も、まるでメイン ...

www.tp-link.com

スループットを図るためにiperfを利用します。簡単にスループットを測定で来るので便利です。

EC2側、クライアント側(WSL)にインストールします。

$ sudo apt update
$ sudo apt install iperf3

測定していきます。

EC2側でiperfを待ち受けます。

$ iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------

クライアント側に測定します。

# iperf3 -c 172.16.0.72
Connecting to host 172.16.0.72, port 5201
[ 4] local 172.19.175.86 port 45014 connected to 172.16.0.72 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 4.69 MBytes 39.3 Mbits/sec 0 373 KBytes
[ 4] 1.00-2.00 sec 4.33 MBytes 36.3 Mbits/sec 0 564 KBytes
[ 4] 2.00-3.00 sec 3.92 MBytes 32.9 Mbits/sec 1 592 KBytes
[ 4] 3.00-4.00 sec 3.80 MBytes 31.9 Mbits/sec 0 596 KBytes
[ 4] 4.00-5.00 sec 3.86 MBytes 32.4 Mbits/sec 0 602 KBytes
[ 4] 5.00-6.00 sec 3.80 MBytes 31.9 Mbits/sec 0 616 KBytes
[ 4] 6.00-7.00 sec 2.81 MBytes 23.5 Mbits/sec 0 643 KBytes
[ 4] 7.00-8.00 sec 2.34 MBytes 19.6 Mbits/sec 0 682 KBytes
[ 4] 8.00-9.00 sec 2.52 MBytes 21.1 Mbits/sec 0 743 KBytes
[ 4] 9.00-10.00 sec 2.63 MBytes 22.1 Mbits/sec 0 821 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 34.7 MBytes 29.1 Mbits/sec 1 sender
[ 4] 0.00-10.00 sec 33.2 MBytes 27.8 Mbits/sec receiver

iperf Done.

環境に左右されると思いますが、公表値にくらべ極端に悪い数値ではないと思います。十分実用に耐えられる速度だと思います。

まとめ

AWSと家の環境を、格安なルータで1万円でかからずにVPNで接続する方法を紹介しました。安定性、スループットをあまり求めない拠点をIPSecで接続したい場合に利用できると考えています。設定も、簡単で特にハマることもなく設定が行えます。AWSの検証をちょっと行いたい人にも好いと思います。ただし、回線によっては接続できないなど限定的な利用になると思います。しかし非常も財布に優しいので試してみてはいかがでしょうか。

 

-AWS
-