# Linux tcpdump命令
Linux tcpdump命令用于倾倒网络传输数据。
执行tcpdump指令可列出经过指定网络界面的数据包文件头,在Linux操作系统中,你必须是系统管理员。
### 语法
```
tcpdump [-adeflnNOpqStvx][-c<数据包数目>][-dd][-ddd][-F<表达文件>][-i<网络界面>][-r<数据包文件>][-s<数据包大小>][-tt][-T<数据包类型>][-vv][-w<数据包文件>][输出数据栏位]
```
**参数说明**:
* -a 尝试将网络和广播地址转换成名称。
* -c<数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
* -d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
* -dd 把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
* -ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
* -e 在每列倾倒资料上显示连接层级的文件头。
* -f 用数字显示网际网络地址。
* -F<表达文件> 指定内含表达方式的文件。
* -i<网络界面> 使用指定的网络截面送出数据包。
* -l 使用标准输出列的缓冲区。
* -n 不把主机的网络地址转换成名字。
* -N 不列出域名。
* -O 不将数据包编码最佳化。
* -p 不让网络界面进入混杂模式。
* -q 快速输出,仅列出少数的传输协议信息。
* -r<数据包文件> 从指定的文件读取数据包数据。
* -s<数据包大小> 设置每个数据包的大小。
* -S 用绝对而非相对数值列出TCP关联数。
* -t 在每列倾倒资料上不显示时间戳记。
* -tt 在每列倾倒资料上显示未经格式化的时间戳记。
* -T<数据包类型> 强制将表达方式所指定的数据包转译成设置的数据包类型。
* -v 详细显示指令执行过程。
* -vv 更详细显示指令执行过程。
* -x 用十六进制字码列出数据包资料。
* -w<数据包文件> 把数据包数据写入指定的文件。
### 实例
显示TCP包信息
```
# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
23:35:55.129998 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 148872068:148872168(100) ack 4184371747 win 2100
23:35:55.182357 IP 192.168.0.1.2101 > 192.168.0.3.ssh: . ack 100 win 64240
23:35:55.182397 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 100:200(100) ack 1 win 2100
23:35:55.131713 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: 50226+ PTR? 1.0.168.192.in-addr.arpa. (42)
23:35:55.131896 PPPoE [ses 0x1cb0] IP 118.250.6.85.64215 > dns2.cs.hn.cn.domain: 50226+ PTR? 1.0.168.192.in-addr.arpa. (42)
23:35:55.154238 PPPoE [ses 0x1cb0] IP dns2.cs.hn.cn.domain > 118.250.6.85.64215: 50226 NXDomain 0/0/0 (42)
23:35:55.156298 IP dns2.cs.hn.cn.domain > 192.168.0.3.32804: 50226 NXDomain 0/0/0 (42)
23:35:55.159292 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: 30304+ PTR? 3.0.168.192.in-addr.arpa. (42)
23:35:55.159449 PPPoE [ses 0x1cb0] IP 118.250.6.85.64215 > dns2.cs.hn.cn.domain: 30304+ PTR? 3.0.168.192.in-addr.arpa. (42)
23:35:55.179816 PPPoE [ses 0x1cb0] IP dns2.cs.hn.cn.domain > 118.250.6.85.64215: 30304 NXDomain 0/0/0 (42)
23:35:55.181279 IP dns2.cs.hn.cn.domain > 192.168.0.3.32804: 30304 NXDomain 0/0/0 (42)
23:35:55.181806 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 200:268(68) ack 1 win 2100
23:35:55.182177 IP 192.168.0.1.2101 > 192.168.0.3.ssh: . ack 268 win 64198
23:35:55.182677 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: 43983+ PTR? 112.96.103.202.in-addr.arpa. (45)
23:35:55.182807 PPPoE [ses 0x1cb0] IP 118.250.6.85.64215 > dns2.cs.hn.cn.domain: 43983+ PTR? 112.96.103.202.in-addr.arpa. (45)
23:35:55.183055 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 268:352(84) ack 1 win 2100
23:35:55.201096 PPPoE [ses 0x1cb0] IP dns2.cs.hn.cn.domain > 118.250.6.85.64215: 43983 1/0/0 (72)
23:35:55.203087 IP dns2.cs.hn.cn.domain > 192.168.0.3.32804: 43983 1/0/0 (72)
23:35:55.204666 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 352:452(100) ack 1 win 2100
23:35:55.204852 IP 192.168.0.1.2101 > 192.168.0.3.ssh: . ack 452 win 64152
23:35:55.205305 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 452:520(68) ack 1 win 2100
23:35:55.205889 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: 9318+ PTR? 85.6.250.118.in-addr.arpa. (43)
23:35:55.206071 PPPoE [ses 0x1cb0] IP 118.250.6.85.64215 > dns2.cs.hn.cn.domain: 9318+ PTR? 85.6.250.118.in-addr.arpa. (43)
23:35:55.215338 PPPoE [ses 0x1cb0] IP 115.238.1.45.3724 > 118.250.6.85.64120: P 2392751922:2392751987(65) ack 2849759785 win 54
23:35:55.216273 IP 115.238.1.45.3724 > 192.168.0.65.2057: P 2392751922:2392751987(65) ack 2849759785 win 54
23:35:55.329204 IP 192.168.0.1.2101 > 192.168.0.3.ssh: . ack 520 win 64135
23:35:55.458214 IP 192.168.0.65.2057 > 115.238.1.45.3724: . ack 65 win 32590
23:35:55.458221 PPPoE [ses 0x1cb0] IP 118.250.6.85.64120 > 115.238.1.45.3724: . ack 65 win 32590
23:35:55.708228 PPPoE [ses 0x1cb0] IP 115.238.1.45.3724 > 118.250.6.85.64120: P 65:118(53) ack 1 win 54
23:35:55.710213 IP 115.238.1.45.3724 > 192.168.0.65.2057: P 65:118(53) ack 1 win 54
23:35:55.865151 IP 192.168.0.65.2057 > 115.238.1.45.3724: . ack 118 win 32768
23:35:55.865157 PPPoE [ses 0x1cb0] IP 118.250.6.85.64120 > 115.238.1.45.3724: . ack 118 win 32768
23:35:56.242805 IP 192.168.0.65.2057 > 115.238.1.45.3724: P 1:25(24) ack 118 win 32768
23:35:56.242812 PPPoE [ses 0x1cb0] IP 118.250.6.85.64120 > 115.238.1.45.3724: P 1:25(24) ack 118 win 32768
23:35:56.276816 PPPoE [ses 0x1cb0] IP 115.238.1.45.3724 > 118.250.6.85.64120: . ack 25 win 54
23:35:56.278240 IP 115.238.1.45.3724 > 192.168.0.65.2057: . ack 25 win 54
23:35:56.349747 PPPoE [ses 0x1cb0] IP 115.238.1.45.3724 > 118.250.6.85.64120: P 118:159(41) ack 25 win 54
23:35:56.351780 IP 115.238.1.45.3724 > 192.168.0.65.2057: P 118:159(41) ack 25 win 54
23:35:56.400051 PPPoE [ses 0x1cb0] IP 119.147.18.44.8000 > 118.250.6.85.4000: UDP, length 79
23:35:56.475050 IP 192.168.0.65.2057 > 115.238.1.45.3724: . ack 159 win 32762
23:35:56.475063 PPPoE [ses 0x1cb0] IP 118.250.6.85.64120 > 115.238.1.45.3724: . ack 159 win 32762
23:35:56.508968 PPPoE [ses 0x1cb0] IP 115.238.1.45.3724 > 118.250.6.85.64120: P 159:411(252) ack 25 win 54
23:35:56.510182 IP 115.238.1.45.3724 > 192.168.0.65.2057: P 159:411(252) ack 25 win 54
23:35:56.592028 PPPoE [ses 0x1cb0] IP 117.136.2.43.38959 > 118.250.6.85.63283: UDP, length 36
44 packets captured
76 packets received by filter
0 packets dropped by kernel
```
显示指定数量包
```
# tcpdump -c 20
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
23:36:28.949538 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 148875984:148876020(36) ack 4184373187 win 2100
23:36:28.994325 IP 192.168.0.1.2101 > 192.168.0.3.ssh: . ack 36 win 64020
23:36:28.994368 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 36:72(36) ack 1 win 2100
23:36:28.950779 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: 18242+ PTR? 1.0.168.192.in-addr.arpa. (42)
23:36:28.950948 PPPoE [ses 0x1cb0] IP 118.250.6.85.64215 > dns2.cs.hn.cn.domain: 18242+ PTR? 1.0.168.192.in-addr.arpa. (42)
23:36:28.960105 PPPoE [ses 0x1cb0] IP 222.82.119.41.13594 > 118.250.6.85.63283: UDP, length 36
23:36:28.962192 IP 222.82.119.41.13594 > 192.168.0.65.13965: UDP, length 36
23:36:28.963118 IP 192.168.0.65.13965 > 222.82.119.41.13594: UDP, length 34
23:36:28.963123 PPPoE [ses 0x1cb0] IP 118.250.6.85.63283 > 222.82.119.41.13594: UDP, length 34
23:36:28.970185 PPPoE [ses 0x1cb0] IP dns2.cs.hn.cn.domain > 118.250.6.85.64215: 18242 NXDomain 0/0/0 (42)
23:36:28.970413 IP dns2.cs.hn.cn.domain > 192.168.0.3.32804: 18242 NXDomain 0/0/0 (42)
23:36:28.972352 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: 17862+ PTR? 3.0.168.192.in-addr.arpa. (42)
23:36:28.972474 PPPoE [ses 0x1cb0] IP 118.250.6.85.64215 > dns2.cs.hn.cn.domain: 17862+ PTR? 3.0.168.192.in-addr.arpa. (42)
23:36:28.982287 PPPoE [ses 0x1cb0] IP 121.12.131.163.13109 > 118.250.6.85.63283: UDP, length 27
23:36:28.984162 IP 121.12.131.163.13109 > 192.168.0.65.13965: UDP, length 27
23:36:28.985021 IP 192.168.0.65.13965 > 121.12.131.163.13109: UDP, length 103
23:36:28.985027 PPPoE [ses 0x1cb0] IP 118.250.6.85.63283 > 121.12.131.163.13109: UDP, length 103
23:36:28.991919 PPPoE [ses 0x1cb0] IP dns2.cs.hn.cn.domain > 118.250.6.85.64215: 17862 NXDomain 0/0/0 (42)
23:36:28.993142 IP dns2.cs.hn.cn.domain > 192.168.0.3.32804: 17862 NXDomain 0/0/0 (42)
23:36:28.993574 IP 192.168.0.3.ssh > 192.168.0.1.2101: P 72:140(68) ack 1 win 2100
20 packets captured
206 packets received by filter
129 packets dropped by kernel
```
精简显示
```
# tcpdump -c 10 -q //精简模式显示 10个包
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
23:43:05.792280 IP 192.168.0.3.ssh > 192.168.0.1.2101: tcp 36
23:43:05.842115 IP 192.168.0.1.2101 > 192.168.0.3.ssh: tcp 0
23:43:05.845074 IP 115.238.1.45.3724 > 192.168.0.65.2057: tcp 0
23:43:05.907155 IP 192.168.0.3.ssh > 192.168.0.1.2101: tcp 36
23:43:05.793880 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: UDP, length 42
23:43:05.794076 PPPoE [ses 0x1cb0] IP 118.250.6.85.64219 > dns2.cs.hn.cn.domain: UDP, length 42
23:43:05.811127 PPPoE [ses 0x1cb0] IP dns2.cs.hn.cn.domain > 118.250.6.85.64219: UDP, length 42
23:43:05.814764 IP dns2.cs.hn.cn.domain > 192.168.0.3.32804: UDP, length 42
23:43:05.816404 IP 192.168.0.3.32804 > dns2.cs.hn.cn.domain: UDP, length 42
23:43:05.816545 PPPoE [ses 0x1cb0] IP 118.250.6.85.64219 > dns2.cs.hn.cn.domain: UDP, length 42
10 packets captured
39 packets received by filter
0 packets dropped by kernel
```
转换克阅读格式
```
# tcpdump -d
(000) ret #96
```
转换成十进制格式
```
# tcpdump -ddd
1
6 0 0 96
```
- Linux 基础
- Linux 简介
- Linux 安装
- Linux 系统启动过程
- Linux 系统目录结构
- Linux 忘记密码解决方法
- Linux 远程登录
- Linux 文件基本属性
- Linux 文件与目录管理
- Linux 用户和用户组管理
- Linux 磁盘管理
- Linux vi/vim
- Shell 编程
- Shell 教程
- Shell 变量
- Shell test命令
- Shell 流程控制
- Shell 函数
- Linux命令大全
- Linux命令大全 - 文件管理
- Linux cat命令
- Linux chattr命令
- Linux chgrp命令
- Linux chmod命令
- Linux chown命令
- Linux cksum命令
- Linux cmp命令
- Linux diff命令
- Linux diffstat命令
- Linux file命令
- Linux find命令
- Linux git命令
- Linux gitview命令
- Linux indent命令
- Linux cut命令
- Linux ln命令
- Linux less命令
- Linux locate命令
- Linux lsattr命令
- Linux mattrib命令
- Linux mc命令
- Linux mdel命令
- Linux mdir命令
- Linux mktemp命令
- Linux more命令
- Linux mmove命令
- Linux mread命令
- Linux mren命令
- Linux mtools命令
- Linux mtoolstest命令
- Linux mv命令
- Linux od命令
- Linux paste命令
- Linux patch命令
- Linux rcp命令
- Linux rm命令
- Linux slocate命令
- Linux split命令
- Linux tee命令
- Linux tmpwatch命令
- Linux touch命令
- Linux umask命令
- Linux which命令
- Linux cp命令
- Linux mcopy命令
- Linux mshowfat命令
- Linux rhmask命令
- Linux whereis命令
- Linux scp命令
- Linux awk 命令
- Linux命令大全 - 文档编辑
- Linux col命令
- Linux colrm命令
- Linux comm命令
- Linux csplit命令
- Linux ed命令
- Linux egrep命令
- Linux ex命令
- Linux fgrep命令
- Linux fmt命令
- Linux fold命令
- Linux grep命令
- Linux ispell命令
- Linux jed命令
- Linux joe命令
- Linux join命令
- Linux look命令
- Linux mtype命令
- Linux pico命令
- Linux rgrep命令
- Linux sed命令
- Linux sort命令
- Linux spell命令
- Linux tr命令
- Linux expr命令
- Linux uniq命令
- Linux wc命令
- Linux命令大全 - 文件传输
- Linux lprm命令
- Linux lpr命令
- Linux lpq命令
- Linux lpd命令
- Linux bye命令
- Linux ftp命令
- Linux ncftp命令
- Linux tftp命令
- Linux uuto命令
- Linux uupick命令
- Linux uucp命令
- Linux uucico命令
- Linux ftpshut命令
- Linux ftpwho命令
- Linux ftpcount命令
- Linux命令大全 - 磁盘管理
- Linux cd命令
- Linux df命令
- Linux dirs命令
- Linux du命令
- Linux edquota命令
- Linux mlabel命令
- Linux mkdir命令
- Linux mdu命令
- Linux mdeltree命令
- Linux mcd命令
- Linux eject命令
- Linux mount命令
- Linux mmd命令
- Linux mrd命令
- Linux mzip命令
- Linux pwd命令
- Linux quota命令
- Linux mmount命令
- Linux rmdir命令
- Linux rmt命令
- Linux stat命令
- Linux tree命令
- Linux umount命令
- Linux ls命令
- Linux quotacheck命令
- Linux quotaoff命令
- Linux lndir命令
- Linux repquota命令
- Linux quotaon命令
- Linux命令大全 - 磁盘维护
- Linux badblocks命令
- Linux cfdisk命令
- Linux dd命令
- Linux e2fsck命令
- Linux ext2ed命令
- Linux mkbootdisk命令
- Linux fsck命令
- Linux fsck.minix命令
- Linux fsconf命令
- Linux fdformat命令
- Linux hdparm命令
- Linux mformat命令
- Linux mkdosfs命令
- Linux mke2fs命令
- Linux mkfs.ext2命令
- Linux mkfs.msdos命令
- Linux mkinitrd命令
- Linux mkisofs命令
- Linux mkswap命令
- Linux mpartition命令
- Linux swapon命令
- Linux symlinks命令
- Linux sync命令
- Linux mbadblocks命令
- Linux mkfs.minix命令
- Linux fsck.ext2命令
- Linux fdisk命令
- Linux losetup命令
- Linux mkfs命令
- Linux getty命令
- Linux sfdisk命令
- Linux swapoff命令
- Linux命令大全 - 网络通讯
- Linux apachectl命令
- Linux arpwatch命令
- Linux nc命令
- Linux dip命令
- Linux mingetty命令
- Linux netconfig命令
- Linux ppp-off命令
- Linux uustat命令
- Linux uulog命令
- Linux wall命令
- Linux uux命令
- Linux telnet命令
- Linux netstat命令
- Linux dnsconf命令
- Linux mesg命令
- Linux httpd命令
- Linux ifconfig命令
- Linux minicom命令
- Linux traceroute命令
- Linux talk命令
- Linux ping命令
- Linux pppstats命令
- Linux samba命令
- Linux statserial命令
- Linux write命令
- Linux setserial命令
- Linux tty命令
- Linux newaliases命令
- Linux uuname命令
- Linux netconf命令
- Linux smbd命令
- Linux ytalk命令
- Linux tcpdump命令
- Linux cu命令
- Linux efax命令
- Linux pppsetup命令
- Linux testparm命令
- Linux smbclient命令
- Linux shapecfg命令
- Linux命令大全 - 系统管理
- Linux date命令
- Linux chfn命令
- Linux adduser命令
- Linux groupdel命令
- Linux useradd命令
- Linux groupmod命令
- Linux logname命令
- Linux logout命令
- Linux ps命令
- Linux exit命令
- Linux finger命令
- Linux fwhios命令
- Linux sleep命令
- Linux suspend命令
- Linux login命令
- Linux lastb命令
- Linux rlogin命令
- Linux last命令
- Linux reboot命令
- Linux kill命令
- Linux halt命令
- Linux nice命令
- Linux procinfo命令
- Linux top命令
- Linux pstree命令
- Linux shutdown命令
- Linux screen命令
- Linux sliplogin命令
- Linux rsh命令
- Linux rwho命令
- Linux sudo命令
- Linux gitps命令
- Linux uname命令
- Linux logrotate命令
- Linux tload命令
- Linux swatch命令
- Linux chsh命令
- Linux whoami命令
- Linux who命令
- Linux vlock命令
- Linux usermod命令
- Linux userdel命令
- Linux userconf命令
- Linux id命令
- Linux w命令
- Linux skill命令
- Linux su命令
- Linux renice命令
- Linux newgrp命令
- Linux whois命令
- Linux free命令
- Linux命令大全 - 系统设定
- Linux bind命令
- Linux aumix命令
- Linux dircolors命令
- Linux alias命令
- Linux clear命令
- Linux reset命令
- Linux enable命令
- Linux dmesg命令
- Linux depmod命令
- Linux declare命令
- Linux crontab命令
- Linux clock命令
- Linux chroot命令
- Linux insmod命令
- Linux rpm命令
- Linux grpconv命令
- Linux pwunconv命令
- Linux export命令
- Linux eval命令
- Linux set命令
- Linux minfo命令
- Linux lsmod命令
- Linux liloconfig命令
- Linux lilo命令
- Linux kbdconfig命令
- Linux modprobe命令
- Linux ntsysv命令
- Linux mouseconfig命令
- Linux passwd命令
- Linux pwconv命令
- Linux rdate命令
- Linux resize命令
- Linux rmmod命令
- Linux grpunconv命令
- Linux modinfo命令
- Linux time命令
- Linux setup命令
- Linux sndconfig命令
- Linux setenv命令
- Linux chkconfig命令
- Linux unset命令
- Linux ulimit命令
- Linux timeconfig命令
- Linux setconsole命令
- Linux mkkickstart命令
- Linux hwclock命令
- Linux apmd命令
- Linux fbset命令
- Linux unalias命令
- Linux SVGATextMode命令
- Linux命令大全 - 备份压缩
- Linux bzip2recover命令
- Linux bzip2命令
- Linux bunzip2命令
- Linux ar命令
- Linux gunzip命令
- Linux unarj命令
- Linux compress命令
- Linux cpio命令
- Linux dump命令
- Linux uuencode命令
- Linux restore命令
- Linux lha命令
- Linux gzip命令
- Linux gzexe命令
- Linux zipinfo命令
- Linux zip命令
- Linux unzip命令
- Linux uudecode命令
- Linux tar命令
- Linux命令大全 - 设备管理
- Linux setleds命令
- Linux loadkeys命令
- Linux rdev命令
- Linux dumpkeys命令
- Linux MAKEDEV命令
- 免责声明