{category}

Linux - パケット解析

tcpdump

ティーシーピーダンプ(ネットワーク

意味 ネットワークトラフィック分析


tcpdumpとは?

tcpdumpは、ネットワーク上を流れるパケットをキャプチャーして分析するためのコマンドラインツールです。ネットワークのトラブルシューティングやセキュリティ監視に役立ちます。

tcpdumpの具体的な使い方

特定インターフェースのパケットキャプチャ

$ sudo tcpdump -i eth0

👇出力結果

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
10:15:30.123456 IP 192.168.1.100.52000 > 93.184.216.34.80: Flags [S], seq 1000000000, win 65535, options [mss 1460,sackOK,TS val 1234567890 ecr 0,nop,wscale 7], length 0
10:15:30.234567 IP 93.184.216.34.80 > 192.168.1.100.52000: Flags [S.], seq 2000000000, ack 1000000001, win 65535, options [mss 1460,sackOK,TS val 9876543210 ecr 1234567890,nop,wscale 7], length 0

eth0インターフェース上のすべてのネットワークトラフィックをキャプチャーして表示します。パケットの送信元、宛先、プロトコルなどの情報が表示されます。

特定ポートのトラフィックキャプチャ

$ sudo tcpdump -i eth0 port 80

👇出力結果

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
10:20:15.123456 IP 192.168.1.100.52000 > 93.184.216.34.80: Flags [P.], seq 1:74, ack 1, win 65535, options [nop,nop,TS val 1234567892 ecr 9876543210], length 73: HTTP: GET / HTTP/1.1
10:20:15.234567 IP 93.184.216.34.80 > 192.168.1.100.52000: Flags [.], ack 74, win 65535, options [nop,nop,TS val 9876543211 ecr 1234567892], length 0

eth0インターフェース上の80番ポート(HTTP)のトラフィックのみをキャプチャーします。Webトラフィックの分析に役立ちます。

パケットの内容を16進数とASCIIで表示

$ sudo tcpdump -i eth0 -X

👇出力結果

10:25:30.123456 IP 192.168.1.100.52000 > 93.184.216.34.80: Flags [P.], seq 1:74, ack 1, win 65535, options [nop,nop,TS val 1234567892 ecr 9876543210], length 73: HTTP: GET / HTTP/1.1
	0x0000:  4500 0049 0000 4000 4006 0000 c0a8 0164  E..I..@[email protected]
	0x0010:  5db8 d822 cb20 0050 0000 0001 0000 0001  ].."...P........
	0x0020:  5018 ffff 0000 0000 4745 5420 2f20 4854  P.......GET./.HT
	0x0030:  5450 2f31 2e31 0d0a 486f 7374 3a20 6578  TP/1.1..Host:.ex
	0x0040:  616d 706c 652e 636f 6d0d 0a              ample.com..

eth0インターフェース上のパケットをキャプチャーし、その内容を16進数とASCII形式で表示します。パケットの詳細な内容を確認したい場合に便利です。

tcpdumpに関するよくある質問

Q. tcpdumpの基本的な使い方は?
A. tcpdumpの基本的な使い方は「sudo tcpdump [オプション]」です。よく使用されるオプションには、-i(インターフェース指定)、-n(名前解決を行わない)、-v(詳細出力)などがあります。
Q. 特定のポートのみキャプチャするには?
A. 「sudo tcpdump port 80」のように、portキーワードの後にポート番号を指定することで、特定のポートのトラフィックのみをキャプチャできます。
Q. キャプチャしたデータを保存できる?
A. はい、-wオプションを使用してキャプチャしたデータをファイルに保存できます。例:「sudo tcpdump -w output.pcap」。保存したファイルは後でWiresharkなどのツールで詳細に分析できます。
Q. tcpdumpの出力が多すぎる場合は?
A. フィルタを使用して出力を絞り込むことができます。例えば、「sudo tcpdump host 192.168.1.100」で特定のIPアドレスに関連するパケットのみをキャプチャできます。また、-cオプションでパケット数を制限することもできます。

Linuxのtcpdumpについても学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Linuxのtcpdumpやnslookup、ping、ip、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Linuxを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Linuxはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

nslookup

DNSクエリツール

種類: ネットワーク診断

ping

ネットワーク接続確認ツール

種類: ネットワーク診断

ip

ネットワーク設定の表示と管理

種類: ネットワーク設定

top

リアルタイムプロセス監視

種類: プロセス管理

env

環境変数の表示と設定

種類: 環境変数