トラフィックルーティングポリシー とらふぃっくるーてぃんぐぽりしー
簡単に言うとこんな感じ!
「どのユーザーをどのサーバーに案内するか」のルールブックだよ!たとえば「東京からのアクセスは東京サーバーへ」「メインが落ちたら予備サーバーへ自動切替」みたいに、DNSレベルで交通整理してくれる仕組みなんだ。
トラフィックルーティングポリシーとは
トラフィックルーティングポリシーとは、インターネット上のアクセス(トラフィック)を「どのサーバー・どのリージョン(地域)に振り分けるか」をDNS(ドメインネームシステム)レベルで制御するためのルール設定のことです。通常DNSは「このドメイン名はこのIPアドレスです」と単純に答えますが、ルーティングポリシーを使うと「どこから来たか・今何時か・サーバーの状態はどうか」などに応じて、返すIPアドレスを動的に変えることができます。
たとえばWebサービスをグローバルに運営している場合、ヨーロッパのユーザーをわざわざ東京サーバーに向かわせると遅くなります。ルーティングポリシーを使えば「ヨーロッパからのアクセスはフランクフルトのサーバーへ」と自動的に振り分けられます。これによりユーザー体験の向上・サーバー負荷の分散・障害時の自動切替が実現できます。
クラウドサービスではAWSのRoute 53、GCPのCloud DNS、Azure DNSなどがこの機能を提供しており、システム発注や構成設計の際に「どのポリシーを使うか」を検討することが重要です。
ルーティングポリシーの種類と使い方
主要なポリシーを目的別に整理すると以下のようになります。
| ポリシー名 | 英語名 | 主な用途 | イメージ |
|---|---|---|---|
| シンプル | Simple | 単純に1つのIPを返す | 一本道 |
| 加重 | Weighted | 割合でサーバーを振り分け | 70%Aサーバー / 30%Bサーバー |
| 地理的 | Geolocation | アクセス元の国・地域で振り分け | 日本→東京、米国→バージニア |
| レイテンシ | Latency | 最も応答が速いサーバーへ | 速さ優先ルート |
| フェイルオーバー | Failover | 障害時に予備サーバーへ自動切替 | 迂回ルート |
| 地理的近接性 | Geoproximity | 物理的な近さ+バイアス調整 | 地図上の引力圏 |
| 複数値回答 | Multivalue Answer | 複数IPをランダムに返す | 簡易負荷分散 |
覚え方:「シカゲレフマ」
シンプル・カ重(加重)・ゲオロケーション(地理的)・レイテンシ・フェイルオーバー・マルチバリュー、の頭文字で「シカゲレフマ」!試験や設計会議でポリシーの種類を聞かれたときに役立ちます。
ヘルスチェックとの組み合わせ
フェイルオーバーや加重ポリシーは、ヘルスチェック(サーバーが正常に動いているか定期確認する仕組み)と組み合わせて使うのが一般的です。ヘルスチェックが「このサーバーはダウン」と判定したら、そのサーバーへのDNS応答を自動的に止めて別のサーバーに切り替えます。
通常時:
ユーザー → DNS問い合わせ → 東京サーバー(IPアドレスA) ← ヘルスチェック: OK
障害発生時:
ユーザー → DNS問い合わせ → 大阪サーバー(IPアドレスB) ← ヘルスチェック: 東京NG→自動切替
歴史と背景
- 1980年代: DNSの誕生(RFC 1034/1035, 1987年)。当初はドメイン→IPのシンプルな名前解決のみ。
- 1990年代: インターネット商用化が進み、大規模サービスが登場。単一サーバーでは対応しきれなくなる。
- 2000年代前半: コンテンツデリバリーネットワーク(CDN)が普及し、地理的なトラフィック分散の需要が高まる。
- 2006年: AWSがRoute 53の前身となるサービス開発を開始。クラウド時代のDNSルーティングの概念が整備される。
- 2010年: AWSがRoute 53を正式リリース。加重・レイテンシ・フェイルオーバーポリシーを提供。
- 2013年: Route 53に地理的ルーティング(Geolocation)が追加。GDPRなど地域規制への対応ニーズとも合致。
- 2020年代: マルチクラウド・マルチリージョン構成が当たり前になり、ルーティングポリシーの設計はシステム構築の必須要素に。
主要クラウドサービスとの比較
各クラウドプロバイダーが提供するDNSルーティング機能を比較します。
| ポリシー種別 | AWS Route 53 | GCP Cloud DNS + LB | Azure Traffic Manager |
|---|---|---|---|
| 加重 | ✅ Weighted | ✅ | ✅ Weighted |
| 地理的 | ✅ Geolocation | ✅ | ✅ Geographic |
| レイテンシ | ✅ Latency | ✅ | ✅ Performance |
| フェイルオーバー | ✅ Failover | ✅ | ✅ Priority |
| 地理的近接性 | ✅ Geoproximity | ❌ | ❌ |
| ヘルスチェック統合 | ✅ | ✅ (別サービス) | ✅ |
| 料金体系 | クエリ数課金 | クエリ数課金 | エンドポイント数課金 |
ポリシーの選び方フロー(SVG図解)
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 1034 | DNS(ドメインネームシステム)の基本概念と仕様 |
| RFC 1035 | DNSの実装と仕様の詳細 |
| RFC 2782 | SRVレコード(サービス位置情報)の定義。ルーティングの原型 |
| RFC 6891 | EDNS(拡張DNS):クライアント情報をDNSに乗せる仕組み(地理的ルーティングの基盤) |
| RFC 7871 | ECS(EDNS Client Subnet):DNSでクライアントのサブネット情報を伝達し、地理的ルーティングを実現する |
関連用語
- DNS — ドメイン名をIPアドレスに変換する仕組み。ルーティングポリシーの土台
- ロードバランサー — サーバー負荷をL4/L7レイヤーで分散する装置。DNSルーティングと組み合わせて使う
- CDN — コンテンツを世界中の拠点に配置する仕組み。地理的ルーティングの応用例
- ヘルスチェック — サーバーの死活監視。フェイルオーバーポリシーに必須
- フェイルオーバー — 障害時に予備系へ自動切り替えする仕組み
- TTL — DNSの回答をキャッシュしておく時間。短くするとルーティング切替が速くなる
- レイテンシ — 通信の遅延時間。レイテンシベースルーティングの判断基準
- Route 53 — AWSが提供するDNSサービス。豊富なルーティングポリシーで有名