Tshark(ターミナル WireShark) で TCP チェックサム検証を有効にする方法

Tshark(ターミナル WireShark) で TCP チェックサム検証を有効にする方法

コマンドを実行すると

tshark -i 3 -c 100 -V less 1514 src 192.168.10.57 and dst 192.168.10.60 and tcp

出力は次のようになります。

Transmission Control Protocol, Src Port: commplex-link (5001), Dst Port: 63077 (63077), Seq: 1, Ack: 1, Len: 0

Source port: commplex-link (5001)
Destination port: 63077 (63077)
[Stream index: 0]
Sequence number: 1    (relative sequence number)
Acknowledgement number: 1    (relative ack number)
Header length: 20 bytes
Flags: 0x10 (ACK)
    0... .... = Congestion Window Reduced (CWR): Not set
    .0.. .... = ECN-Echo: Not set
    ..0. .... = Urgent: Not set
    ...1 .... = Acknowledgement: Set
    .... 0... = Push: Not set
    .... .0.. = Reset: Not set
    .... ..0. = Syn: Not set
    .... ...0 = Fin: Not set
Window size: 40960
**Checksum: 0x95e0 [validation disabled]**
    [Good Checksum: False]
    [Bad Checksum: False]

TCP チェックサム フィールドを計算するにはどうすればよいですか? これを実現するにはどのコマンドを使用できますか?

答え1

tshark -o tcp.check_checksum:TRUE ...うまくいくでしょう。

ノート:

  1. tshark は、特に指示がない限り、現在のプロファイルの現在の設定値を使用します。設定が一度も変更および保存されていない場合は (Wireshark で) デフォルト値が使用されます。

  2. tshark -G currentprefs現在の設定(説明テキスト、設定名と値)を一覧表示します

    tshark -G defaultprefsデフォルトの設定をリストします (同上)。

    それで:

    tshark -G currentprefs | egrep -B2 "^#?tcp\."すべての TCP 設定名とその現在の値 (説明テキスト付き) を一覧表示します。先頭に # が付いていない設定のみがデフォルト以外の値を持ちます。

tshark が指定した設定変更のみでデフォルトの設定を使用するようにしたい場合は、次のようにします。

tshark -C Default -o tcp.check_checksum:TRUE ...

tshark -htshark オプションの詳細については、 および tshark のマニュアル ページを参照してください。

関連情報