投稿

1月, 2026の投稿を表示しています

1月28日(水)1コマ目

イメージ
今日、やったこと HTTPパケット①(リクエストパケット)解析 HTTPパケット②(レスポンスパケット)解析 今日のホワイトボード HTTPパケット①(リクエストパケット)解析 前回配布したGETコマンドでWebページをリクエスト、そのレスポンスのパケットを解析。 イーサネットヘッダ 先頭から、 宛先MACアドレス 送信元MACアドレス タイプ の順に並んでいる。 図 イーサネットヘッダ 3つの項目は以下のとおり。 図 イーサネットヘッダの内容 タイプより、上位プロトコルはIPv4だとわかる。 IPヘッダ IPヘッダーのフォーマットに従って切り取り。 図 IPヘッダ 各項目は以下のとおり。 図 IPヘッダの内容 プロトコル番号より、上位プロトコルはTCPだとわかる。 TCPヘッダ  TCPヘッダーのフォーマットに従って切り取り。 図 TCPヘッダ 各項目は以下のとおり。 図 TCPヘッダの内容 宛先ポート番号の80はHTTPのウェルノウンポート。よって、上位プロトコルはHTTP。 HTTPヘッダ HTTPヘッダはビット単位でフォーマットが決まっているわけでなく、文字列データ+区切り[CR(0x0d)、LF(0x0a)]の連続。 1バイトずつ、ASCIIコード表を見ながら、文字に変換...

1月21日(水)1コマ目

イメージ
今日、やったこと HTTPパケット解析(前回のつづき) HTTPリクエストパケット解析 今日のホワイトボード HTTPパケット解析(前回のつづき) 前回 はイーサネットヘッダからIPヘッダ、TCPヘッダまでを解析。 TCPヘッダの宛先ポート番号がHTTPのウェルノウンポートである80から、TCPの上位プロトコルはHTTPだとわかる。 今日はHTTPヘッダーを解析。 HTTPヘッダーは 文字列データの集まり。ビット単位でフォーマットが決まってない。 文字列データ同士の間に区切りを表すCR(0x0d)、LF(0x0a)が入る。 なお、文字コードはASCII。 図 HTTPヘッダーの中は 解析結果 このパケットはクライアント=>サーバーのリクエストパケットなので、HTTPヘッダーはリクエストラインから始まる。 〇リクエストライン まずは、先頭のリクエストライン。 図 HTTPヘッダー パケット解析① リクエストヘッダー部は HTTPのメソッド リクエストするパス HTTPのバージョン が指定されている。 図 HTTPヘッダー解析結果① リクエストライン 〇ヘッダー部 つづいてヘッダー部。 図 HTTPヘッダー パケット解析② 図 HTTPヘッダー パケット解析③ フォーマットは  フィールド名:フィールド値 になっている。 フィールド名から、伝えたいデータがわかる。 図 HTTPヘッダー解析結果② ヘッダ部 HTTPリクエストパケット解析 リクエスト、レスポンスのパケットを解析する。 解析するパケットは下図のやり取りのパケット。 図 解析するパケット 次回は HTTPリクエストパケット解析結果確認。  

1月14日(水)1コマ目

イメージ
今日、やったこと ホームページを見る際のやりとり URL パケット解析 今日のホワイトボード ホームページを見る際のやりとり ホームページだけでなく、Webアプリケーションもクライアントとサーバーの間で、プロトコルHTTPに従って、パケットのやり取りが行われる。 図 クライアントとサーバーのやりとり URL ホームページをリクエストする際に プロトコル(httpまたはhttps) サーバー(ホスト名またはIPアドレス+ポート番号) パス クエリ文字列 の指定をURLで行う。 〇サーバー ホスト名(またはIPアドレス)とポート番号の組み合わせで指定する。 ポート番号はホスト名のあとに、:ポート番号で指定。 ポート番号は、ウェルノウンポート(HTTPなら80、HTTPSなら443)の場合は指定不要。 図 URL(ホスト名+ポート番号) 〇パス 公開ディレクトリのルートからリクエストするファイルへのパスを指定。 図 URL(パス) 〇クエリ文字列 クライアントからサーバーのデータを送信するために使う。 パスのあとに、 ?キー=値 で指定。 複数ある場合は、 キー=値&キー=値 のように、&でつなげる。 図 URL(クエリ文字列) HTTPのパケット解析 ネットワーク上を流れているパケットを解析。 パケットはプロトコルで決められたとおりにデータが並んでいるので、先頭から各プロトコルで決められているフォーマットに従って切り取っていく。 [パケット解析]イーサネットヘッダ 先頭はイーサネットヘッダ。項目は3つしかない。 図 イーサネットヘッダを解析 イーサネットヘッダの各項目は以下のとおり。 図 イーサネットヘッダの各項目 タイプから上位プロトコルはIPv4だとわかる。よって、イーサネットヘッダのあとにはIPヘッダが続く。 [パケット解析]IPヘッダ IPヘッダは可変長。先頭のヘッダ長でIPヘッダがどこまでか分かるようになっている。 図 IPヘッダを解析 IPヘッダの各項目は以下のとおり。 図 IPヘッダの各項目① パケット長はIPヘッダ以降の長さ。 図 IPヘッダの各項目② プロトコル番号より、IPの上位プロトコルはTCPだとわかる。よって、IPヘッダのあとには、TCPヘッダが続く。 [パケット解析]TCPヘッダ TCPヘッダもIPヘッダと同じように可変長。...