この記事では、HTTP、TCP、UDP、およびその他のネットワークプロトコルパケットを含むネットワークデータパケットを取得するために使用される別の便利なパケットキャプチャツールであるWiresharkを紹介します。
私は大学にいたときにTCPを3回握手プロトコルを学んだことを覚えています。当時、私は本の中で多くのTCP資料とUDP資料を読んだが、これらのデータパケットを実際に見たことがないことを知っていました。私はいつも雲の上に浮かんでいるように感じ、着実に学んでいませんでした。 Wiresharkを使用すると、これらのネットワークパケットを傍受でき、パケット内の各フィールドを明確に確認できます。ネットワークプロトコルの理解をさらに深めることができます。
私にとって、Wiresharkはネットワークプロトコルを学習するのに最適なツールです。
内容を読む
Wiresharkの紹介
Wiresharkの公式ダウンロードWebサイト:http://www.wireshark.org/
Wiresharkは、非常に強力な機能を備えた非常に人気のあるネットワークパケット分析ソフトウェアです。さまざまなネットワークパケットを傍受でき、ネットワークパケットの詳細情報を表示できます。
Wiresharkは、自信を持って使用できるオープンソースソフトウェアです。 WindowsとMac OSで実行できます。
Wiresharkを使用する人は、ネットワークプロトコルを理解する必要があります。そうでなければ、Wiresharkを理解しません。
Wiresharkができないこと
セキュリティ上の理由から、Wiresharkはパケットのみを表示できますが、パケットのコンテンツを変更したり、パケットを送信したりすることはできません。
Wireshark vs Fiddler
FiddlerはWindowsで実行されているプログラムで、HTTPとHTTPSをキャプチャするために特に使用されます。
WiresharkはHTTPとHTTPSを取得できますが、HTTPSを解読できないため、WiresharkはHTTPSのコンテンツを理解できません。
要約すると、HTTP、HTTPS、またはFiddlerを使用している場合は、TCPやUDPなどの他のプロトコルを使用して、Wiresharkを使用しています。
同じタイプの他のツール
Microsoftのネットワークモニター
スニファー
Wiresharkを使用する人
1.ネットワーク管理者はWiresharkを使用してネットワークの問題を確認します
2.ソフトウェアテストエンジニアは、Wiresharkを使用してパケットをキャプチャしてテストしたソフトウェアを分析します
3.ソケットプログラミングに従事するエンジニアは、Wiresharkを使用してデバッグします
4. HuaweiとZTEのほとんどのエンジニアがWiresharkを使用していると聞きました。
要するに、Wiresharkはインターネットに関連するものに使用される場合があります。
Wiresharkはつかみを始めます
インターフェイスを開始します
Wiresharkは、マシン上の特定のネットワークカードをキャプチャするネットワークパッケージです。マシンに複数のネットワークカードがある場合、ネットワークカードを選択する必要があります。
[caputre] - >インターフェイスをクリックします。次のダイアログボックスが表示され、正しいネットワークカードを選択します。次に、[開始]ボタンをクリックしてグラブを開始します
Wiresharkウィンドウの紹介
Wiresharkは主にこれらのインターフェイスに分かれています
1。フィルタリングに使用されるフィルターを表示します
2。パケットリストペイン(パケットリスト)、キャプチャされたパケット、アクティブアドレスと宛先アドレス、およびポート番号を表示します。さまざまな色が表れています
3.パケットの詳細ペイン(パケットの詳細)、パケットにフィールドの表示
4。分離器ペイン(16進数データ)
5。その他(アドレスバー、その他)
Wiresharkディスプレイフィルタリング
フィルタリングの使用は非常に重要です。初心者がWiresharkを使用すると、多くの冗長な情報が得られます。これは、数千または数万のレコードで必要な部分を見つけるのが非常に困難です。それは私をめまいさせました。
フィルターは、必要な情報を大量のデータですぐに見つけるのに役立ちます。
フィルターには2つのタイプがあります。
1つは、キャプチャされたレコードに必要なレコードを見つけるために使用されるメインインターフェイス上のディスプレイフィルターです。
1つはキャプチャフィルターです。これは、キャプチャされたパケットをフィルタリングするために使用され、あまりにも多くのレコードのキャプチャを避けます。キャプチャの設定 - >キャプチャフィルター
フィルターを保存します
フィルター列の上で、フィルター式を入力した後、[保存]ボタンをクリックして名前を付けます。たとえば、「フィルター102」、
フィルターバーに追加の「フィルター102」ボタンがあります。
式をフィルタリングするためのルール
式ルール
1。プロトコルフィルタリング
たとえば、TCPはTCPプロトコルのみを表示します。
2。IPフィルタリング
たとえば、IP.SRC == 192.168.1.102は、ソースアドレスが192.168.1.102であることを示しています。
IP.DST == 192.168.1.102、ターゲットアドレスは192.168.1.102です
3。ポートフィルタリング
TCP.port == 80、ポート80
TCP.SRCPORT == 80では、TCPプロトコルのウィッシュポートが80であることのみを表示します。
4。HTTPモードフィルタリング
http.request.method == "get"、HTTP GETメソッドのみを表示します。
5.論理演算子は、および/または
一般的に使用されるフィルター式
| フィルター式 | 使用 |
| http | HTTPプロトコルレコードのみを表示します |
| IP.SRC == 192.168.1.102またはIP.DST == 192.168.1.102 | ソースアドレスまたは宛先アドレスは192.168.1.102です |
パケットリストペイン
パッケージリストには、パネルに番号、タイムスタンプ、ソースアドレス、宛先アドレス、プロトコル、長さ、およびパケット情報が表示されます。さまざまなプロトコルが異なる色で表示されていることがわかります。
これらの表示色ルールを変更することもできます。
パケットの詳細ペイン
このパネルは、プロトコル内のすべてのフィールドを表示するための最も重要なことです。
各行の情報はです
フレーム:物理レイヤーのデータフレームの概要
イーサネットII:データリンクレイヤーイーサネットフレームヘッダー情報
インターネットプロトコルバージョン4:インターネットレイヤーIPパッケージヘッダー情報
トランスミッションコントロールプロトコル:輸送層Tのデータセグメントヘッダー情報、ここにTCPがあります
HyperText転送プロトコル:アプリケーションレイヤー情報、HTTPプロトコルは次のとおりです
Wiresharkおよび対応するOSI 7層モデル
TCPパッケージの特定のコンテンツ
下の図から、WiresharkがキャプチャしたTCPパッケージの各フィールドを見ることができます。
TCP 3回の握手プロセスの例分析
これを見て、私は基本的にWireshakの予備的な理解を得ました。それでは、TCPの3回の握手の例を見てみましょう。
3回の握手プロセスはです
私はこの写真を何度も見ました。今回はWiresharkを使用して、3つの握手のプロセスを実際に分析します。
Wiresharkを開いて、ブラウザを開いてhttp://www.cnblogs.com/tankxiaoを入力します
httpを入力してWiresharkにフィルタリングし、get /tankxiao http /1.1のレコードを選択し、右クリックして「tcpストリームをフォローする」、クリックします。
これの目的は、ブラウザによってWebサイトを開くことに関連するデータパケットを取得することです。次の写真が届きます
図では、Wiresharkが3つのハンドシェイクの3つのデータパケットを傍受したことがわかります。 4番目のパッケージはHTTPです。これは、HTTPがTCPを使用して接続を確立することを示しています。
ファーストハンドシェイクパケット
クライアントはFlag Bit synを使用してTCPを送信し、シリアル番号は0です。これは、接続を確立するというクライアントの要求を表します。次の図
セカンドハンドシェイク用のデータパケット
サーバーは確認パケットを送り返し、フラグはsynとackです。以下の図に示すように、クライアントのISNプラス1に確認番号(承認番号)をISNプラス1に設定します。つまり、0+1 = 1
サードハンドシェイク用のデータパケット
クライアントは、確認パケット(ACK)を再度送信します。 Synフラグビットは0で、ACKフラグビットは1です。サーバーはACK番号フィールド+1を送信し、確認フィールドを相手に配置します。下の図に示すように、データセグメントにISNの+1を配置します。
このようにして、TCPの握手が3回渡され、接続が確立されました。
上記は、WiresharkとLearning TCPの基本的な紹介で3回です。将来、関連する知識を整理し続けます。このサイトへのご支援ありがとうございます!