tcpdump - 抓包

tcpdump

tcpdump 描述

通俗地说:tcpdump是一个抓包工具,用于抓取互联网上传输的数据包。
学术的说:tcpdump是一种嗅探器 (sniffer),利用以太网的特性,通过将网卡适配器 (NIC)置于混杂模式 (promiscuous) 来获取传输在网络中的信息包。

tcpdump 抓包

要用tcpdump抓包,一定要切换到root用户下,因为只要root用户才有权限将网卡变更为适于抓包的“混杂模式”。

[root@localhost ~]# tcpdump -i ens33 -nn -X 'port 22' -c 1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
11:18:05.944556 IP 10.1.70.109.22 > 10.1.70.106.56980: Flags [P.], seq 3415398881:3415399093, ack 3590615396, win 274, length 212
	0x0000:  4510 00fc 2c33 4000 4006 6ce0 0a01 466d  E...,3@.@.l...Fm
	0x0010:  0a01 466a 0016 de94 cb92 d9e1 d604 7164  ..Fj..........qd
	0x0020:  5018 0112 a1c7 0000 0000 00b0 53ad 569d  P...........S.V.
	0x0030:  ccfb ef25 7033 32e2 08de af36 bd93 0cbc  ...%p32....6....
	0x0040:  555b b6da a7fb e195 5d25 5980 5210 4599  U[......]%Y.R.E.
	0x0050:  a2b6 9e1c 3e73 ab49 6729 a623 8e0f b605  ....>s.Ig).#....
	0x0060:  e86e 7c72 79f2 1f24 d68d 2e38 dd26 9947  .n|ry..$...8.&.G
	0x0070:  c643 0d4f 8c63 8d2f 7dd3 8bea a7a6 5030  .C.O.c./}.....P0
	0x0080:  4856 2d56 fc0f 34fb 8300 f670 df3f 0496  HV-V..4....p.?..
	0x0090:  189f ef83 0bd7 92f1 f243 c9b5 33e4 589a  .........C..3.X.
	0x00a0:  cda5 0cb6 a6d4 c1eb f08d 8fbb 8dc7 e5b3  ................
	0x00b0:  e02e 044d 83d0 80e4 b20f 3445 070e d37a  ...M......4E...z
	0x00c0:  04b7 de46 aea4 13c2 ba03 ae9a 21ad 3b89  ...F........!.;.
	0x00d0:  42d5 8473 3cb3 8361 1f69 a1e1 155b 9c62  B..s<..a.i...[.b
	0x00e0:  503a a330 3e60 7d35 ad50 f0e4 9d45 b2a1  P:.0>`}5.P...E..
	0x00f0:  3cc6 4948 a144 de47 a53f 8ce3            <.IH.D.G.?..
1 packet captured
2 packets received by filter
0 packets dropped by kernel

解析

-i : 即interface,用来指定网络接口,指定监控的网卡。

-nn : 当tcpdump遇到协议号或端口号时,不要将这些数字转换成对应的协议名称或端口名称。比如:希望显示 22 ,而不是 ssh。

-X :需要把协议头和包内容都原原本本地显示出来,tcpdump会同时以16进制和ASCII的形式显示,这在进行协议分析时是绝对的利器。

port 22 : 只抓取源端口或目的端口是22的数据包,其他的数据包就不要显示出来。

-c : 是Count含义,设置抓取的包数。




清醒是一种细小而有耐性的英雄主义   -Tzyy

上一篇:Android 网络开发抓包工具Fiddler、tcpdump和Wireshark的使用


下一篇:运维工程师必备:请收好 Linux 网络命令集锦