Anycast DNS とは?
Anycast DNS は、複数の DNS サーバが異なる地理的な位置で同じ IP アドレスを共有するネットワーク ルーティング方法です。 ユーザーが任意のキャストを使用してDNSサーバーに問い合わせるとき、ネットワークは、要求を最も近いサーバーに自動的にルーティングし、応答時間を改善し、ビルトイン冗長性とDDoS保護を提供します。
Anycastの仕組み
伝統的なユニキャスト対オールキャスト
ユニキャスト(伝統):User Query → Specific Server IP → Fixed Location
London User → 203.0.113.1 → New York Server (high latency)
アニーキャスト:
User Query → Shared IP → Nearest Server
London User → 203.0.113.1 → London Server (low latency)
Tokyo User → 203.0.113.1 → Tokyo Server (low latency)
Sydney User → 203.0.113.1 → Sydney Server (low latency)
ルーティング機構
1. 複数のサーバー、1つのIP: すべての Anycast サーバーが同じ IP アドレスを発表
2. BGPルーティング:ボーダーゲートウェイプロトコルは、「クローズド」サーバーへのトラフィックをルートします
3. ネットワークの近接:BGPメトリック(ホップ、レイテンシー、ネットワークポリシー)で決定
4. 自動故障: 1つのサーバーが失敗した場合、次の最寄りのトラフィックルート
Anycast DNS の利点
1. 減らされた潜伏
地理的分布はDNSクエリ時間を最小化します。
| ユーザーの場所 | ユニキャストレイテンシー | Anycastレイテンシー | 新着情報 |
|---|---|---|---|
| ニューヨーク | 10ミリ秒 | 5ミリ秒 | 50% 短縮 |
| ロンドン | 120ミリ秒 | 8ミリ秒 | 93%高速 |
| 東京 | 180ミリ秒 | 12ミリ秒 | 93%高速 |
| シドニー | 220msの | 15ミリ秒 | 93%高速 |
DNS Resolution Time:
Unicast: 150ms (distant server)
Anycast: 10ms (local server)
Savings: 140ms per query
For a page with 20 DNS lookups:
Total savings: 2,800ms (2.8 seconds!)
2. 組み込み冗長
多数の存在(PoPs)のポイントは自動故障を提供します:
Normal Operation:
London Server → Online → Serving traffic
Paris Server → Online → Serving traffic
Frankfurt Server → Online → Serving traffic
Server Failure:
London Server → OFFLINE
Paris Server → Online → Absorbs London traffic automatically
Frankfurt Server → Online → Absorbs London traffic automatically
3. DDoSの緩和
分散されたインフラは攻撃を吸収します。
単一サーバー(Unicast):Attack: 100 Gbps DDoS → Single Server → Overwhelmed → Service Down
アニーキャストネットワーク:
Attack: 100 Gbps DDoS → Distributed across 20 servers
Each server receives: ~5 Gbps
Result: Attack absorbed, service continues
4. 性能の向上
Anycast は DNS クエリの解決時間を短縮します。
# Query time comparison
dig @8.8.8.8 example.com # Google's anycast DNS
# Query time: 12 msec
dig @single-server.dns.com example.com # Unicast DNS
# Query time: 145 msec
Anycast DNS アーキテクチャ
ネットワーク構成
[Global Anycast IP: 203.0.113.1]
|
┌─────────────────────┼──────────────────────┐
| | |
[US West PoP] [Europe PoP] [Asia PoP]
- Los Angeles - London - Tokyo
- San Francisco - Frankfurt - Singapore
- Seattle - Amsterdam - Hong Kong
サーバー構成
各キャストの場所:
-Identical DNS ゾーン: すべてのサーバーが同じDNSレコードをホスト
- 共有IPアドレス: BGPで発表した同じIP
- 自動操作: 各PoPは独立して運営しています
- 同期アップデート: ゾーンの変更は、すべての場所への移転
BGPのお知らせ
Example BGP Configuration:
IP Block: 203.0.113.0/24
London PoP announces: 203.0.113.1 via AS64500
New York PoP announces: 203.0.113.1 via AS64500
Tokyo PoP announces: 203.0.113.1 via AS64500
Internet routers select nearest announcement based on BGP metrics.
人気のAnycast DNS プロバイダー
パブリックレゾルバー
| プロバイダー | IPv4の特長 | IPv6の特長 | ポップス |
|---|---|---|---|
| クラウドフレア | 1.1.1.1 | 2606:4700:4700:1111 | 300+以上 |
| サイトマップ | 8.8.8.8 | 2001:4860:4860::8888 | 100個以上 |
| クワッド9 | 9.9.9.9 | 2620:fe::fe | 150 日元 |
| オープンDNS | 208.67.222.222 | 2620:119:35::35 | 25 + |
認証DNSプロバイダ
Cloudflare DNS:- 無料の任意のキャストDNSホスティング
- グローバルネットワーク(300+PoP)
- 自動DDoSの保護
- AWS 地域の Anycast ネットワーク
- 99.99%のSLA
- ジオルーティング機能
- フィルター チェーンが付いている高度の Anycast
- リアルタイムの交通管理
- APIファーストアーキテクチャ
- エンタープライズDNS
- 高度なルーティングのためのトラフィックディレクター
- グローバル負荷分散
Anycast DNS の設定
認証DNS
1. プロバイダーを選択してください:DNSホスティングサービスを選択する:
# Cloudflare example
Name Servers:
ns1.cloudflare.com (anycast)
ns2.cloudflare.com (anycast)
2。 Registrarを更新して下さい:
ドメインを任意のキャスト名サーバーに置きます。
example.com. NS ns1.cloudflare.com.
example.com. NS ns2.cloudflare.com.
3. DNSレコードの設定:
プロバイダーに DNS レコードを追加します。
example.com. A 203.0.113.50
www A 203.0.113.50
mail MX mail.example.com.
再帰的な DNS のため
Anycast Resolvers への切り替え: Linux/Mac (/etc/resolv.conf):nameserver 1.1.1.1
nameserver 1.0.0.1
Windows (ネットワーク設定):
Preferred DNS: 1.1.1.1
Alternate DNS: 1.0.0.1
ルーター構成:
ルータレベルでDNSサーバーを設定し、ネットワーク全体に適用します。
Anycast と他の DNS アーキテクチャ
Anycast 対 Unicast
| 特徴: | キャスト | ユニキャスト |
|---|---|---|
| ルーティング | 最寄りのサーバー | 特定のサーバー |
| レイテンシー | ロー(ローカル) | 変数(距離ベース) |
| 冗長性 | 作り付け | 追加IPが必要 |
| DDoSの保護 | 分散吸収 | 単一ポイント 脆弱 |
| 複雑さ | Higher (BGPルーティング) | シンプル(ダイレクトルーティング) |
Anycast 対 GeoDNS
| 特徴: | キャスト | ジオDNS |
|---|---|---|
| ルーティングレイヤー | ネットワーク(BGP) | アプリケーション(DNS) |
| フェールオーバー | 自動制御 | 構成される |
| グラノーラティ | ネットワークの近接 | 地理的な地域 |
| IPアドレス | 世界中で同じIP | 地域ごとの異なるIP |
| ユースケース | グローバルパフォーマンス | 地域コンテンツ配信 |
パフォーマンスの比較
DNS の問い合わせの決断の時間
Test: 1000 DNS queries from various global locations
Unicast DNS (single server in US):
Average: 145ms
Min: 12ms (US queries)
Max: 340ms (Asia/Australia queries)
Anycast DNS (20 global PoPs):
Average: 18ms
Min: 5ms
Max: 45ms
Performance Improvement: 87% faster average response
リアルタイムテスト
# Test anycast DNS performance
for location in us-east eu-west asia-pacific; do
dig @1.1.1.1 example.com | grep "Query time"
done
# Results:
# US East: Query time: 8 msec
# EU West: Query time: 11 msec
# Asia Pacific: Query time: 14 msec
# Compare to unicast:
dig @unicast-server.com example.com | grep "Query time"
# Query time: 167 msec (from Asia)
Anycastの制限
1. 無状態の議定書の条件
Anycast は、DNS のようなステートレスプロトコルで動作します。
- 各問い合わせは独立しています
- 必要なセッションの持続性無し
- レスポンスは前のクエリに依存しません
- セッション状態を必要とするTCP接続
- プロトコルのストリーミング
- データベース接続
2. ルーティングアシメトリー
トラフィックは異なるパスを取ることができます。
Query: User → Nearest anycast server → Response
Next Query: User → Different server (if routing changes)
3. BGPの一貫性の時間
障害中、BGPルーティングの更新は時間がかかります。
Server Failure → BGP update propagation (30-120 seconds)
During convergence: Some queries may fail
After convergence: Traffic rerouted automatically
Anycast DNS の監視
キーメトリック
場所による応答時間:# Monitor from multiple locations
curl "https://api.monitoring-service.com/dns/check?domain=example.com&locations=all"
PoPごとのAvailability:
- 各拠点で稼働時間を追跡
- 地域の障害に対する警告
- クエリの成功率を監視
PoP Statistics:
US East: 35% of queries
EU West: 28% of queries
Asia: 22% of queries
Other: 15% of queries
健康チェック
# Verify anycast is working
dig +short @anycast-server.com example.com
# Test from multiple locations
for server in probe1 probe2 probe3; do
ssh $server "dig @anycast-ip example.com +short"
done
# Should see responses from geographically appropriate servers
ベストプラクティス
##1. Authoritative DNS の Anycast を使用する
任意のキャストDNSホスティングへの切り替え:
- グローバルパフォーマンスの向上
- 高い可用性
##2. GeoDNSと組み合わせる
GeoDNS (応用) の層の Anycast (インフラ):
Anycast → Fast routing to nearest DNS server
GeoDNS → Return geographically appropriate IP addresses
##3. すべてのPoPを監視
各キャストの場所の監視を設定します。
- DNSクエリの成功率
- 応答時間
- 可用性の割合
##4. BGPコンバージェンスのための計画
インシデント中、30〜120秒のルーティング更新を期待:
- 期待される行動を伝えます
- 適切な監視境界を設定
- 過渡ルーティング変更のオーバーアーサーしないでください
##5. 障害検閲検査
お使いのどのキャストネットワークが故障を処理するかを定期的にテストします。
# Simulate PoP failure
# Verify traffic reroutes automatically
# Measure convergence time
# Check user impact
Anycast DNS は、現代的で高性能なインターネットインフラに不可欠です。高速な DNS の解像度、自動冗長性、およびビルトインの DDoS 保護を提供し、グローバルオーディエンスにサービスを提供しています。