AWS ルートテーブルとは?基本概念と設定方法をわかりやすく解説

目次

はじめに

本書の目的

本ドキュメントは、AWSのVPCで使われる「ルートテーブル」をやさしく解説します。基本概念、種類、ルーティングの仕組み、設定例、運用時の注意点まで順を追って説明します。実際の設計や運用に使える知識を提供することを目的としています。

対象読者

AWS初心者から中級者を想定します。ネットワークの専門家でなくても理解できるよう、専門用語は最小限にし具体例を交えて説明します。VPCやサブネットの基本は知っていると読みやすいです。

本書の構成と読み方

第2章以降で概念→種類→処理の流れ→実装例→運用と進みます。まず本章で全体像をつかみ、第2章以降で詳細を学んでください。例として、サブネット間通信やインターネット接続のルート設定を取り上げます。

AWS ルートテーブルの基本概念と仕組み

概要

ルートテーブルは、VPC内のネットワーク通信に対する「道しるべ」です。送信先を示すCIDRブロック(例: 10.0.1.0/24、0.0.0.0/0)と、そのトラフィックを運ぶターゲット(例: Internet GatewayやNAT Gateway)で構成されます。これにより複数のサブネットや接続先を一元管理できます。

ルートの主な構成要素

  • 送信先(Destination): トラフィックの行き先をCIDRで指定します。例として10.0.1.0/24は特定サブネット向けです。
  • ターゲット(Target): トラフィックを送る先を指定します。主な例はInternet Gateway(igw)、NAT Gateway、VPCピア接続、ENIやVPNゲートウェイです。

動作の仕組み

送信元からパケットが来ると、ルートテーブルを参照して行き先を決めます。ポイントは「最も具体的な(長いプレフィックスの)ルートが選ばれる」ことです。例えば10.0.1.0/24と10.0.0.0/16が両方ある場合、10.0.1.0/24が優先されます。デフォルトで存在する“local”ルート(同VPC内向け)は消せません。

サブネットとの関係

ルートテーブルはサブネットに関連付けて使います。サブネットに明示的な関連付けがなければ「メインルートテーブル」が適用されます。サブネットごとに異なるルーティングを与えることで、パブリック・プライベートの分離などができます。

よくある用途の例

  • インターネット通信: 0.0.0.0/0 → igw(パブリックサブネット)
  • プライベートサブネットの外向き: 0.0.0.0/0 → NAT Gateway
  • 他VPCへの通信: 対向VPCのCIDR → VPC Peering

注意点

ルートの並び順は意味を持ちません。重要なのは一致の具体度です。また、誤ったターゲット指定は通信遮断につながりますので、設定時はCIDRやターゲットを慎重に確認してください。

ルートテーブルの種類と役割

メインルートテーブル

VPC作成時に自動で作られるルートテーブルです。サブネットが特に指定されていない場合、このルートテーブルがそのサブネットのデフォルトルーティングを担います。変更すると、主に明示的に関連付けられていないサブネットの挙動に影響します。例:最初に作ったVPCのデフォルトルートを編集して、0.0.0.0/0をIGWへ向けると、そのまま残ったサブネットに適用されます。

カスタムルートテーブル

ユーザーが要件に応じて作成するルートテーブルです。公開・非公開、NAT経由、VPCピアリング、トランジットゲートウェイ経由など用途ごとに分けて使います。例:パブリックサブネット用に0.0.0.0/0をIGWへ、プライベート用に0.0.0.0/0をNATゲートウェイへ向けるルートテーブルを別々に用意します。

サブネットルートテーブル(関連付け)

サブネットは1つのルートテーブルと関連づけられます。明示的な関連付けがなければメインルートテーブルを継承します。例:データベースサブネットは外部アクセスを遮断するため、特定のカスタムルートテーブルと関連付けます。

ゲートウェイルートテーブル

ゲートウェイ(例:バーチャルプライベートゲートウェイやトランジットゲートウェイ)に紐づくルート制御です。オンプレミスや他VPC、接続済みサービスへの経路を管理します。例:VPN経由で社内ネットワークへルートを設定する場合に使います。

ローカルゲートウェイルートテーブル(Outposts用)

AWS Outpostsなどのローカルゲートウェイ向けのルートテーブルです。オンプレミス機器やOutpost上のリソースとの低遅延接続を制御します。例:Outpostラック内のサーバーへ特定経路を引く際に利用します。

運用上のポイント

  • 名前と用途を分かりやすく付ける
  • サブネットとの関連付けを明文化する
  • テスト(tracerouteなど)で意図通りに流れているか確認する

ルーティングの実行フロー

全体の流れ

Transit Gatewayやゲートウェイに到達したパケットは、まず関連付けられたルートテーブルを参照します。ルートテーブルは行き先(プレフィックス)と送り先(ターゲット)を一覧にした住所録のような役割を果たします。該当するルートを見つけたら、そのターゲットへ送出します。

パケット到着とルックアップ

パケットがインターフェースに到着すると、機器は宛先アドレスを取り出してルートテーブルの照合を行います。ここでは最も具体的な(長いプレフィックスの)エントリを優先して選びます。簡単にいうと、より細かく指定された住所があればそちらを使います。

一致ルートの決定と優先順位

複数のルートが該当する場合はプレフィックスの長さで決定します。同じ長さで複数ある場合は、管理者が設定した優先順やタイプ(ローカル、ピア、VPNなど)で決まります。ルートに「ブラックホール」のような無効化ルールがあれば、到達不能として扱われます。

ターゲットへの送出

ルートで決まったターゲットに向けてパケットを送ります。ターゲットはVPC、VPN、Direct Connect、別のTransit Gatewayやインターフェースなどがあり、選ばれた接続ポイントを通じて次のホップへ渡されます。必要に応じてNATやセキュリティグループ、ネットワークACLが適用されます。

具体例:VPCからオンプレミスへ

VPC内のインスタンスがオンプレミスへ送信すると、VPCのルートがTransit Gatewayを指している場合、Transit Gatewayのルートテーブルを照合します。そこでオンプレミスのプレフィックスが見つかれば、対応するVPNやDirect Connect経由で送出されます。

注意点

ルーティングはルートテーブルだけで完結しません。アタッチメントの関連付け、ルートのオーバーラップ、セキュリティ設定が影響します。問題発生時は到達性の確認とルートの優先度を順に確認してください。

実装例と設定方法

概要

サブネットのルートテーブルに「送信先 0.0.0.0/0 → インターネットゲートウェイ(igw-XXXXXXXX)」を設定すると、そのサブネットからインターネットへアクセスできます。オンプレミスへ接続する場合はターゲットを仮想プライベートゲートウェイ(vgw-XXXXXXXX)にします。

前提条件

  • VPC とサブネットを作成済み
  • インターネットゲートウェイまたは仮想プライベートゲートウェイを作成・アタッチ済み
  • 必要な IAM 権限を持っている

コンソールでの手順(例)

  1. AWS コンソールで VPC サービスを開く
  2. 「ルートテーブル」を選択し、対象のルートテーブルを開く
  3. 「ルートの編集」→「ルートの追加」で送信先に 0.0.0.0/0 を入力
  4. ターゲットに igw-XXXXXXXX を選択して保存
  5. 「サブネットの関連付け」から対象サブネットに関連付け

AWS CLI の例

  • インターネット向けルート作成:
    aws ec2 create-route –route-table-id rtb-XXXXXXXX –destination-cidr-block 0.0.0.0/0 –gateway-id igw-XXXXXXXX
  • ルートテーブルとサブネットの関連付け:
    aws ec2 associate-route-table –route-table-id rtb-XXXXXXXX –subnet-id subnet-XXXXXXXX

オンプレミス接続(VGW)のポイント

  • VGW を使う場合はルートに送信先ネットワーク(例 10.0.0.0/16)と –gateway-id vgw-XXXXXXXX を指定します
  • 動的ルーティングを使う場合は「ルート伝搬(Route Propagation)」を有効にすると、自動で経路が追加されます(CLI: aws ec2 enable-route-propagation)

注意点

  • サブネットのセキュリティグループとネットワーク ACL も通信を許可する必要があります
  • パブリック IP が無いインスタンスは直接インターネットに出られません(NAT が必要)

ルートテーブルとネットワーク管理

概要

ルートテーブルはVPC内の通信を振り分ける道しるべの一覧です。どの宛先がどの経路(サブネット、インターネットゲートウェイ、VPN、ピア接続など)へ向かうかを決めます。これによりネットワークトラフィックを一元管理できます。

管理のポイント

  • 明確な命名とタグ付け:用途や環境(本番・検証)を識別できるようにします。例:rt-prod-web.
  • 最小権限の設計:不要な経路を削除し、アクセスを限定します。

Transit Gatewayとの連携

複数VPCやオンプレミスを統合するときはTransit Gatewayを利用します。中央ハブとして機能し、個別のルートテーブルで接続先を制御できます。これで複雑なメッシュを避け、設計と運用を簡素化できます。

モニタリングとログ

Flow LogsやCloudWatchを使ってトラフィックとルールの適用状況を監視します。異常な通信があればログで原因を絞れます。

自動化と運用ベストプラクティス

Infrastructure as Code(例:CloudFormation、Terraform)でルート設定を管理します。変更はコードレビューとCIで運用し、人的ミスを減らします。

トラブルシューティングのヒント

  • まずルートテーブルを確認し、最長一致ルールが意図通りか確かめます。
  • サブネットごとに割り当てられたルートを見比べ、欠落を探します。
  • Transit Gatewayを使う場合はアタッチメントとルートの順序も確認します。
よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次