11月19日(火)3コマ目

今日、やったこと

パケット解析3

今日のホワイトボード

前回の「パケット解析3」のつづき。前回はイーサネットヘッダ、IPヘッダまでを解析。

IPヘッダのプロトコル番号0x06から上位プロトコルはTCP。よって、今日はTCPヘッダから。

TCPヘッダ

TCPヘッダ部をフォーマットに従って切り取ると以下のようになる。

図 TCPヘッダ

各項目を解析すると以下のとおり。

図 TCPヘッダ解析結果1

TCPヘッダはIPヘッダと同じように可変長。受信側はヘッダ長でTCPヘッダの長さを調べる。

このパケットのTCPヘッダのヘッダ長は20バイト。オプションはなし。

また、宛先ポート番号80から上位プロトコルはHTTPだとわかる。

図 TCPヘッダ解析結果2

コントロールフラグには、受信側はこのパケットのデータ(TCPヘッダよりあと)を上位プロトコル(HTTP)にすぐ渡す指定がある。

コネクション確立時のパケットならもっと見るべきものがあるが、今回はこの程度でOK。


HTTPヘッダ

このパケットはクライアントからサーバーへのリクエストパケット。

よって、HTTPヘッダの先頭はリクエストライン。

リクエストライン

パケットは以下のとおり。

図 HTTPヘッダ リクエストライン

解析する(ASCIIコードに従って文字に戻す)と以下のとおり。

図 HTTPヘッダ リクエストライン 解析結果

このあとリクエストヘッダフィールドがつづく。

リクエストヘッダフィールド

パケットは以下のとおり。

図 HTTPヘッダ リクエストヘッダフィールド

解析する(ASCIIコードに従って文字に戻す)と以下のとおり。

図 HTTPヘッダ リクエストヘッダフィールド 解析結果


一般ヘッダフィールド

パケットは以下のとおり。

図 HTTPヘッダ 一般ヘッダフィールド

解析する(ASCIIコードに従って文字に戻す)と以下のとおり。

図 HTTPヘッダ 一般ヘッダフィールド 解析結果

本当はこのあとにもまだまだ続くが、今回はここまで。


次回は

パケット解析のテスト第2弾を実施。

ひきつづきパケット解析。

 

このブログの人気の投稿

10月1日(火)3コマ目

11月26日(火)3コマ目

12月24日(火)3コマ目