FIG-092

ルーティング(OSPF / BGP) — 地図を持つか、うわさを信じるか

ネットワーク 2026.09.24 公開 読了 約12分

パケットには宛先のIPアドレスしか書かれていません。「どの道を通るか」は、途中のルーターが交差点ごとに決めています。この道選びがルーティングです。

ルーターはカーナビに似ています。地図を持ち、いちばん早く着く道を計算し、通行止めがあれば引き直す。図1の道路をクリックして、渋滞させたり通行止めにしたりしてみてください。パケットの通り道が勝手に切り替わるはずです。

OSPF — 地図を全員で持ち、各自で最短路を引く
ふつう 渋滞(コスト+8) 通行止め 道路をクリックで切り替え
2 3 2 2 6 2 3 6 2 2 自宅 A B C D E 目的地
いま選ばれている経路 —
合計コスト —
SHORTEST
いちばん早い道が選ばれている
図1 — 道が変わっても、パケット自身は何も知らない。交差点が勝手に案内を変える

OSPF — 全員が同じ地図を持つ

図1のような1つの組織の中で使われる代表が OSPF です。各ルーターは「自分の隣には誰がいて、そこまでのコストはいくつか」を全員に配ります。集まった情報をつなぎ合わせると、全員の手元に同じ地図ができあがります。

あとは各自がその地図の上で最短経路を計算するだけです(ダイクストラ法)。道路が1本切れれば、その知らせが全員に届き、全員が一斉に地図を描き直します。図1で通行止めにした瞬間に経路が切り替わるのはこれです。

ここでのコストは距離ではなく、管理者が決める「通りにくさ」です。回線が細いほど大きな値にするのが一般的で、ホップ数が少ない道が勝つとは限りません。図1で A→D の直通路(コスト6)が選ばれにくいのもそのためです。

BGP — 地図ではなく「うわさ」で道を選ぶ

インターネット全体となると、全員で1枚の地図を持つのは無理です。そこで組織(AS:自律システム)どうしは、「この住所ならうちを通れば行けます。途中でこのASを経由します」という広告を隣に伝え合います。これが BGP です。

受け取った側は、届いた広告の中から経由するASが少ないものを選ぶのが基本です。便利ですが、弱点があります。広告の中身が本当かどうかを、元々は誰も確かめていないのです。図2で、偽の標識を立ててみてください。

BGP — 標識を書き換えると、道ごと奪える
AS100 あなたのISP AS200 通信会社 AS300 通信会社 AS400 通信会社 AS500 本物の銀行 AS666 偽の標識 「203.0.113.0/24 はうちです」
AS100 のルーターに届いている広告(宛先 203.0.113.0/24)
AS200 → AS400 → AS500 3つ経由
AS300 → AS666 2つ経由
NORMAL
図2 — 近道に見える偽の標識が立つと、周りのルーターは素直にそちらへ曲がる

BGPハイジャックは実際に起きている

図2の「ハイジャック」は、他人の住所を自分のものとして広告するだけで成立します。受け取った側に悪意はなく、いつも通り近い道を選んだだけ。それでも宛先のトラフィックがごっそり別の組織へ流れます。設定ミスで起きることも多く、大手サービスが数時間まるごと見えなくなった事例が何度もあります。

対策の柱が RPKI です。「この住所ブロックを広告してよいのはこのAS」という持ち主の証明書(ROA)を登録しておき、受け取った広告と照合します。持ち主と違うASからの広告は捨てる。図2の「RPKIで検証」を押すと、偽の標識が無視されて本物の道に戻ります。

用語ミニ辞書
ルーティング
宛先に応じて、次にどのルーターへ渡すかを決めること。
OSPF
組織内で使う経路制御。全員で地図を共有し、各自が最短路を計算する。
コスト
リンクの通りにくさ。合計が小さい経路ほど優先される。
AS
自律システム。ISPや大企業など、1つの方針で運用されるネットワークの単位。
BGP
AS同士が「この住所ならこちらへ」と広告し合う、インターネットの経路制御。
RPKI / ROA
住所ブロックの正しい持ち主を証明し、偽の広告を見分ける仕組み。

まとめ

ルーティングは交差点ごとの道案内です。組織の中では OSPF が全員に同じ地図を配り、通行止めが出れば一斉に引き直す。組織の外では BGP が隣同士のうわさで道を選ぶので速く広がる反面、偽の標識にも素直に従ってしまう。図1と図2を行き来すると、「地図を持つ」と「うわさを信じる」の違いがそのまま見えます。