ネットワーク基礎的な事 IP編

今日なに書いていいか全然思いつかなかったから、

とりあえず基礎ができていないということでネットワークの基礎

かなり広いからIP編

ていってもIPもかなり広いから全体像など

「IP」(internet protocol)

 

まずIPがなにに使われているか

一番有名なのがインターネットです

よく聞くtcp/ipですね

ほかにもいろいろあるけど省略

 

IPは、「IPパケット」という単位でデータをやりとりする。

上位プロトコルTCP/IPの場合は、TCPUDP)から渡されたデータを、IPアドレスに基づいて、最終的なあて先として指定されたコンピュータまで届ける。

このIPパケットの先頭部分(IPヘッダの部分)には、パケットの送信元のIPアドレスとあて先のIPアドレス、そして上位層から渡されたデータや上位のプロトコル・タイプ、IPルーティング作業を実行するために必要な情報などが入っている。

 

流れ的な事でいうとhttpはtcpを利用して、tcpはipを使って通信をしている。

 

IPアドレスはIPパケットのあて先を示すために使われる情報である。

パソコンやサーバーなどのコンピュータには、1台ずつ異なるIPアドレスを割り当てる。また、そのようなコンピュータが所属するネットワークにも、IPアドレスを割り当てる。

 

コンピュータ(ホスト)に割り当てるIPアドレス「ホスト・アドレス」。

ネットワークに割り当てるIPアドレスを「ネットワーク・アドレス」。

ネットワークアドレスが同一のグループは1つの“ネットワーク”として扱われます。

つまり198.168.1.0というネットワークアドレスなら

198.168.1.1というホストアドレスや198.168.1.2、198.168.1.3...など割り当てられます。

198.168.2.0だったら198.168.2.2、198.168.2.3...などね

 

IP(V4)には、通信方式に対応して4種類のアドレスが用意されている。(1)ユニキャスト・アドレス、(2)マルチキャスト・アドレス、(3)ブロードキャスト・アドレス、(4)ループバック・アドレス

 

 (1)のユニキャスト・アドレスは、2台のコンピュータ同士が1対1でIPパケットを送受信するために使われる。

 (2)のマルチキャスト・アドレスは、特定のグループに所属するパソコンだけに、同じデータを同時に送信するために使う。例えば、映像配信をパソコンで受信するような場合、パソコンにマルチキャスト・アドレスを割り当てる。ルーターは、パソコンからの要求に応じて、マルチキャストのパケットを送るようになる。このほか、特定の機器がマルチキャストを利用する場合などは、その機器に決められたマルチキャスト・アドレスを割り当てておく。

 (3)のブロードキャスト・アドレスは、LAN内のすべての端末に同じデータを同時に送信するときに使われる。

 (4)は、自分自身を示すためのアドレス。

 

このIPパケットを運ぶ役割を果たすのは「ルーター」です

ルータの主な機能は、その名のとおりに経路(ルート)の計算です。

 

IPパケットを受け取ったルーターは、適切な転送先を判断してIPパケットを中継する。いくつものルーターがこうした処理を繰り返すことで、IPパケットはバケツ・リレーのように転送され、最終的なあて先に届けられる。

ルータは、IPアドレスに基づいてIPパケットのあて先を判断し、最適な経路を選択して、IPパケットを送信する。

この動作を「ルーティング(routing)」といいます。

 

ルータには(通常は)2つ以上のネットワーク・インターフェイスが装備され、同時に複数のネットワークへ接続されています。ネットワーク間でのパケットのルーティングを担当するため、同時に2つ以上のネットワークに接続されていなければならないからです。

 

ルーターは接続されたネットワーク・アドレスの違いを基にしてパケットの中継を行う機器であるが、

 

このときに使われるのが

「ルーティング・テーブル」

と呼ばれるネットワーク・アドレス(とネットマスク)とネットワーク・インターフェイスの対応表である。

 

 実際にはルータだけでなく、TCP/IPをサポートしたシステムは必ずこのルーティング・テーブルを持っている。

ルーティング・テーブルには、どのネットワークあてのパケットを、どのインターフェイスを使って送信すればよいかが記述されている。具体的には、「Network Destination」と「Nemask」が送信先のネットワーク・アドレスを表し、「Interface」が送信に使用するネットワーク・インターフェイスを表している。

またルータ同士が相互に接続された場合には、それぞれのルータが接続されているネットワークのアドレスもお互いに知っておかないと正しいルーティングができないからです。例えば多数のルータが1つのLAN上で相互接続されているとする。あるルータがIPパケットをあて先Aに向けて送りたい場合、どのルータに向けてパケットを送信するのが最適かを判断するためには、それぞれのルータがどのネットワーク・アドレスを持っているかを知っていなければなりません。

TCP/IPネットワークでは、ネットワークの接続形態は「ツリー」ではなく、くもの巣のように相互に接続されている。そのため、あるノードから別のノードへの経路は一本だけでなく、複数存在することになる。これにより障害が発生しても別の経路へ迂回したり、負荷を分散したりすることができる。また通信量の多いネットワーク同士を直接接続することにより、スムーズに通信させたり、ほかのネットワークに与える影響を少なくしたりすることができる。

 

デフォルトゲートウェイ

 ルーティング・テーブルには、あて先ネットワーク・アドレスと使用するインターフェイスが記述されているが、その中に1つだけ「デフォルト・ルート」という特別なエントリが含まれている。デフォルト・ルートは、通常は「あて先ネットワーク・アドレス=0.0.0.0、ネットマスク=0.0.0.0」のエントリとして表現されている。

 これは、ほかのどのエントリも一致しなかった場合に利用される、特別なエントリである。IPパケットを送信する場合、まずルーティング・テーブルを検索して一致するネットワーク・アドレスを見付けるが、そのどれとも一致しない場合、つまり明示的なルートが指定されていない場合は、このデフォルトのルートが使用される。デフォルトのルートに指定されたあて先のIPアドレスを特別に「デフォルト・ゲートウェイ」と呼ぶ。

 

まとめ

ちょっと書きすぎたてかコピリ過ぎ

図を乗っけていないのでググってみた方がわかりやすいかも 笑