クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

ネットワーク同士の経路交換(BGP)

このレッスンのあとで: 二つのネットワークがBGPで経路を共有する仕組みを説明できる。

55分のレッスンコマンド3件BGP のラボ:2つの自律システムをブラウザーでつなぐ

二つの会社、一回の握手

あなたの店は、ある通信会社とインターネット接続を契約しています。ホスティング会社は、別の通信会社と契約しています。別々の組織です。

互いに、どのアドレスへ行けるかを伝え合わなければなりません。ただし、自分の網の中身を全部見せる必要はありません。

この会話のためのプロトコルがBGPで、インターネット全体を支えています。

このレッスンのゴール

メモ

二つのネットワークがBGPで経路を共有する仕組みを説明できる。

重要な言葉

ことばいみれい
自律システム一つの方針で運用する、一つの組織のネットワークAS 65001
AS番号自律システムを区別する番号
BGPセッション経路を運ぶ、BGPの隣同士の接続
広告自分が行けるネットワークを、隣に知らせること
ASパス経路が通ってきた自律システムの並び
ローカルプリファレンス経路を好む度合いを表す、自分で決める数。大きいほど勝つ

学生が入力するセルは、このプレビューでは空白です。

インターネットは自律システムの集まり

自律システムは、一つの組織のネットワークです。通信会社、大学、大きな会社などがそうで、それぞれにAS番号があります。

自律システムの中ではOSPFのようなプロトコルが道を探し、システムの間ではBGPが経路を運びます。

64512から65534までの番号は非公開用です。練習や、インターネットに出ない網で使います。

ルーター同士がセッションを張る

BGPのルーター同士は、ふつうのTCPの179番ポートでBGPセッションを開きます。このとき、互いにAS番号を名乗ります。

番号が違えば組織の間の外部セッション、同じなら組織の中の内部セッションです。

セッションが確立すると、広告するネットワークを交換します。

r1にBGPセッションを聞く

コマンド
sudo vtysh -N r1 -c "show bgp summary"

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

BGPなしのr1の表を読む

コマンド
sudo vtysh -N r1 -c "show ip route"

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

r1が待ち受けるポートを並べる

コマンド
sudo ip netns exec r1 ss -ltn

ここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。

三つの答えが言うこと

最初の実行は % BGP instance not found を出します。プログラムは動いていますが、AS番号を持つBGPルーターを誰も作っていません。

次の実行は、直接つながった経路とルーター自身のアドレスを並べます。BGPで学んだ経路を表す B の行はありません。

三つ目の実行は、待ち受けているポートを四つ並べます。どれも 127.0.0.1 上の、ルーター自身のコンソールです。179番はありません。

言われたものだけを広告する

BGPは、知っている経路を全部は共有しません。持ち主が許したネットワークだけを広告します。

ここがBGPの要です。世界から自分の網のどこへ行けるかを、組織が自分で決めます。

非公開のネットワークは、広告しないだけで外から見えなくなります。

例: ある会社の広告

ネットワーク中身広告する?
203.0.113.0/24公開しているウェブサーバーする
198.51.100.0/24公開しているメールサーバーする
10.50.0.0/16社内のノートPC。非公開しない
172.20.0.0/16建物の監視カメラ。非公開しない

学生が入力するセルは、このプレビューでは空白です。

経路は決まりの順で選ぶ

ルーターは、同じネットワークへの経路を、何人もの隣から聞くことがあります。その中から、順番に決まりを当てて一つ選びます。

まず、ASパスに自分のAS番号が入っている経路を捨てます。ぐるりと戻ってきた経路だからです。

次にローカルプリファレンスが一番大きいものが勝ちます。同じなら、ASパスが短い方が勝ちます。

本物のルーターは、この後にもいくつか決まりを当てます。このレッスンでは、最後の決まりを簡単にして、隣のアドレスが小さい方を勝ちとします。

例: 一つの先への三つの経路

聞いた相手プリファレンスASパス結果
隣A10065002 65010Bに負ける。同点でパスが長い
隣B10065003Aに勝つ。同点でパスが短い
隣C20065004 65005 65006全体で勝つ。プリファレンスが最大

学生が入力するセルは、このプレビューでは空白です。

よくある間違い

注意

「BGPは一番速い道を選ぶ」と思う人が多いです。BGPは速さを知りません。持ち主の好みに従い、その次に自律システムの数を数えます。ASパスが短くても、遅い回線かもしれません。

発展: もう一つの決まり

隣は経路にMEDという数を付けることがあります。自分のどのリンクを使ってほしいかを伝える数で、小さいほどよい値です。

best_route を写し、この決まりを足しましょう。ASパスの決まりの後で、med が小さい経路が勝ちます。med のキーが無い経路は0とします。

プリファレンスもパスの長さも同じで、med だけが違う二つの経路のテストを一つ書きましょう。

このラボとソースについて: BGP のラボ:2つの自律システムをブラウザーでつなぐ

授業で使いますか?このモジュールを学生に割り当てると、教員用ガイド、自動採点つきの課題、学生ごとのラボを使えます。