はじめに
本記事では、以下についてまとめます。
- OCI VCN Flow Logs について
- 使用方法 (デモ)
OCI VCN Flow Logs
概要
簡潔に言うと、L4 レベルのトラフィックを可視化 してくれるサービスです。
対象トラフィックは、OCI VCN 内に存在する VNIC へのイングレス及びエグレストラフィック です。
実際に取得できるログの内容は以下ドキュメントを参照してください。
主に以下用途として利用します。
- トラフィックの監査
- OCI Network Security Group / OCI Security List のトラブルシューティング
構成要素
OCI VCN Flow Logs を有効化は、以下リソースが組み合わさって可能となります。
- OCI Logging (Logs)
- OCI Logging (Log Groups)
- Capture filters
使用方法 (デモ)
検証構成
検証構成図は以下のとおりです。
OCI Compute に対して Ping を送信し、そのトラフィックを取得していきます。
- 環境構築コードは以下 GitHub にあげてますので、よかったら覗いてみてください
実践
それでは実際に OCI VCN Flow Logs を試していきます。
構成要素 に記載の通り、関連するリソースを作成していきます。
OCI Logging (Log Groups) 作成
まず、Log Group を作成します。
Log Group は、ログを集約する論理コンテナです。
OCI コンソール左上のハンバーガーマークをクリックし、「Observability & Management」→「Log Groups」をクリックします。

任意のコンパートメントを指定し、「Create log group」をクリックします。

Capture filter 作成
続いて、Capture filter を作成します。
Capture filter は、どういったトラフィックを取得するかを定義したルールの集まり です。
OCI コンソール左上のハンバーガーマークをクリックし、「Networking」→「Capture filters」をクリックします。

取得対象リソースと同一のコンパートメントを指定し、「Create capture filter」をクリックします。

- Capture filter を作成するコンパートメントは、OCI VCN Flow Logs を有効化する際に取得対象とするリソース (VCN / Subnet / VNIC) と同一である必要があります
設定を入力し、「Create capture filter」をクリックします。
今回は以下のようにしています。


| 項目 | 概要 | 設定値 |
|---|---|---|
| Name | ・Capture filterを識別する名前 | cf-vcn-flow-logs |
| Filter type | ・作成するフィルタタイプ | Flow log capture filter |
| Sampling rate | ・取得するログ量の割合 | 100% |
| ルール | ||
| Traffic disposition | ・取得対象トラフィックの状態 ・All / ACCEPT / REJECT |
All |
| Include/Exclude | ・Sourceで指定したCIDRからのトラフィックを含めるかどうか | Include |
| Source | ・取得対象トラフィックの送信元CIDR ・指定しなければ「0.0.0.0/0」 |
0.0.0.0/0 |
| Destination | ・取得対象トラフィックの宛先CIDR ・指定しなければ「0.0.0.0/0」 |
10.0.0.0/16 |
| IP protocol | ・取得対象トラフィックのプロトコル ・All / TCP / UDP / ICMP / ICMPv6 |
ICMP |
- Capture filter 内のルールは最大10個作成が可能
- ルールは上から評価され、一致した時点でそれ以降のルールは評価されません
OCI VCN Flow Logs 有効化 (OCI Logging (Logs) 作成)
続いて、OCI VCN Flow Logs を有効化していきます。
OCI コンソール左上のハンバーガーマークをクリックし、「Observability & Management」→「Logs」をクリックします。

「Actions」→「Enable service log」をクリックします。

設定を入力し、「Enable」をクリックします。
今回は以下のようにしています。



| 項目 | 概要 | 設定値 |
|---|---|---|
| Select resource | ||
| Resource compartment | ・取得対象リソースが属するコンパートメント | vcn-flow-logs |
| Service | ・有効化するサービスログ | Virtual Cloud Network - Flowlogs |
| Resource Level | ・Flowlogsを適用する範囲 ・VCN / Subnet / VNIC |
VCN |
| Resource | ・取得対象リソース | vcn ※vcnという名前のVCN |
| Configure log | ||
| Log category | ・取得ログカテゴリ ※カテゴリによるログ内容の変化はありません |
Flow Logs - vcn records |
| Capture filter | ・キャプチャフィルタ | cf-vcn-flow-logs |
| Log name | ・OCI Logging (Logs) を識別する名前 | logs-vcn-flow-logs-points-vcn |
| Enable auto archiving to object storage (legacy) | ・レガシー機能 ・有効化すると、Log Groupと同一コンパートメント内に自動的にバケットが作成され、自動でログがコピーされる ・現在は OCI Connector Hub にて対応可能 |
Disable |
| Advanced options | ||
| Compartment | ・ログを集約するLog Groupが属するコンパートメント | vcn-flow-logs |
| Log group | ・ログを集約するLog Group | lg-vcn-flow-logs |
| Log retention | ・ログ保持期間 ・30~180日間 (30日単位) |
1 month |
動作確認
最後に動作確認してみます。
本記事では割愛していますが、OCI VCN Flow Logs を有効化した OCI VCN 内のパブリックサブネットに OCI Compute が稼働しているので、Pingを投げます。
Pingを実行して2,3分後に確認します。
OCI コンソール左上のハンバーガーマークをクリックし、「Observability & Management」→「Log Groups」をクリックします。

- ちなみに、OCI VCN 内リソースを宛先とし、宛先IPがグローバルIPの場合は、ログではプライベートIPに置き換わります
おわりに
本記事では、OCI VCN Flow Logs についてと、使用方法についてまとめました。
ネットワークの疎通性という観点では、OCI Network Path Analyzer や 仮想テストアクセスポイント (VTAP) もありますが、若干用途が異なるのと、 VTAP に関しては導入ハードルが高いです。
それと比較して OCI VCN Flow Logs は導入ハードルが低いため、本番環境では第一に候補となると思います。
🌟この記事が誰かの役に立てば幸いです!
また、ご質問やフィードバックもお待ちしています。






