はじめに
本ブログでは、OCI(Oracle Cloud Infrastructure)の学習内容を体系立てて整理するために、次の2種類の記事を扱います。
- 知識ノート(N-xx):概念、設計の考え方、判断基準を整理します。
- 検証(L-xx):手順、設定値、つまずきポイントを再現可能な形で記録します。
ブログの全体像については別記事で整理します。
本記事は 知識ノート(N-04) として、OCIネットワーク設計で必ず登場する
IGW / NAT Gateway / Service Gateway の違い を整理します。
これらはすべて VCNから外部へ通信するための出口(Gateway) ですが、
接続先・セキュリティレベル・利用用途がそれぞれ異なります。
この記事の目的
OCIのネットワーク設計では、VCNから外部へ通信する方法として複数のGatewayが存在します。
それぞれの用途や接続先を理解していないと、意図しない公開や通信不可の問題が発生します。
本記事では以下を整理します。
- IGW / NAT Gateway / Service Gateway の役割
- それぞれを使う場面
- 設計時の注意点
どこで使う(ユースケース)
OCIネットワーク設計では、Gatewayは主に以下の場面で使用されます。
インターネット公開
例
- Webサーバ
- APIサーバ
外部ユーザーから直接アクセスする必要がある場合、
Internet Gateway(IGW) を使用します。
Privateサーバからのインターネット接続
例
- OSパッケージ更新
- yum / apt / Windows Update
- 外部API接続
サーバは外部公開しないが、
外部へ通信だけ必要 な場合は NAT Gateway を使用します。
OCIサービス接続
例
- Object Storage
- Autonomous Database
- OCI Registry
インターネットを経由せずに、
OCI内部ネットワークでサービスへ接続する場合 は
Service Gateway を使用します。
図
図の説明
重要なポイントは次の3点です。
- IGW:インターネットから直接アクセス可能
- NAT:外部からアクセス不可、内部からのみ通信可能
- Service Gateway:OCIサービスへ閉域接続
代表パターン例(3つ)
OCIの実務で頻繁に利用される構成を3つ用意しました。
パターン1
Public Web + Private App
Internet
│
IGW
│
Public Subnet
(Web Server)
│
Private Subnet
(App / DB)
特徴
- Webのみ公開
- DBは非公開
- 典型的な3層構成
パターン2
Privateサーバのパッケージ更新
Private Subnet
(Server)
│
NAT Gateway
│
Internet
特徴
- 外部公開なし
- OS更新可能
企業システムで最も多い構成です。
パターン3
OCIサービス接続
Private Subnet
(Server)
│
Service Gateway
│
Object Storage
特徴
- インターネットを通らない
- セキュリティが高い
バックアップやログ保存でよく利用されます。
代表パターンの補足
実際のOCI環境では、これら3つを組み合わせます。
例
Private Subnet
├ NAT Gateway
│ └ OS Update
│
└ Service Gateway
└ Object Storage
この構成は OCIのベストプラクティス とされています。
落とし穴(3つ)
落とし穴1
Private SubnetなのにIGWを設定してしまう
Private Subnetのルート表に
0.0.0.0/0 → IGW
を設定すると、
Public Subnetと同じ状態 になります。
落とし穴2
NAT GatewayはInbound不可
NAT Gatewayは
- 外からの通信
- SSH接続
はできません。
Internet → NAT → Server
は成立しません。
落とし穴3
Service GatewayはOCIサービス限定
Service Gatewayは
- AWS
- SaaS
- GitHub
などには接続できません。
接続できるのは OCIサービスのみ です。
用語ミニ辞典
VCN
OCIの仮想ネットワーク
AWSのVPCに相当します。
Subnet
VCN内のネットワーク区画
主に2種類
- Public Subnet
- Private Subnet
Gateway
VCN外部へ通信するための出口
代表例
- Internet Gateway
- NAT Gateway
- Service Gateway
Route Table
通信の行き先を決めるルール
例
0.0.0.0/0 → IGW
整理すると次のようになります。
さいごに
| Gateway | 目的 | 外部公開 |
|---|---|---|
| IGW | インターネット公開 | 可 |
| NAT | 外部通信のみ | 不可 |
| Service Gateway | OCIサービス接続 | 不可 |
設計の基本は次の通りです。
- Public Subnet → IGW
- Private Subnet → NAT Gateway
- OCIサービス → Service Gateway

大枠を整理して理解しておくことで、要件ヒアリングの際に前提が揃いやすくなり、手戻りの発生を防ぎやすいと感じました。
情報ソース
Oracle Cloud Infrastructure Documentation
https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/managingIGs.htm
OCI NAT Gateway Documentation
https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/NATgateway.htm
OCI Service Gateway Documentation
https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/servicegateway.htm

コメント