1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【OCI】2つの拠点とOCI間でVPN接続、OCI経由で拠点間通信を試してみた

Last updated at Posted at 2021-12-03

概要

オンプレミス拠点とOCI間をVPN接続する構成において、オンプレミス拠点が複数存在することは珍しくない。
通信要件として各オンプレミス拠点とOCI間の通信のみが存在する場合は問題ないが
オンプレミス拠点間の通信をOCI経由で行いたい場合はOCIの標準機能では実現が不可能である。
理由はOCIの仕様上(厳密にいうとDRGの仕様)、拠点間通信のためのルーティングを行えないためである。

(参考資料)
[動的ルーティング・ゲートウェイ(DRG)][1]
[1]:https://docs.oracle.com/ja-jp/iaas/Content/Network/Tasks/managingDRGs.htm
※「ルート伝播の制限事項」ご参照

そこでOCI上にルータを役割をしてくれる中継サーバを配置、
そちらの中継サーバを経由して拠点間通信が行えるか試してみることにした。

検証構成

image.png

検証シナリオ

・疑似オンプレミス拠点を用意するためにNEC IX2105×2台をVPNルータとして構築、
 異なるインターネット回線経由でOCIとIPSec接続
・類似オンプレミス拠点のネットワークアドレスを上記検証構成の通りに定義、
 各ネットワークには疎通確認用のTEST PC(OS:Windows)を用意
・VCN上に仮想マシンを配置、OS(Oracle Linux)のルーティング機能を有効にし
 類似オンプレミス拠点間通信の中継が可能な状態にする
・検証構成の動作確認としてTEST PC1とTEST PC2間でpingによる疎通確認を行う

ステータス確認

(中継サーバ)
・ルーティングテーブル確認
・TEST PC1(10.0.0.100)及びTEST PC2(10.100.0.100)宛のping疎通確認
test-vm1-log1(edit).png

・パケット転送機能のステータス確認
net.ipv4.ip_forward = 1になっていればONの状態
ステータスが1ではなく0になっている場合は修正が必要
test-vm1-log2(edit).png

(CPE1)
ルーティングテーブル確認
OCI側からadvertiseされた0.0.0.0/0と172.16.1.0/24を受信できている

CPE1(config)# show ip route
IP Routing Table - 7 entries, 3 hidden, 2038 frees
Entries: 4 Connected, 1 Static, 0 RIP, 0 OSPF, 2 BGP
Codes: C - Connected, S - Static, R - RIP, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, B - BGP
       * - Candidate default, s - Summary
Timers: Age
B*   0.0.0.0/0 [20/0] via 10.1.255.102, Tunnel0.0, 0:00:22
     10.0.0.0/8 is subnetted, 3 subnets
C      10.0.0.0/24 [0/1] is directly connected, GigaEthernet1.0, 0:01:11
C      10.1.255.100/30 [0/1] is directly connected, Tunnel0.0, 0:03:01
C      10.1.255.104/30 [0/1] is directly connected, Tunnel1.0, 0:03:00
S    140.204.0.0/16 [1/1] via 172.32.0.1, GigaEthernet0.0, 0:03:02
     172.16.0.0/16 is subnetted, 1 subnets
B      172.16.1.0/24 [20/0] via 10.1.255.102, Tunnel0.0, 0:00:23
     172.32.0.0/16 is subnetted, 1 subnets
C      172.32.0.0/24 [0/1] is directly connected, GigaEthernet0.0, 0:03:03
CPE1(config)# 

(CPE2)
ルーティングテーブル確認
OCI側からadvertiseされた0.0.0.0/0と172.16.1.0/24を受信できている


CPE2(config)# show ip route
IP Routing Table - 7 entries, 2 hidden, 2039 frees
Entries: 4 Connected, 1 Static, 0 RIP, 0 OSPF, 2 BGP
Codes: C - Connected, S - Static, R - RIP, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, B - BGP
       * - Candidate default, s - Summary
Timers: Age
B*   0.0.0.0/0 [20/0] via 10.1.255.102, Tunnel0.0, 0:35:24
     10.0.0.0/8 is subnetted, 3 subnets
C      10.1.255.100/30 [0/1] is directly connected, Tunnel0.0, 0:57:15
C      10.1.255.104/30 [0/1] is directly connected, Tunnel1.0, 0:57:14
C      10.100.0.0/24 [0/1] is directly connected, GigaEthernet1.0, 0:55:59
S    140.204.0.0/16 [1/1] via 192.168.255.1, GigaEthernet0.0, 0:57:22
     172.16.0.0/16 is subnetted, 1 subnets
B      172.16.1.0/24 [20/0] via 10.1.255.102, Tunnel0.0, 0:45:50
C    192.168.255.0/24 [0/1] is directly connected, GigaEthernet0.0, 0:57:22
CPE2(config)# 

(TEST PC1)
TEST PC2宛のping疎通OK
cmd_10_0_0_100(TESTPC1).png

(TEST PC2)
TEST PC1宛のping疎通OK
cmd_10.100.0.100(TESTPC2).png

感想など

・DRGではオンプレミス側にあるネットワーク間通信を中継してくれない仕様はわかっていたので
中継サーバをおいてルーティングさせたら実現できるのでは?という発想から検証を実施してみた
ところあっさり成功したのでちょっと嬉しかった。
・とりあえず動作確認の目的だったため中継サーバのルーティングはOracle Linuxの標準機能を
利用したがもし本番環境用に利用を検証する際はFortigate等の有償の仮想アプライアンスの利用も
考慮したほうがいいと思った(動作保証、サポート等の観点から)。
・本文章は個人で検証した内容の記録であり、検証方法及び結果を保証するものではないことを
あらかじめご了承・ご理解いただけますようお願い致します。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?