Skip to content

未割当静的外部 IP

ルール ID: gcp.compute.address.unattachedカテゴリ: zombie ・ 必要な読み取り: インベントリのみ(初回スキャンで検出) 計画中

予約したまま何にも割り当てられていない静的外部 IP アドレスを見つけます。使っていない IP は「確保しているだけ」で課金される数少ないリソースのひとつで、VM を消したあとに残りがちです。

このページは判定規範に従う予定仕様です。判定ロジックの実装とテストは先行して存在しますが、実データ接続からの本番実行経路はまだありません(それまで計画中表示)。

何を無駄とみなすか

RESERVED 状態(予約済み・未割当)のまま放置された静的外部 IPv4 アドレス。どのリソースにも割り当てられていない間、予約課金だけが続きます。

判定条件

  • 外部 IPv4 アドレスである
  • 状態が RESERVED(未割当)である
  • 15 日の時間ゲートを通過している(予約・付け替え作業の途中を候補にしないため)

内部 IP アドレスと、予約課金のない外部 IPv6 アドレスは対象外です。

必須 facts

  • アドレス種別(外部 / 内部)と IP バージョン(IPv4 / IPv6)
  • アドレスの状態(RESERVED / IN_USE)
  • アタッチ先リソース数(ゼロであること)
  • 経過日数(時間ゲートの判定)

取得できない facts がある場合は「観測不能」と表示し、候補にしません(候補を捏造しない)。

誤検知・危険になり得る条件

  • メンテナンスや移行作業で一時的に割当を外している IP
  • DNS レコードや取引先のファイアウォール許可リストに登録済みで、再利用予定の IP
  • 障害時の切り替え先として温存しているフェイルオーバー用 IP

実行前の確認

  • 命名から用途を確認する
  • この IP を参照する DNS レコードが残っていないか確認する
  • 外部サービス・取引先の許可リストに登録されていないか確認する(解放すると同じ IP は原則戻りません)
  • IaC(Terraform 等)での参照有無を確認する

非破壊テストとロールバック

Safety Tier: high(解放した IP アドレスそのものは復元できません)

  1. DNS・許可リスト・IaC の参照ゼロを確認し、確認結果を記録する
  2. 参照が疑わしい場合は、解放前に関係者へ周知して観察期間を置く
  3. その後に解放する

ロールバック: 同じ IP の再取得は保証されないため、新しい静的 IP を予約し、DNS・許可リストを更新する手順になります。解放前の確認が実質的な防御線です。

効果検証

削減の確定は、変更前ベースラインと変更後請求の比較で行います(Verify)。他のルールはルールカタログを参照してください。