本文へジャンプします。

複数リージョン・複数オンプレでの IPsec VPN(L3 VPN)

こんにちは。まほろば工房の浅間です。今回からいよいよ応用編です。とはいうものの今回は単に IPsec VPN(L3 VPN) で拠点が多くなった感じの構成の紹介です。今回紹介する構成を絵にするとこんな感じです。

009_01

ニフティクラウドの東西リージョンのプライベート LAN と 2カ所のオンプレがフルメッシュで接続されたような構成ですね。とてもシンプルな構成ですが、個人的にはこういうシンプルなのが一番好きです。あまり複雑にすると不安定になっちゃうような気がして。

今回の例はオンプレが 2カ所ですが、今回の設定を参考にすればオンプレが 3カ所、 4カ所でも同じように設定できると思います。

まずは東日本リージョンの VPN ゲートウェイの設定から始めましょう。

東日本リージョンの VPN ゲートウェイの設定

プライベート LAN と VPN ゲートウェイの作成はいつも通りですね。ファイアウォールのルールもとりあえず西日本リージョンの VPN ゲートウェイのグローバル IP アドレスを保留して定義しておきます。あとはオンプレの YAMAHA RTX1210 のグローバル IP アドレスも許可するよう設定しておきます。

009_02

009_03

009_04

つぎに西日本リージョンの VPN ゲートウェイの設定です。

西日本リージョンの VPN ゲートウェイの設定

こちらもいつもと同じです。プライベート LAN と VPN ゲートウェイを作成しましょう。ファイアウォールには (1) 西日本リージョンのプライベート LAN のアドレス、 (2) 東日本リージョンの VPN ゲートウェイのグローバル IP アドレス、 (3) オンプレの YAMAHA RTX1210 のグローバル IP アドレス x 2 を許可するよう設定します。
009_05

009_06

009_07

西日本の VPN ゲートウェイの作成が完了したら東日本リージョンに戻り VPN コネクションを作成しましょう。

東日本リージョンの VPN ゲートウェイの設定(再)

そのまえにファイアウォールのルールに西日本リージョンの VPN ゲートウェイのグローバル IP アドレスを加えておきます。

009_08

そしていよいよ VPN コネクションの作成です。東日本リージョンの VPN ゲートウェイには以下の 3 つの VPN コネクションを作成する必要があります。

  1. 西日本リージョンの VPN ゲートウェイとの VPN コネクション
  2. 右側の YAMAHA RTX1210 との VPN コネクション
  3. 左側の YAMAHA RTX1210 との VPN コネクション

まずは西日本リージョンの VPN ゲートウェイとの VPN コネクションの作成です。 “東西リージョン間 IPsec VPN(L3 VPN)” と同じ感じです。

009_09

そして 右側の YAMAHA RTX1210 との VPN コネクションの作成です。 “YAMAHA RTX1210 で単一拠点 IPsec VPN(L3 VPN)” と同じ感じです。

009_10

そして左側の YAMAHA RTX1210 との VPN コネクションの作成です。こちらも “YAMAHA RTX1210 で単一拠点 IPsec VPN(L3 VPN)” と同じ感じで作成します。

009_11

西日本リージョンの VPN ゲートウェイも作成しましょう。

西日本リージョンの VPN ゲートウェイの設定(再)

東日本でやったのと同じ感じで設定します。

009_12

009_13

009_14

右側の YAMAHA RTX1210 の設定

さて、ここまでは「いつもとおなじで〜」みたいな感じで説明を省いてこれましたが、じつはこの構成の YAMAHA RTX1210 の設定はいままでと同じというわけにはいきません。というのも、いままでの設定方法ではニフティクラウドさんのコンパネから設定をコピペしていましたけど、じつはコンパネが生成するコマンドはトンネル ID がすべて 1 になっているので、そのままでは 2 つめ以降の設定ではなく 1 つめを上書きしてしまうことになってしまうのです。

ということでコンパネが生成してくれた 2 つめ以降の実行コマンドが、

tunnel select 1
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 1 3600
  ipsec ike duration ike-sa 1 28800
  ipsec ike encryption 1 aes-cbc
  ipsec ike group 1 modp1024
  ipsec ike hash 1 sha
  ipsec ike keepalive use 1 on dpd
  ipsec ike local address 1 192.168.1.1
  ipsec ike pfs 1 on
  ipsec ike pre-shared-key 1 text xxxxxxxx
  ipsec ike remote address 1 198.51.100.123
 tunnel enable 1

のようになっていたら、これを、

tunnel select 2
 ipsec tunnel 102
  ipsec sa policy 102 2 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 2 3600
  ipsec ike duration ike-sa 2 28800
  ipsec ike encryption 2 aes-cbc
  ipsec ike group 2 modp1024
  ipsec ike hash 2 sha
  ipsec ike keepalive use 2 on dpd
  ipsec ike local address 2 192.168.1.1
  ipsec ike pfs 2 on
  ipsec ike pre-shared-key 2 text xxxxxxxx
  ipsec ike remote address 2 198.51.100.123
 tunnel enable 2

のように読み替えなければなりません。

また、一台の RTX1210 から複数の IPsec VPN トンネルを設定する場合、

ipsec ike local id x (自身のネットワークアドレス)
ipsec ike remote id x (相手のネットワークアドレス)

という設定もしないといけないようです。

ということで上記をふまえた右側の YAMAHA RTX1210 の設定は以下のようになります。

tunnel 1 が 東日本リージョンの VPN ゲートウェイとの接続で、 tunnel 2 が西日本リージョンの VPN ゲートウェイとの接続で、 tunnel 3 が左側の YAMAHA RTX1210 との接続になります。

ip route default gateway pp 1
ip route 172.16.1.0/24 gateway tunnel 1
ip route 172.16.2.0/24 gateway tunnel 2
ip route 192.168.2.0/24 gateway tunnel 3
ip lan1 address 192.168.1.1/24
ip lan2 nat descriptor 1
pp select 1
 pppoe use lan2
 pp auth accept pap chap
 pp auth myname xxx@yyy zzz
 ppp lcp mru on 1454
 ppp ipcp ipaddress on
 ppp ipcp msext on
 ppp ccp type none
 ip pp mtu 1454
 ip pp nat descriptor 1
 pp enable 1
tunnel select 1
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 1 3600
  ipsec ike duration ike-sa 1 28800
  ipsec ike encryption 1 aes-cbc
  ipsec ike group 1 modp1024
  ipsec ike hash 1 sha
  ipsec ike keepalive use 1 on dpd
  ipsec ike local address 1 192.168.1.1
  ipsec ike local id 1 192.168.1.0/24
  ipsec ike pfs 1 on
  ipsec ike pre-shared-key 1 text xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  ipsec ike remote address 1 198.51.100.123
  ipsec ike remote id 1 172.16.1.0/24
 tunnel enable 1
tunnel select 2
 ipsec tunnel 102
  ipsec sa policy 102 2 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 2 3600
  ipsec ike duration ike-sa 2 28800
  ipsec ike encryption 2 aes-cbc
  ipsec ike group 2 modp1024
  ipsec ike hash 2 sha
  ipsec ike keepalive use 2 on dpd
  ipsec ike local address 2 192.168.1.1
  ipsec ike local id 2 192.168.1.0/24
  ipsec ike pfs 2 on
  ipsec ike pre-shared-key 2 text xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  ipsec ike remote address 2 198.51.100.234
  ipsec ike remote id 2 172.16.2.0/24
 tunnel enable 2
tunnel select 3
 ipsec tunnel 103
  ipsec sa policy 103 3 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 3 3600
  ipsec ike duration ike-sa 3 28800
  ipsec ike encryption 3 aes-cbc
  ipsec ike group 3 modp1024
  ipsec ike hash 3 sha
  ipsec ike keepalive use 3 on dpd
  ipsec ike local address 3 192.168.1.1
  ipsec ike local id 3 192.168.1.0/24
  ipsec ike pfs 3 on
  ipsec ike pre-shared-key 3 text my_shared_secret
  ipsec ike remote address 3 203.0.113.234
  ipsec ike remote id 3 192.168.2.0/24
 tunnel enable 3
nat descriptor type 1 masquerade
nat descriptor address outer 1 ipcp
nat descriptor address inner 1 auto
nat descriptor masquerade static 1 1 192.168.1.1 udp 500
nat descriptor masquerade static 1 2 192.168.1.1 udp 4500
nat descriptor masquerade static 1 3 192.168.1.1 esp
ipsec auto refresh on
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.1.101-192.168.1.200/24
dns server pp 1
dns private address spoof on

左側の YAMAHA RTX1210 の設定

左側の YAMAHA RTX1210 は右側と同じ感じで設定します。

ip route default gateway pp 1
ip route 172.16.1.0/24 gateway tunnel 1
ip route 172.16.2.0/24 gateway tunnel 2
ip route 192.168.1.0/24 gateway tunnel 3
ip lan1 address 192.168.2.1/24
ip lan2 nat descriptor 1
pp select 1
 pppoe use lan2
 pp auth accept pap chap
 pp auth myname iii@jjj kkk
 ppp lcp mru on 1454
 ppp ipcp ipaddress on
 ppp ipcp msext on
 ppp ccp type none
 ip pp mtu 1454
 ip pp nat descriptor 1
 pp enable 1
tunnel select 1
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 1 3600
  ipsec ike duration ike-sa 1 28800
  ipsec ike encryption 1 aes-cbc
  ipsec ike group 1 modp1024
  ipsec ike hash 1 sha
  ipsec ike keepalive use 1 on dpd
  ipsec ike local address 1 192.168.2.1
  ipsec ike local id 1 192.168.2.0/24
  ipsec ike pfs 1 on
  ipsec ike pre-shared-key 1 text xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  ipsec ike remote address 1 198.51.100.123
  ipsec ike remote id 1 172.16.1.0/24
 tunnel enable 1
tunnel select 2
 ipsec tunnel 102
  ipsec sa policy 102 2 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 2 3600
  ipsec ike duration ike-sa 2 28800
  ipsec ike encryption 2 aes-cbc
  ipsec ike group 2 modp1024
  ipsec ike hash 2 sha
  ipsec ike keepalive use 2 on dpd
  ipsec ike local address 2 192.168.2.1
  ipsec ike local id 2 192.168.2.0/24
  ipsec ike pfs 2 on
  ipsec ike pre-shared-key 2 text xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  ipsec ike remote address 2 198.51.100.234
  ipsec ike remote id 2 172.16.2.0/24
 tunnel enable 2
tunnel select 3
 ipsec tunnel 103
  ipsec sa policy 103 3 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 3 3600
  ipsec ike duration ike-sa 3 28800
  ipsec ike encryption 3 aes-cbc
  ipsec ike group 3 modp1024
  ipsec ike hash 3 sha
  ipsec ike keepalive use 3 on dpd
  ipsec ike local address 3 192.168.2.1
  ipsec ike local id 3 192.168.2.0/24
  ipsec ike pfs 3 on
  ipsec ike pre-shared-key 3 text my_shared_secret
  ipsec ike remote address 3 203.0.113.123
  ipsec ike remote id 3 192.168.1.0/24
 tunnel enable 3
nat descriptor type 1 masquerade
nat descriptor address outer 1 ipcp
nat descriptor address inner 1 auto
nat descriptor masquerade static 1 1 192.168.2.1 udp 500
nat descriptor masquerade static 1 2 192.168.2.1 udp 4500
nat descriptor masquerade static 1 3 192.168.2.1 esp
ipsec auto refresh on
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.2.101-192.168.2.200/24
dns server pp 1
dns private address spoof on

まとめ

さすがに接続する拠点が増えると大分ごちゃごちゃしてしまいました。この構成ではフルメッシュで IPsec VPN(L3 VPN) 接続をするため、オンプレ間通信が多いような利用方法の場合に、ニフティクラウドを経由する余計なトラフィックが発生せず良いかもしれません。逆にフルメッシュにしなければならないので、オンプレ拠点の数が多くなると設定が大変になってしまいます。

オンプレからは東西リージョンのどちらへも接続することができるので、東西リージョンでサーバを分散配置することで東西リージョンのどちらかに障害が起きたようなときでも、業務に与える影響を小さくすることができるのではないかと思います。たとえばニフティクラウドさんでは Windows サーバも動かすことができるようですが、東西に 1 台ずつ Active Directory サーバを構築しておいて耐障害性を高めるサーバ運用なんてのもできるのではないかと思います。

次回は IPsec VPN(L3 VPN) と L2TPv3/IPsec VPN(L2 VPN) を組み合わせて東西リージョンを利用した耐障害性の高いネットワーク構築の例を紹介したいと思います。

ニフティクラウド 導入相談窓口
ニフティクラウド 無料セミナー

閉じる

閉じる

クラウドブログ編集部

クラウドブログ編集部

ニフティクラウド ユーザーブログ編集部のアカウントです。 編集部からのお知らせや、レギュラーライター以外のゲストによる寄稿記事を掲載していきます。

浜中 慶

浜中 慶

1980年、神奈川県生まれ。2003年ニフティ入社。 ポータルサイト開発を中心に、音楽配信サービス、CGMサービスなど様々なプロジェクトに企画/デザイン/システム担当として参加。現在は@niftyのポータルサービス向けコンテンツ管理システムの企画/開発/運用を担当。

吉田 雄哉

吉田 雄哉

株式会社co-meetingの創業メンバー。「取締役&External- facing Technologist」と名乗り新しいIT技術を広く伝える活動とWebアプリケーション開発を行う毎日。パッケージベンダーでのSaaS立上げ・製造業の情報システム部門で企画やPM・受託開発と従事してきたため、ベンダーサイドとユーザサイド の両方の視点を持ち合わせる。

石田 健亮

石田 健亮

株式会社ドリーム・アーツで小売事業者向けSaaS「Shopらん」を企画、開発。メインの仕事はプログラマーだがサーバー管理や営業もこなすユーティリティプレイヤー。最近好きな事はパフォーマンスチューニング。特に並列化プログラミングがマイブーム。キライなことはデータセンターでの作業。騒音と乾燥が弱点。ニフティクラウドでデータセンターに行く必要が無くなったことが本当の利点だ と思っている。

五月女 雄一

五月女 雄一

ニフティでは「インフラを守る簡単な様で奥が深いお仕事」をしています。 夢はインフラの気持ちが読めるエンジニアになること。

わたなべ かずひろ

わたなべ かずひろ

専門学校卒業後、ソフトウェア開発会社で電力系統制御システムの開発に従事。その後、CD-ROM等マルチメディア系PCソフトの開発を経て、1998年フリーランスに。 2000年8月に株式会社イーツーの設立に参画。携帯を含む様々なWeb系のシステム開発に携わる。現在はiPhone/Androidアプリなどの開発も手がけている。

市角

市角

ニフティクラウドのコントロールパネル設計・開発をメインに、たまにインフラの運用やお手伝いもやっていたりします。コントロールパネルや新機能の活用方法、アイデアなどを中心に書いていく予定です。

仲山 昌宏

仲山 昌宏

歌って踊れるインフラエンジニア兼、PHPもRubyもJavaも書くPerl使い。 物理サーバの運用に飽きて、フルラックに格安サーバ詰めて自宅プライベートクラウドを構築中。 今年は個人的には分散処理を攻めていきます。

猪飼 賢広

猪飼 賢広

1984年、愛知県名古屋市生まれ。大学は福島県にある某大学。2008年ニフティに入社。 開発系部署に配属後、主に各種テーマサイト開発のシステム面調整、開発進行管理役などとして参加。 現在もPC・ガラケーサイトの開発まわりを担当。インフラまわりを触る案件にも携わっており、日々修行中。 好きな芸人はなかやまきんに君とレイザーラモンRG。

久江 裕之

久江 裕之

ニフティクラウドのインフラ運用、OS提供の仕事をしています。 新しいOSやイメージが出る時にこのブログでご紹介いたします。入社5年目。一流のインフラエンジニアを目指して日々勉強中。

竹内 豪

竹内 豪

ニフティクラウド エンジニア

山口

山口

ニフティクラウドの基盤設計、新サービス/アライアンス/インフラ企画、その他雑用全般を担当しています。 クラウドに欲しい機能や、こんなふうに使ってほしいという想いが共有できれば良いですね。

芳中 隆幸

芳中 隆幸

ニフティクラウドの開発、運用を担当しています。

酒井 浩平

酒井 浩平

ニフティクラウドの中にいます。 ネットワークまわりの運用・開発や自動化などに取り組んでいます。 すべてのエンジニアを幸せにすることを目指しています。

higebu

higebu

ニフティクラウド IaaSのエンジニアです。 ネットワーク、DRサービス with VMware vCloud® Air™ Technology辺りの担当をしています。

武田

武田

ニフティクラウドの開発・運用を担当しています。 各種機能の内容についてなどで執筆させていただく予定です。

森藤 大地

森藤 大地

データに関する仕事が好きです。

宮原徹

宮原徹

日本仮想化技術株式会社 代表取締役社長兼CEO。仮想化技術に関するコンサルタントとして長年活動しており、特にベンチマークテストによる性能評価を得意としている。

荒谷翔

荒谷翔

株式会社はてなでMackerelのセールスデベロッパーとして勤務しています

東條 望

東條 望

2014年にニフティへ中途入社。 入社後から現在まで、ニフティクラウドのサービス企画・開発を担当しています。 各サービスの紹介を執筆させていただく予定です。