1.実験目的
- HTTPプロトコルおよびそのメッセージ構造を理解する
- HTTP操作の過程を理解する:TCPの三者ハンドシェーク、リクエストとレスポンスのやり取りを理解する
tcpdumpとwiresharkのソフトウェアを用いたHTTPデータパケットのキャプチャと解析技術を習得する
2.実験環境
- ハードウェア要件:Alibaba Cloud の ECS を1台。
- ソフトウェア要件:Linux/Windows オペレーティングシステム
3.実験内容
wgetを使用して新疆大学のトップページ**[www.xju.edu.cn](http://www.xju.edu.cn)**を利用して、tcpdumpでパケットをキャプチャして、wiresharkで解析します。
- ブラウザはHTTPバージョン1か1.1で動作しますか?サーバーはどのHTTPバージョンを動作させていますか?
- あなたのPCのIPアドレスは何ですか?サーバーのIPは?
- サーバーからブラウザへ返されたステータスコードは何ですか?
- サーバー上で取得したHTMLファイルはいつ更新されましたか?
- ブラウザへ返された内容のバイト数はいくつですか?
- 上記ですでに回答したフィールド以外、ヘッダにはどんなフィールドがありますか?データパケットの内容ウィンドウで生データを確認すると、データパケットリストには表示されていないヘッダはありますか?
4.実験結果と分析
1. 新疆大学のトップページのダウンロードとパケットキャプチャ

2. 抽出したファイルをwiresharkで分析する
2.1 HTTPプロトコルのフィルタリング

パケットキャプチャの結果から、クライアントがサーバーに単純なHTMLファイルをリクエストし、サーバーがそのファイルをクライアントへ返すことが分かる。
2.2 質問への回答
ブラウザが使用するHTTPバージョンは1か1.1ですか?サーバーが使用しているHTTPのバージョンは何ですか?ブラウザが使用しているHTTPバージョンは1.1、サーバーが使用しているHTTPのバージョンも1.1です。サーバーからブラウザへ返された状態コードは何ですか?返された状態コードは200で、リクエストの処理が成功したことを示します。サーバー上で取得したHTMLファイルはいつ更新されましたか?時刻はTue, 07 Jun 2022 07:02<12>12> GMTです。ブラウザへ返された内容のバイト数はいくつですか?0バイトの内容がブラウザへ返されました。上記ですでに回答したフィールド以外、ヘッダにはどんなフィールドがありますか?データパケットの内容ウィンドウで生データを確認すると、パケットリストには表示されていないヘッダはありますか? HTTPリクエストメッセージにはHostフィールド、Connectionフィールド、Acceptフィールド、User-Agentフィールド、Accept-Encodingフィールドなどがあります。HTTPレスポンスメッセージにはServerフィールド、Connectionフィールドなどがあります。
5.実験のまとめ
5.1 問題と解決策
Xftpを使用してサーバへ接続する際、接続エラーが発生しました。解決策としてキャンパス内ネットワークに接続した後、正常に戻りました。原因を調査の結果、サーバのファイアウォールが原因であることが分かりました。
5.2 感想と考察
- 本実験レポートは、HTTPプロトコル分析の過程におけるコードおよびソフトウェアの操作に慣れ、授業で学んだ知識の検証を実現しました。今回の実験を通じて、wgetコマンドの使用手順を具体的に習得し、一般的なHTTPプロトコル分析ソフトウェアの基本的な使い方を理解し、自己のプログラミング能力を向上させました。
- これらの一般的なHTTP分析コマンドの操作を通じて、HTTPプロトコルの使用時の追跡分析、HTTPメッセージの構造分析を通じて、授業で学んだ知識を裏付けました。
この記事が役に立ったときは、ぜひ他の人に共有してください!
一部の情報は古い可能性があります





