投稿

12月, 2021の投稿を表示しています

12月9日(木)2コマ目

イメージ
今日、やったこと HTTPパケット解析確認テスト Webの基本 今日のホワイトボード Webの基本 WebサーバーはHTMLで書かれたHTMLファイルが保存されています。 クライアント(Webブラウザ)はサーバーにこのHTMLファイルをリクエストします。 サーバーはリクエストされたHTMLファイルがあれば、そのファイルの中身をクライアントへ返信します。 クライアントからサーバーへのHTMLファイルのリクエスト方法や、サーバーからクライアントへHTMLファイルの中身の返信方法がHTTPで決められています。 図 Webの基本 次回からは HTMLについて話をします。

12月2日(木)2コマ目

イメージ
今日、やったこと HTTPパケット(パケット4)解析の解説 今日のホワイトボード  HTTPパケット(パケット4)の解説をしました。 イーサネットヘッダ とくにややこしいところはないと思います。 タイプが0x0800から上位プロトコルはIP。よって、イーサネットヘッダのあとにはIPヘッダが続きます。 図 イーサネットヘッダ IPヘッダ これも特に問題はないと思います。 プロトコル番号が0x06から上位プロトコルはTCP。よって、IPヘッダのあとにはTCPヘッダが続きます。 図 IPヘッダ TCPヘッダ 宛先ポート番号が80。TCPの80番ポートはHTTPのサーバーが利用するポート。 よって、上位プロトコルはTCPで、クライアントからサーバーへのHTTPのパケットだとわかります。 図 TCPヘッダ HTTPヘッダ HTTPヘッダは文字データをASCIIで符号化したデータが格納されている。1バイトずつASCIIコード表に従って文字に戻せばいい。 データ間の区切りはCR(0x0d)、LF(0x0a)。 このパケットはクライアントからサーバー(TCPヘッダの宛先ポート番号80)宛てのパケット。 先頭はリクエストヘッダライン。続いてリクエストヘッダフィールドが続く。 リクエストヘッダライン 1バイトずつ文字に戻す。 図 HTTPヘッダ リクエストライン① 図 HTTPヘッダ リクエストライン② 図 HTTPヘッダ リクエストライン まとめ GETコマンドで/index.htmlをリクエストしている。 HTTPのバージョンは1.1を指定。 リクエストヘッダフィールド CR(0x0d)+LF(0x0a)区切りで複数のデータが連続している。 データは フィールド名:フィールド値 のフォーマット。 このパケットではHostとUser-Agentの2つのフィールド名に対するフィールド値がある。 図 HTTPヘッダ リクエストヘッダフィールド① 図 HTTPヘッダ リクエストヘッダフィールド② 図 HTTPヘッダ リクエストヘッダフィールド まとめ 次回は HTTPパケット解析のテストをします。