ルーティングとは?| IPルーティング

インターネットにおいてルーティングとは、データのIPパケットを発信元から宛先に送る方法です。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • インターネットルーティングの仕組みを理解する
  • 「ルーター」を定義する
  • さまざまなルーティングプロトコルを確認する

記事のリンクをコピーする

ルーティングとは?

Network routing is the process of selecting a path across one or more networks. The principles of routing can apply to any type of network, from telephone networks to public transportation. In packet-switching networks, such as the Internet, routing selects the paths for Internet Protocol (IP) packets to travel from their origin to their destination. These Internet routing decisions are made by specialized pieces of network hardware called routers.

次の画像について考えてみましょう。データパケットがコンピューターA からコンピューターBに到達するためには、ネットワーク1、3、5、またはネットワーク2、4のどちらを通過すべきでしょうか。パケットはネットワーク 2、4を選ぶとより短いパスを通過できますが、ネットワーク 1、3、5の方が、2、4よりもパケットの転送速度が速いかもしれません。これらは、ネットワークルーターが絶えず行う選択肢の例です。

IPルーティングの図

ルーティングの仕組み

ルーターは、内部ルーティングテーブルを参照して、ネットワークパスに沿ってパケットをルーティングする方法を決定します。ルーティングテーブルは、ルーターが担うすべての宛先にパケットが到達するまでのパスを記録します。さて、列車の乗客がどの列車に乗るかを決めるためにチェックする時刻表を考えてみてください。ルーティングテーブルは時刻表のようなものですが、列車ではなくネットワークパス用です。

ルーターは、次のように機能します。ルーターがパケットを受信すると、パケットのヘッダー*を読み取り、宛先を確認します。これは、列車の車掌が乗客のチケットを確認し、どの列車に乗るべきかを判断する方法に似ています。次に、ルーティングテーブル内の情報に基づいて、パケットのルーティング先を決定します。

ルーターは、数百万のパケットに対して、1 秒間に数百万回これを行います。パケットが宛先まで移動する際に、さまざまなルーターによって複数回ルーティングされることがあります。

ルーティングテーブルには、静的テーブルと動的テーブルがあります。静的ルーティングテーブルは変更されません。ネットワーク管理者は、手動で静的ルーティングテーブルを設定します。静的ルーティングでは、管理者が手動でテーブルを更新しない限り、データパケットがネットワークを通過するルーティングは基本的に変更不能です。

動的ルーティングテーブルは自動的に更新されます。動的ルーターは、さまざまなルーティングプロトコル(下記参照)を使用して、最短パスと最速パスを決定します。また、パケットが目的地に到達するまでの所要時間に基づいてこの決定を行います。これは、Google Maps、Waze、その他のGPSサービスが、過去の走行性能と現在の走行状況に基づいて最適な走行ルートを決定する方法に似ています。

動的ルーティングには、より多くのコンピューティング能力が必要です。そのため、小規模なネットワークは静的ルーティングに依存することが多いのです。しかし、中規模および大規模ネットワークでは、動的ルーティングの方がはるかに効率的です。

*パケットヘッダーは、パケットに添付されたデータの小さな束で、パケットがどこから来ているか、どこに向かっているかなど、役立つ情報を提供します。これは郵便小包の外側に貼られた梱包伝票のようなものです。

主要なルーティングプロトコル

ネットワークにおいて、プロトコルとは、接続されているすべてのコンピューターがデータを理解できるように、データをフォーマットする標準化された方法です。ルーティングプロトコルは、ネットワークパスの識別または報告に使用されるプロトコルです。

下記のプロトコルは、データパケットがインターネット上で行先を見つけるのに役立ちます:

IP: インターネットプロトコル(IP)は、各データパケットの発信元と宛先を指定します。ルーターは各パケットのIPヘッダーを調べて、送信先を特定します。

BGP: ボーダーゲートウェイプロトコル(BGP)ルーティングプロトコルは、どのネットワークがどのIPアドレスを制御し、どのネットワークが相互に接続するかを報告するために使用されます。(これらの BGPアナウンスを行う大規模なネットワークは、自律システムと呼ばれます)。BGPは、ダイナミックルーティングプロトコルです。

次のプロトコルは、AS(自立システム)内のパケットをルーティングします:

OSPF:Open Shortest Path First(OSPF)プロトコルは、ネットワークルーターによって一般的に使用され、パケットを宛先に送信するための最速ルートと最短ルートを動的に識別します。

RIP:ルーティング情報プロトコル(RIP)は、「ホップカウント」を使用して、あるネットワークから別のネットワークへの最短パスを検索します。「ホップカウント」とは、パケットが通過しなければならないルーターの数を指します。(パケットが 1 つのネットワークから別のネットワークに移動する場合、これを「ホップ」と呼びます。)

その他の内部ルーティングプロトコルとして、EIGRP(Enhanced Interior Gateway Routing Protocol、主にシスコ社製ルーターで使用)や、IS-IS(Intermediate System to Intermediate System)などがあります。

ルーターとは?

ルーターは、パケットを宛先に転送するネットワークハードウェアの一部です。ルーターは2つ以上のIPネットワークまたはサブネットワークに接続し、必要に応じてそれらの間でデータパケットを渡します。ルーターは、家庭やオフィスで、ローカルネットワーク接続を設定するために使用されます。より強力なルーターはインターネット全体で機能し、データパケットが宛先に到達するのを助けます。

Cloudflareはルーティングの効率化や安全性をどう実現させるか

Cloudflare ArgoはSmart Routingを使用して、インターネット上で最速のルーティングを特定し、混雑の多いネットワークを回避してパケットを送信します。この結果は、交通渋滞を回避して、経路を検索する場合と似ています。データパケットは速く到着し、ユーザーのオンライン体験が高速化されます。

Cloudflare Magic Transit は、BGPを使用して、Cloudflareのお客様に代わってIPサブネットを報告します。これらのIPアドレスへのネットワークトラフィックは、お客様のネットワークに直接送信されるのではなく、Cloudflareのグローバルネットワークを介してルーティングされます。Cloudflareは、正当なトラフィックを転送する前に、すべての攻撃トラフィックをフィルタリングします。

ネットワーク層について