ASN(Autonomous System Number)
概要
ASN(Autonomous System Number) は、インターネット上で独自のルーティングポリシーを運用する自律システム(AS)を一意に識別するための番号です。RFC 6793(2012 年)で 4 バイト(32 ビット)の ASN が定義されており、初期の 2 バイト(16 ビット)ASN は RFC 1930(1996 年)で規定されました。
自律システムとは、単一の組織(ISP、大企業、クラウドプロバイダーなど)が管理するネットワークの集合体です。AS はそれぞれ独自のルーティングポリシーを持ち、BGP(Border Gateway Protocol、RFC 4271)を使って他の AS と経路情報を交換します。インターネットは約 75,000 の AS が相互接続して構成されるネットワークの集合体であり、ASN はその中の各ネットワークを識別する住所のような役割を果たしています。
ASN は IANA から 5 つの RIR(地域インターネットレジストリ)に割り当てられ、さらに各 RIR から ISP や大規模組織に配布されます。日本では APNIC(アジア太平洋地域の RIR)が管理し、JPNIC を通じて割り当てが行われます。
仕組み
ASN の番号体系、BGP でのルーティング、IP プレフィックスとの対応関係、RPKI による経路検証を順に説明します。
ASN の形式
ASN は 2 つの形式があります。
| 形式 | 範囲 | 導入時期 |
|---|---|---|
| 2 バイト ASN | 1〜65535 | RFC 1930(1996 年) |
| 4 バイト ASN | 1〜4294967295 | RFC 6793(2012 年) |
2 バイト ASN は 65,535 番までしかなく、インターネットの成長に伴い枯渇が懸念されたため、4 バイト ASN に拡張されました。4 バイト ASN は asdot 表記(例: 1.10)と asplain 表記(例: 65546)の 2 つの書き方があります。現在は asplain 表記が標準です。
予約済みの ASN には次のものがあります。
| ASN | 用途 | RFC |
|---|---|---|
| 0 | 予約(使用不可) | RFC 7607 |
| 23456 | 2 バイト AS との互換用 | RFC 6793 |
| 64496〜64511 | ドキュメント・サンプル用 | RFC 5398 |
| 64512〜65534 | プライベート ASN | RFC 6996 |
| 65535 | 予約 | RFC 7300 |
| 4200000000〜4294967294 | プライベート ASN(4 バイト) | RFC 6996 |
プライベート ASN は組織内部や ISP との接続で使われます。インターネット全体に広告することは想定されていません。
BGP と ASN の関係
BGP はインターネットのドメイン間ルーティングプロトコルです。AS 間で IP プレフィックス(CIDR ブロック)の到達性情報を交換し、パケットの転送先を決定します。
BGP のルート広告には AS_PATH 属性が含まれます。AS_PATH はそのプレフィックスに到達するまでに経由する AS の一覧です。
プレフィックス: 198.51.100.0/24
AS_PATH: 64501 64502 64503
この例では、198.51.100.0/24 に到達するために AS64501 → AS64502 → AS64503 の順に経由することを示します。AS64503 がこのプレフィックスの起源(origin)AS です。
BGP の経路選択では AS_PATH の長さが短い経路が優先されます。AS_PATH は「ホップ数」に相当し、短い方がネットワーク的に近い経路と判断します。
IP プレフィックスと ASN の対応
1 つの AS は複数の IP プレフィックスを広告でき、1 つの IP プレフィックスを複数の AS が広告することもあります(マルチホーミング)。代表的な AS とその IP プレフィックスの例です。
AS13335 (Cloudflare) → 1.1.1.0/24, 104.16.0.0/13, ...
AS15169 (Google) → 8.8.8.0/24, 142.250.0.0/15, ...
AS16509 (Amazon/AWS) → 3.0.0.0/15, 52.0.0.0/11, ...
AS2497 (IIJ) → 210.130.0.0/16, ...
IRR(Internet Routing Registry)
IRR は ASN と IP プレフィックスの対応関係を登録・公開するデータベースです。ネットワーク運用者は自分の AS が広告する IP プレフィックスを IRR に登録し、他の AS がその情報を使ってルーティングフィルターを構築します。
主要な IRR には RADB、RIPE DB、APNIC DB、ARIN DB があります。IRR の登録情報は RPKI(Resource Public Key Infrastructure、RFC 6480)と併用してルート広告の正当性を検証する基盤として使われています。
RPKI によるルート検証
RPKI は ASN と IP プレフィックスの対応を暗号的に証明する仕組みです。ROA(Route Origin Authorization)というオブジェクトで「このプレフィックスを広告してよい ASN」を宣言します。
ROA:
プレフィックス: 198.51.100.0/24
起源 ASN: AS64503
最大プレフィックス長: /24
RPKI の検証により、権限のない AS がプレフィックスをハイジャック(不正広告)することを検知・防止できます。2024 年時点で、グローバルな IPv4 プレフィックスの約 50% が ROA を持っています。
具体例
代表的な ASN の一覧と BGP ルート広告の概念図を示します。
よく知られた ASN
AS13335 Cloudflare, Inc.
AS15169 Google LLC
AS16509 Amazon.com, Inc.
AS8075 Microsoft Corporation
AS2497 Internet Initiative Japan Inc.
AS2516 KDDI Corporation
AS4713 NTT Communications Corporation
AS7684 Sakura Internet Inc.
BGP ルート広告の概念図
AS64501(ユーザーの ISP)
↕ BGP ピアリング
AS64502(トランジット ISP)
↕ BGP ピアリング
AS64503(コンテンツプロバイダー)
→ 198.51.100.0/24 を広告
AS64501 のルーティングテーブル:
198.51.100.0/24 via AS64502 AS64503 (AS_PATH 長: 2)
確認方法
特定の IP アドレスがどの ASN に属しているかを調べるには、Team Cymru の DNS サービスを使う方法が手軽です。
dig +short TXT 8.8.8.8.origin.asn.cymru.com
"15169 | 8.8.8.0/24 | US | arin | 2023-12-28"
8.8.8.8 が AS15169(Google)に属し、8.8.8.0/24 のプレフィックスで ARIN に登録されていることがわかります。
ASN の詳細情報を確認するには次のコマンドを使います。
dig +short TXT AS15169.asn.cymru.com
"15169 | US | arin | 2000-03-30 | GOOGLE, US"
whois でも ASN の情報を確認できます。
whois AS15169
特定のドメインがどの ASN にホストされているかを調べるには、まず A レコードを引き、その IP アドレスの ASN を確認します。
dig A example.com +short
dig +short TXT 93.184.215.14.origin.asn.cymru.com
外部の視点からドメインの IP アドレスと逆引き情報を確認したい場合は、Labee Dev Toolbox の IP API を使うと、外部の視点から見た結果を取得できます。
curl "https://labee.dev/api/ip?ip=8.8.8.8"
{
"success": true,
"data": {
"ip": "8.8.8.8",
"type": "IPv4",
"isPrivate": false,
"ptr": "dns.google"
},
"error": null,
"meta": { "responseTime": 42 }
}
data.ptr フィールドの逆引き結果から組織を推測し、data.isPrivate でパブリック IP であることを確認したうえで、Team Cymru の DNS サービスで ASN を特定する流れが実用的です。
よくある問題
ASN と BGP の運用で発生しやすいセキュリティリスクと設定ミスを整理します。
BGP ハイジャック
権限のない AS が他の AS の IP プレフィックスを BGP で広告すると、トラフィックが攻撃者の AS に誘導されます。2018 年の Amazon Route 53 ハイジャックでは、AS10297 が AS16509(Amazon)の IP プレフィックスの一部を不正広告し、暗号通貨サービスへのトラフィックを窃取しました。RPKI の ROA を登録し、受信側でルート検証(Route Origin Validation)を有効にすることが対策です。
プライベート ASN のリーク
プライベート ASN(64512〜65534、4200000000〜4294967294)は内部利用を想定しており、インターネットに広告してはいけません。誤ってプライベート ASN が AS_PATH に含まれた経路を外部に広告すると、ルーティングの不整合を引き起こす可能性があります。BGP のフィルターでプライベート ASN を含む経路の送信をブロックします。
ASN 移行時のルーティング不安定
組織の合併や ISP の変更で ASN を移行する場合、旧 ASN から新 ASN への切り替え中にルーティングが不安定になることがあります。移行期間中は旧 ASN と新 ASN の両方でプレフィックスを広告し、段階的に旧 ASN の広告を縮小して新 ASN に集約します。IRR と RPKI の ROA も新 ASN に更新する必要があります。