• 1
  • 2
  • 3
  • 4
  • 5
阿里云主机ECS 首 页  »  帮助中心  »  云服务器  »  阿里云主机ECS
Linux系统抓包工具tcpdump的安装使用及常用命令介绍
发布日期:2015-12-24 14:12:22

  在使用ECS服务器时,发现网络流量异常,或者发现服务器有异常向外发包行为,可使用抓包工具抓取网络流量包,分析流量包的特征,看看这些流量包来自哪里,或者发向哪里了。根据这些信息,可进一步诊断异常。

  本文介绍Linux系统,使用tcpdump工具分析流量的方法。

  TcpDump可将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、not、or等逻辑语句来帮助你去掉无用的信息。tcpdump就是一种免费的网络分析工具,尤其提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。

  本文实验环境:CentOS release 6.5 (Final)

  1.检查系统是否安装了tcpdump


  2.若没有安装,可使用yum install -y tcpdump,本系统已预装了tcpdump软件,不需再安装了。

  3.若忘记了这个软件的用法,可使用 tcpdump --help 来查看一下使用方法


  4. tcpdump常用的命令如下:

  1) 可以条件可以是or 和 and 配合使用即可筛选出更好的结果

  #tcpdump -n -i eth0 src 192.168.0.1 or 192.168.23.121 and port ! 22 and tcp

  2) 监听某个网卡 #tcpdump -i eth0


  3)截取全部进入服务器的数据可以使用以下的格式

  #tcpdump -n -i eth0 dst 192.168.0.1

  4)抓取和主机192.168.0.1通信的数据包: #tcpdump host 10.202.72.116


  5) 取本机(192.168.0.1)和主机114.114.114.114之间的数据

  #tcpdump -n -i eth0 host 192.168.0.1 and 114.114.114.114

  6)源地址和目的地址,特殊端口的数据包

  # tcpdump src 192.168.1.100 and dst 192.168.1.2 and port ftp

  7) #查看数据包的内容

  #tcpdump -A

  8)我们抓取全部进入服务器的TCP数据包使用以下的格式:

  #tcpdump -n -i eth0 dst 192.168.0.1 or 192.168.23.121 and tcp

  9) 相关数据包写入某文件

  #tcpdump -w /tmp/dump.cap

  10) 从本机出去的数据包:

  #tcpdump -n -i eth0 src 192.168.0.1 or 192.168.23.121

  11) 抓取udp数据包

  #tcpdump udp

  通过上述抓包命令,可分析服务器的发包行为,为诊断问题提供依据