Oracle Cloud Infrastructure(OCI)で、VCN内のComputeインスタンスなどをインターネットと通信させる際に重要になるのがInternet Gateway(インターネット・ゲートウェイ)です。
Internet Gatewayは、VCN(Virtual Cloud Network)とパブリック・インターネットの間の通信経路を提供するOCIのネットワーク・コンポーネントです。ただし、Internet Gatewayを作成しただけで、VCN内のすべてのリソースが自動的にインターネットへ公開されるわけではありません。
この記事では、OCIのInternet Gatewayがどのようにパブリック通信を実現するのか、ルート表やパブリックIPとの関係、NAT GatewayやService Gatewayとの違いまで整理して解説します。
- OCIのInternet Gatewayはパブリック・インターネットとの通信経路を提供する
- Internet Gatewayを作成するだけでは通信できない
- パブリック通信にはパブリックIPも重要
- パブリック・サブネットとは何を意味するのか
- セキュリティ・リストやNSGの許可も必要
- Internet GatewayとNAT Gatewayの違い
- Service GatewayはOracleサービスへのプライベートな経路
- 具体例:Webサーバーをインターネットへ公開する構成
- Internet GatewayがあってもSSH接続できない場合の確認項目
- Internet Gateway自体がインスタンスにIPアドレスを付けるわけではない
- まとめ|OCIのInternet Gatewayはパブリック通信のためのゲートウェイ
OCIのInternet Gatewayはパブリック・インターネットとの通信経路を提供する
OCIのInternet Gatewayは、VCNとインターネットの間で通信するために使用する仮想ルーターです。Oracleの公式ドキュメントでも、Internet GatewayによってVCNとインターネット間のトラフィックが可能になると説明されています。
したがって、OCIでパブリック・インターネットとの通信を実現する代表的なゲートウェイがInternet Gatewayです。ただし、Internet Gateway単体では通信は成立せず、ルーティングやIPアドレス、セキュリティ設定なども必要になります。
OCIのネットワーク設計を行う際には「Internet Gatewayを作ればインターネットにつながる」と単純化するのではなく、通信成立に必要な複数の条件をセットで理解することが重要です。
Internet Gatewayを作成するだけでは通信できない
Internet GatewayをVCNに追加しただけでは、Computeインスタンスからインターネットへ通信できません。対象となるサブネットのルート表に、インターネット向け通信をInternet Gatewayへ送るルート・ルールを設定する必要があります。
IPv4で一般的なインターネット全体を宛先とする場合は、宛先CIDRを0.0.0.0/0、ターゲットを作成したInternet Gatewayに設定します。
イメージとしては「0.0.0.0/0宛ての通信はInternet Gatewayへ渡す」という道順をVCNに教える設定です。Internet Gatewayが道路の出口だとすれば、ルート表はその出口へ向かう案内標識のような役割を持ちます。
パブリック通信にはパブリックIPも重要
インターネットから直接到達させたいComputeインスタンスでは、通常、そのVNICに関連付けられたプライベートIPにパブリックIPv4アドレスが割り当てられている必要があります。
例えばWebサーバーをOCI上に構築して外部ユーザーからアクセスさせる場合、Internet Gatewayと適切なルート設定に加えて、インスタンス側でパブリックIPを利用できる構成にします。
一方、プライベートIPしか持たないインスタンスからインターネットへ外向き通信だけを行わせたい場合には、Internet Gatewayへ直接公開するのではなく、後述するNAT Gatewayを利用する設計が一般的です。
パブリック・サブネットとは何を意味するのか
OCIでは、VNICにパブリックIPv4アドレスを持たせることができるサブネットをパブリック・サブネットとして構成できます。反対に、パブリックIPv4アドレスを禁止する設定のサブネットはプライベート・サブネットとして利用できます。
典型的なWebシステムなら、外部からアクセスを受けるWebサーバーやパブリック・ロード・バランサーをパブリック側に配置し、データベースなどインターネットから直接アクセスさせる必要のないリソースをプライベート側へ配置する構成が考えられます。
重要なのは、「Internet GatewayがVCNに存在すること」と「個々のリソースがインターネットからアクセス可能であること」は同じ意味ではないという点です。
セキュリティ・リストやNSGの許可も必要
ルートが正しくても、OCI側のセキュリティ・ルールで通信が許可されていなければ目的の通信はできません。OCIではサブネットに関連付けるSecurity Listや、VNICに適用できるNetwork Security Group(NSG)などによってトラフィックを制御します。
例えば外部からWebサーバーへHTTPSで接続させる場合には、必要に応じてTCP 443番ポートへのイングレス通信を許可します。
さらにComputeインスタンス内のOSファイアウォールやWebサーバーの待受設定も確認が必要です。Internet Gateway、ルート表、OCIのセキュリティ設定が正しくても、OS側で通信を拒否していれば接続できません。
Internet GatewayとNAT Gatewayの違い
Internet Gatewayと混同されやすいのがNAT Gatewayです。どちらもインターネット通信に関係しますが、利用目的が異なります。
| 項目 | Internet Gateway | NAT Gateway |
|---|---|---|
| 主な目的 | VCNとインターネット間のパブリック通信 | プライベート・リソースからインターネットへの外向き通信 |
| インターネットから開始される接続 | 構成・セキュリティ設定が許せば可能 | 不可 |
| 代表的な用途 | 公開Webサービスなど | 非公開サーバーからの更新ファイル取得など |
例えばプライベート・サブネットのサーバーがOSアップデートのためにインターネットへアクセスする必要はあるものの、インターネットからそのサーバーへ直接接続させたくない場合にはNAT Gatewayが適しています。
つまり、「外部へ公開する可能性がある通信」と「プライベートのまま外へ出る通信」を区別すると、Internet GatewayとNAT Gatewayを理解しやすくなります。
Service GatewayはOracleサービスへのプライベートな経路
もう一つ混同しやすいものがService Gatewayです。Service Gatewayは、VCNからObject Storageなど対応するOracle Services Network上のサービスへ、インターネットを経由せずアクセスするために使用できます。
そのため、Object StorageへアクセスしたいというだけでInternet Gatewayが必須になるとは限りません。対象サービスとネットワーク構成によってはService Gatewayを使用できます。
Internet Gateway、NAT Gateway、Service Gatewayは似た名称ですが、それぞれ目的が異なります。通信相手が一般のインターネットなのか、外向き通信だけが必要なのか、OCIの対応サービスなのかを整理すると選びやすくなります。
具体例:Webサーバーをインターネットへ公開する構成
例として、OCIのComputeインスタンスでWebサイトを公開するとします。この場合はVCNとサブネットを用意し、Internet GatewayをVCNへ追加します。
続いてサブネットで利用するルート表に、例えば「0.0.0.0/0 → Internet Gateway」というルート・ルールを設定します。そしてインターネットから到達させるリソースについて、必要なパブリックIPの構成を行います。
最後にNSGやSecurity ListでHTTPの80番、HTTPSの443番など必要最小限の通信だけを許可し、OS側のファイアウォールとWebサーバーの待受状態も確認します。
Internet GatewayがあってもSSH接続できない場合の確認項目
Internet Gatewayを設定したのにSSHやWebアクセスができない場合は、一つの設定だけを見るのではなく通信経路全体を確認します。
- Internet GatewayがVCNに作成され、有効になっているか
- ルート表にインターネット向けの適切なルートがあるか
- インスタンス側に必要なパブリックIPがあるか
- NSGまたはSecurity Listで必要なポートが許可されているか
- OS側のファイアウォールで拒否されていないか
- SSHやWebサーバーなど対象サービスが実際に起動しているか
特に初心者の場合、「Internet Gatewayは設定したからネットワークは問題ない」と判断しがちですが、OCIでは複数の設定が組み合わさって通信が成立します。
セキュリティ上、SSHの22番ポートなどを無条件に全世界へ開放することは避け、必要な接続元だけに限定するなど、用途に応じたアクセス制御も重要です。
Internet Gateway自体がインスタンスにIPアドレスを付けるわけではない
Internet Gatewayについて理解するときに注意したいのが、Internet GatewayそのものがComputeインスタンスへパブリックIPを配布する機能ではないことです。
Internet GatewayはVCNとインターネットとの間の通信経路を提供するコンポーネントであり、IPアドレス、ルーティング、セキュリティ制御などはそれぞれ別の仕組みとして構成します。
この役割分担を理解しておくと、OCI認定資格の学習だけでなく、実際のネットワーク障害を切り分ける際にも役立ちます。
まとめ|OCIのInternet Gatewayはパブリック通信のためのゲートウェイ
OCIのInternet Gatewayは、VCNとパブリック・インターネットとの間の通信を可能にするネットワーク・コンポーネントです。その意味では、Internet GatewayはOCIにおけるパブリック通信を提供する仕組みの一つと理解できます。
ただし、Internet Gatewayを作成するだけでComputeインスタンスが自動的にインターネットへ公開されるわけではありません。適切なルート・ルール、パブリックIP、NSGまたはSecurity List、さらにOS側の設定などが組み合わさって初めて目的の通信が成立します。
公開リソースならInternet Gateway、プライベート・リソースから外向きにインターネットへ接続するならNAT Gateway、対応するOracleサービスへプライベートに接続するならService Gatewayという違いを押さえておくと、OCIのネットワーク構成を理解しやすくなります。


コメント