はじめに
OCI に VPN(IPsec) 接続したいという要望がありました。公式のサイトに記載の無かった YAMAHA RTX810 で接続できましたので、ここに手順を示します。
・公式のサイト
Title: Oracle Cloud InfrastructureとVPN(IPsec)接続するルーターの設定 : コマンド設定
URL: https://network.yamaha.com/setting/router_firewall/cloud/oracle_cloud/setup_rt
◆抜粋
本機能の対応機種は、RTX5000、RTX3510、RTX3500、RTX1300、RTX1220、RTX1210、RTX830、NVR700Wです。
前置き
OCI 側の設定の記載はありません。OCI 側の設定は完了していることが前提となります。
OCI 側で必要な情報は [ネットワーキング] - [顧客接続性] - [サイト間VPN] の「IPsecの接続情報」から、トンネル1と2の【Oracle VPN IPアドレス】および各トンネルの【共有シークレット】となります。
ルータ(YAMAHA RTX810)は VPN の接続設定のみの記載となります。
構成例
項目 | 設定内容 | 備考 |
---|---|---|
拠点 CIDR | 192.168.100.0/24 | |
OCI VCN CIDR | 10.0.0.0/16 | |
拠点 VPN 装置のIPアドレス | 203.0.113.130/28 | |
OCI VPN IP アドレス (トンネル1) | 198.51.100.77 | |
OCI VPN IP アドレス (トンネル2) | 198.51.100.88 |
設定手順
1. NATの設定
ip lan2 nat descriptor 200
nat descriptor type 200 masquerade
nat descriptor address outer 200 primary
nat descriptor masquerade static 200 1 192.168.100.1 udp 500
nat descriptor masquerade static 200 2 192.168.100.1 esp
nat descriptor masquerade static 200 3 192.168.100.1 udp 4500
2. トンネルインタフェースの設定
tunnel select 1
ipsec tunnel 1
3. SAポリシーを定義
ipsec sa policy 1 1 esp aes256-cbc sha-hmac
4. IKEの暗号アルゴリズム、ハッシュアルゴリズム、グループ、寿命の設定
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
5. キープアライブの設定
ipsec ike keepalive log 1 off
ipsec ike keepalive use 1 on dpd 5 4
注意
キープアライブの方式ですが公式のサイトにある heartbeat ではトンネルのアップダウンが頻繁に繰り返されました(追記参照)。DPD(Dead Peer Detection) にしております。
6. OCI で取得した【共有シークレット】の設定
ipsec ike pre-shared-key 1 text 7BxgJNkZ0bBZZ5yIH7wVsypRUm9n9CnLhVgsmog7ztF94NzOHyy9Tqdacm5
警告
このキーは記事掲載用に ChatGPT にて生成したランダムな文字列です。実際に使われているものではありません。
7. ルータ(YAMAHA RTX810)側のグローバル IP アドレスを設定
ipsec ike local address 1 203.0.113.130
ipsec ike local id 1 203.0.113.128/28
参考
この IP アドレス(203.0.113.128/28)は、RFC 5737 によりドキュメンテーション目的で予約されています。この IP アドレスを使用して公開情報を作成しても、他のネットワークに影響を与えることは無いため記事掲載用に使用しています。
8. OCI で取得した【Oracle VPN IPアドレス】を設定
ipsec ike remote address 1 198.51.100.77
ipsec ike remote id 1 192.168.100.0/24
参考
この IP アドレス(198.51.100.77)は、RFC 5737 によりドキュメンテーション目的で予約されています。この IP アドレスを使用して公開情報を作成しても、他のネットワークに影響を与えることは無いため記事掲載用に使用しています。
9. IPsec NAT トラバーサルを利用するための設定
ipsec ike nat-traversal 1 on
10. PFS を用いるか否かの設定
ipsec ike pfs 1 on
11. TCP セッションの MSS 制限の設定
ip tunnel tcp mss limit auto
12. トンネルインターフェースを有効化
tunnel enable 1
13. 拠点 VPN 装置側から IKE を開始する設定
ipsec auto refresh on
14. トンネル2の設定
tunnel select 2
ipsec tunnel 2
ipsec sa policy 2 2 esp aes256-cbc sha-hmac
ipsec ike duration ipsec-sa 2 3600
ipsec ike duration isakmp-sa 2 28800
ipsec ike encryption 2 aes256-cbc
ipsec ike group 2 modp1536
ipsec ike hash 2 sha256
ipsec ike keepalive log 2 off
ipsec ike keepalive use 2 on dpd 5 4
ipsec ike pre-shared-key 2 text KakcHSJob0jy4XMZZP2yIH7wVsypRUm9n9CnihVgsmog7ztF94NzOHyy9Tq
ipsec ike local address 2 203.0.113.130
ipsec ike local id 2 203.0.113.128/28
ipsec ike remote address 2 198.51.100.88
ipsec ike remote id 2 192.168.100.0/24
ipsec ike nat-traversal 2 on
ipsec ike pfs 2 on
ip tunnel tcp mss limit auto
tunnel enable 2
15. ゲートウェイの設定
ip route 10.0.0.0/16 gateway tunnel 1 hide gateway tunnel 2 hide
注意
この IP アドレス(10.0.0.0/16) は OCI の VCN の【IPv4 CIDRブロック】です。
ルータ(YAMAHA RTX810)の接続画面
終わり
設定は以上となります。
追記
(2023/12/28)
・キープアライブの設定を修正しました。
ipsec ike keepalive use 1 on heartbeat 10 4
ipsec ike keepalive use 1 on dpd 5 4
heartbeat を設定した場合、トンネルのアップダウンが頻繁に繰り返されました(show log.txt 参照)。YAMAHA RTX810 の場合は DPD(RFC3706) を使用した方が良さそうです。
[IKE] heartbeat: dead peer detection SA[1] 198.51.100.77
[IKE] initiate ISAKMP phase to 198.51.100.77 (local address 203.0.113.130)
[IKE] initiate informational exchange (delete)
IP Tunnel[1] Down
[IKE] initiate IPsec phase to 198.51.100.77
IP Tunnel[1] Up
[IKE] initiate informational exchange (delete)
参考
キープアライブの方式としては、heartbeat、ICMP Echo、DPD(RFC3706) の 3 種類から選ぶことができます。
追記
(2024/06/21)
本記事は「IPoE 接続」で検証したものでした。
「PPPoE 接続」で実施しようとしたところ、設定が足りていませんでした。更新致しますのでしばらくお待ち下さい。
(2024/10/28)
上記の更新はまだです(忘れていました)。
微修正を行いました。