◆IPデータグラムとIPヘッダ※ネットワークの学習は、TCP/IPを学ぶことから始めることをオススメします。TCP/IPは、今日のLANやインターネットを支えている重要な技術になっています。ここでは、これからネットワークを学ぼうとする方に必要なネットワークの用語やテクノロジーの紹介、そして、TCP/IPプロトコルの基礎知識を中心に説明してゆきます。◆IPデータグラムとIPヘッダ通信相手のアドレス情報を取得した後は、実際にデータを含んだパケットを送り出してゆくわけですが、IP層から送り出されるパケット(IPデータグラム)は、IPヘッダとデータからなっています。ここでは、IPデータグラムとIPヘッダについて説明してゆきます。●IPデータグラムIPヘッダの基本ヘッダ部分は、20バイト(160bit)で構成されています。オプションは、必ず付けなければならないというものではありません。●IPヘッダIPヘッダ内の各フィールドの情報について説明してゆきます。IPヘッダは、基本ヘッダのサイズが20バイトなので、標準で20バイトです。これにオプションを付けると20バイトを超えることになりますが、全体のサイズは、必ず4の倍数のバイト数になるように調整されるようになっています。各フィールドの説明は、以下の通りです。1.バージョン(4bit)「4」であれば、IPv4、「6」であれば、IPv6であることを示します。TUBA2.ヘッダ長(4bit)IPヘッダーの長さを示します。Service)ビットには、IPパケットの優先順位を決めるための数値が格納されます。4.パケット長(16bit)IPヘッダとデータを含めたパケット全体の長さ示します。フラグ」、「フラグメントオフセット」は、データの分割と組み立てに関わる情報です。5.識別番号(16bit)大きなデータを運ぶ時、ネットワークの境界で、MTUのサイズを超えてしまう場合があります。このデータを送るには、複数のパケットにに分割して送る必要があります。その際、もとは同じで分割されたデータなのか、全く別のデータなのかを識別するために使用します。分割されたデータのIPヘッダ内の「識別番号」には、全て同じ値が入ります。「識別番号」が同じであれば、もとのデータは、もともとは、1つのデータであったことが分かります。6.フラグ(3bit)IPパケットの分割を制御する時に使用されます。最後のフラグメントであることを示す。後続のパケットが存在することを示す。7.フラグメントオフセット(13bit)分割されたパケットが、元のデータでは、どこの位置にあるのかを表します。単位は8オクテットで、最大8×8,192(213)=65,536オクテットになります。Live)は、生存時間です。ルータを経由する度に基本的には、1づつ減ってゆき、0になった時点でパケットが破棄されるようになっています。9.プロトコル(8bit)IPの上位層プロトコルを表し、次のプロトコルが定義されています。IGRP10.ヘッダチェックサム(16bit)IPパケットに誤りがないかどうかをチェックするためにあります。TTL値は、ルータを経由する度にTTL値が変わるので、ルータを経由する度に、各ルータで再計算されます。11.送信元IPアドレス(32bit)送信元のIPアドレスが入ります。12.宛先IPアドレス(32bit)宛先のIPアドレスが入ります。13.オプション(可変)IPパケットに付加するオプションを指定します。14.パディング:Padding(可変)オプションを指定した場合、長さが32ビット(4バイト)の倍数のバイト数になるように0で穴埋め(パディング)をして調整するために使用します。