ルーティングとは?選択の連続

[voice icon=”https://tomslifestylelab.com/wp-content/uploads/2019/05/tom0212.png” name=”この記事を書いている人” type=”l”]

ネットワークエンジニア
Tom

Tomとかいうやつが何者なのか知りたい方は下のプロフィールをご覧ください。

プロフィール

[/voice]

こんにちは、Tomです。

今回は、

「ルーティング」

について解説していきます。

さっそくいってみましょう!

1.ルーティングとは?

ルーティングとは、

「ルートを選択すること」

です。

何のルートを選択するのかというと、

「パケットが通るルートの選択」

をするのです。

パケットとは、インターネットなどのネットワークでやり取りされるデータのことです。
あなたが今、インターネットを使って私のブログを見ているときも、この表示されている画面データがパケットとして、あなたのパソコンに送られています。

といっても、いきなり「ルーティング」の詳しい内容について話してもわからないので、宅配便に例えて説明します。

 

例えば、あなたが大阪にあるお店の通販サイトで商品を購入したとしましょう。

よく、ネット通販で商品を購入すると、注文確認メールに宅配会社の追跡サービス番号が書かれていませんか?

その番号を宅配会社のWebサイトに入力すれば、自分の荷物がどこまで届いているのか確認することができます。

私も、「早く届かないかなあ」って待ち遠しいので、よく確認しています。

 

その、追跡サービスの検索結果欄に、「〇〇支店」とか「□□営業所」とか「△△センター」など、その荷物が経由した中継地点が書かれていると思います。

そしておそらく、その経由したルートというのは、宅配会社が持っている

大阪からあなたの住んでいる地域までの最適ルート

です。

 

宅配会社には、全国に支店や配送センターなどの多くの中継地点がありますが、それぞれの中継地点では、

この荷物は、次にどの中継地点に送ればいいのか

という配送ルートの選択が行われているのだと思います。

そして、そのおかげで私たちの荷物が最速で届いているのでしょう。

例えば、下の図のように。

それでは次に、インターネット上でパケットを届ける場合を考えてみましょう。

例えば、あなたがある音楽サイトで楽曲データをダウンロードしたとします。

このとき、楽曲データはインターネット上で、パケットとしてあなたのパソコンまで送られてきます。

そして、そのパケットは宅配便の荷物と同じように、様々な中継地点を経由していきます。
その中継地点が「ルータ」と呼ばれるネットワーク機器です。

 

インターネット上には無数のルータ(中継地点)がありますが、そこでは宅配会社の中継地点と同じように、

このパケットは、次にどのルータに送ればいいのか

という配送ルートの選択が行われています。

例えば下の図のように。

この作業こそが、

「ルーティング」

です。

だから、最初に言ったように、ルーティングとは「ルートを選択すること」なのです。

ルータは、ルーティングを行うことにより、「パケットを最適に配送先まで届ける」という重要な仕事をしています。

2.ルーティングテーブルとは?

ルータが、「パケットを配送先に届けるためにルーティングをしている」ということはわかりました。

では、どうやってどこに届けるかを判断しているのでしょうか?

 

その答えは、

「ルーテイングテーブルを見ている」

です。

 

ネットワーク上のそれぞれのルータは、「ルーティングテーブル」と呼ばれる配送表のようなものを持っています。

ルーティングテーブルには、

配送先のネットワークに送るには、自分のどのポートからパケットを送信すればいいのか

という一覧が記載されています。

これは先ほどの例のように、宅配会社の各中継地点で、

配送先の住所(例:東京都千代田区)に送るには、どの中継地点に送ればいいのか

という一覧があるのと同じことです。

ルーティングテーブルの場合は、次に送るルータ(中継地点)の名前が書かれているのではなく、次に送るルータが接続さているポートが書かれいる、という違いはあります。 

しかし、やっていることは同じです。

 

ここで疑問に思うかもしれません。

「直接つながっているルータに送るのはいいけど、どうやって離れたネットワークを認識しているの?」

 

その疑問にお答えするために、次にルータがどうやってルートを学習するのかを説明しましょう。

3.ルートの学習方法

ルータがルートを学習する方法は3種類あり、それぞれ学んだ方法によってルートの名前が違います。

それは、

  • 直接接続ルート
  • スタティックルート
  • ダイナミックルート

です。

「直接接続ルート」というのは、その名の通りです。

そのルータに直接つながっているルートのことを言います。

直接つながっているルートは、自動的に学習します。

 

それでは、離れたネットワークまでのルートはどうやって学習するのでしょうか?

それが、残り2つの「スタティックルート」と「ダイナミックルート」です。

3-1.スタティックルート

「スタティックルート」とは、人間が直接ルータに学習させたルートのことを言います。

“人間が学習させた”というのは、要するに“人間が設定した”ということです。

ルータにパソコンをつないで、ルートの情報を設定してあげます。

そうすると、ルータのルーティングテーブルにスタティックルートが登録されます。

 

ここで、スタティックルートの「static」とは「静的」という意味です。

これは、命名した人にしかわかりませんが、人間が手動で設定したルートなので、変更しない限り“変動することがないルート”という意味なのだと思います。

3-2.ダイナミックルート

次に「ダイナミックルート」とは、「ルーティングプロトコル」によって自動的に学習したルートのことを言います。

ここで、「ルーティングプロトコル」とは、ルータにルートを学習させるためのプロトコルのことです。

ルーティングプロトコルには、RIP、OSPF、BGPなどがありますが、それらについては別の記事にまとめたいと思います。

 

ルーティングプロトコルが設定されたルータでは、ルートの情報を他のルータと交換します。

それらの情報がルーティングテーブルにダイナミックルートとして登録されます。

 

ダイナミックルートの「dynamic」とは、「動的」という意味です。

こちらも命名した人にしかわかりませんが、自動的にルートを学習するので、“変動するルート”という意味なのだと思います。

4.まとめ

いかがでしたでしょうか?

今回は「ルーティング」について概要をご説明しました。

具体的な設定方法などは、また別の記事にまとめたいと思います。

 

もし、今回の記事でTCP/IPについての知識が足りないと感じた場合は、以下の記事をご覧ください。

TCP/IPとは?初心者がTCP/IPを理解するための完全ガイド

それでは、最後まで読んでくださりありがとうございました。