IPヘッダ

  0                   1                   2                   3   
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |  (1)  |  (2)  |      (3)      |              (4)              |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |              (5)              | (6) |           (7)           |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |      (8)      |      (9)      |              (10)             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                              (11)                             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                              (12)                             |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                      (13)                     |      (14)     |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 :                                                               :
                  Example Internet Datagram Header

http://www.rfc-editor.org/rfc/rfc791.txt

オプションがなければIPヘッダの長さは20バイト。

(1) Version(バージョン。4が入る。(4bit))
(2) IHL:Internet Header Length(インターネットヘッダ長:IPヘッダの長さを4オクテット単位で示す。(4bit→20〜64バイト))
(3) TOS:Type of Service(サービスタイプまたはDS(Differentiaterd Service)フィールド:QoSに用いる。(全体で8bit))
(4) Total Length(パケット長:IPヘッダとIPデータグラムを合わせたIPパケット全体の長さをオクテットで示す。(16bit→0-65535バイト))
(5) ID:Identification(識別子:IPデータグラムが分割された場合は、同じ値のものを集めれば復元できる。(16bit))
(6) Flags(パケットの分割についての制御:1ビット目は未使用で必ず0。2ビット目は0が分割可能、1が分割不可。分割されたパケットの場合、3ビット目は0が最後のパケット、1が途中のパケット。(全体で3bit))
(7) FO:Fragment Offset(フラグメントオフセット:データグラムが元のデータグラムのどこにあたるかを8オクテット単位(二進数で3bit左シフトする)で示す。(13bitだが8オクテット単位なので0-65535バイトまで示せる))
(8) TTL:Time to Live(生存時間:いくつのルータを経由できるかを示す。(8bit→255台まで))
(9) Protocol(プロトコル:次のヘッダのプロトコル、上位層が何であるかを示す。(8bit))
(10) Header Checksum(ヘッダチェックサム:IPヘッダのチェックサムTCPUDPのヘッダにあるチェックサムと異なり、IPヘッダのみのチェックを行う。ルータを通るとTTLが減るので、ルータはヘッダチェックサムを毎回必ず計算しなければならない。計算方法などはhttp://www.mew.org/~kazu/bsdmag/cksum.htmlが詳しい。(16bit))
(11) Source Address(送信元IPアドレス。(32bit))
(12) Destination Address(宛先IPアドレス。(32bit))
(13) Options(オプション:ほとんど使われない。(任意の長さ))
(14) Padding(詰め物:オプションの長さと合わせて32bitの整数倍になるよう0を入れる。)

2014 徹底解説ネットワークスペシャリスト本試験問題 (本試験問題シリーズ)

2014 徹底解説ネットワークスペシャリスト本試験問題 (本試験問題シリーズ)