LoginSignup
1
0

More than 3 years have passed since last update.

AWS Site to Site VPN with NAT-T and IKEv2

Last updated at Posted at 2020-06-21

ルータ配下のRTX830でIKEv2トンネルのVPN接続

この記事について

NATトラバーサル環境のCustomer Gateways(CGW)からIKEv2で接続する構成を構築した際、思いのほか情報が少なかったので作業の内容をまとめました。

今回の構成図

IKEv2-S2S-VPN.png

  • CGWはNAPTルータ配下へ設置し、ローカルIPアドレスを採番
  • オンプレ側拠点のインターネット接続ルータはLAN側からWAN側へステートフル通信が可能
  • Tunnel1 はIKEv2、Tunnel2 はIKEv1で接続
  • AWS Virtual Gateway(VGW)とCGWの経路交換はBGPで行い、CGWから広報された経路はVPCのルーティングテーブルへプロパゲート

使用機器

  • RTX830

RTX830設定

Tunnel1 IKEv2

Tunnel1-IKEv2
tunnel select 1
 ipsec tunnel 201
  ipsec sa policy 201 1 esp aes256-cbc sha256-hmac
  ipsec ike version 1 2
  ipsec ike duration ipsec-sa 1 3600
  ipsec ike duration isakmp-sa 1 28800
  ipsec ike encryption 1 aes256-cbc
  ipsec ike group 1 modp1536
  ipsec ike hash 1 sha256
 ipsec ike keepalive log 1 on
  ipsec ike keepalive use 1 on rfc4306 10 3
  ipsec ike local name 1 "CGW_Local_Ip-Address" ipv4-addr
  ipsec ike nat-traversal 1 on type=2
  ipsec ike pfs 1 on
  ipsec ike message-id-control 1 on
  ipsec ike pre-shared-key 1 text "Tunnel1_Pre-Shared_Key"
  ipsec ike remote name 1 "Tunnel1_VGW-IP-Address" ipv4-addr
  ipsec ike negotiation receive 1 off
  ipsec auto refresh 1 on
 ipsec tunnel outer df-bit clear
 ip tunnel address 169.254.216.206/30
 ip tunnel remote address 169.254.216.205
 ip tunnel tcp mss limit auto
 tunnel enable 1

Tunnel2 IKEv1

Tunnel2-IKEv1
tunnel select 2
 ipsec tunnel 202
  ipsec sa policy 202 2 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 2 3600
  ipsec ike encryption 2 aes-cbc
  ipsec ike group 2 modp1024
  ipsec ike hash 2 sha
  ipsec ike keepalive use 2 on dpd 10 3
  ipsec ike local address 2 10.1.0.32
  ipsec ike local id 2 10.1.0.32
  ipsec ike nat-traversal 2 on type=2
  ipsec ike pfs 2 on
  ipsec ike pre-shared-key 2 text "Tunnel2_Pre-Shared_Key"
  ipsec ike remote address 2 "Tunnel2_VGW-IP-Address"
 ipsec tunnel outer df-bit clear
 ip tunnel address 169.254.168.154/30
 ip tunnel remote address 169.254.168.153
 ip tunnel tcp mss limit 1379
 tunnel enable 2

NATトラバーサル設定(IKEv2、IKEv1 共通)

  • ipsec ike nat-traversal "tunnel ID" on type=2
    • RTXをナットトラバーサルでVGWへVPN接続する際の設定

IKEv2設定

  • ipsec ike version 1 2
    • IKEのバージョンをTunnel1で「2」に指定
  • ipsec ike local name 1 "CGW_Local_Ip-Address" ipv4-addr
    • v1は「ike local address」で指定するがv2は「ike local name」で設定
  • ipsec ike negotiation receive 1 off
    • 鍵交換の始動パケット受信をoffに設定、VGWからの鍵交換始動パケットを受け取らない
    • VGWをレスポンダ、RTXをイニシエータとして設定
  • ipsec ike keepalive use 1 on rfc4306 10 3
    • AMCからダウンロードできる設定例に記載されるDead Peer Detection(DPD)でのトンネルの通信断検知はIKEv2では自動再接続しないため「rfc4306」を指定
  • ipsec ike keepalive log 1 on
    • IKEキープアライブのログ出力をONに設定
  • ipsec ike message-id-control 1 on
    • RTXからIKEv2 のリクエストメッセージを送信するときのメッセージ ID 管理方法を設定

AWS Management Console(AMC)からの接続確認

Tunnel1-2_Status-Up.png
Tunnel1-2_Option.png

まとめ

IKEv2とIKEv1の接続で設定方法の異なる箇所がありますが、NATトラバーサル環境でISAKMP、IPSec 両方のSAが確立され、正常なBGP経路交換、およびAWSとオンプレ間のデータ通信が確認できました。

参考URL

IKE キープアライブ機能の設定
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/ipsec/ipsec_ike_keepalive_use.html
IPsec DPD
http://www.rtpro.yamaha.co.jp/RT/docs/ipsec/dpd.html
鍵交換の始動パケットを受信するか否かの設定
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/ipsec/ipsec_ike_negotiation_receive.html
Microsoft AzureとのIPsec接続(IKEv2) 設定例
http://www.rtpro.yamaha.co.jp/RT/docs/windows_azure/index_ikev2.html
IKEv2 VPN トンネルネゴシエーションが AWS VPN で失敗する理由を教えてください
https://aws.amazon.com/jp/premiumsupport/knowledge-center/vpc-enable-ikev2-vpn-tunnel-negotiation/
18.44 IKE のメッセージ ID 管理の設定
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/ipsec/ipsec_ike_message-id-control.html

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0