tcpdump简介

tcpdump

简介

  • 不通平台的 tcpdump 支持的参数是不一样的

  • 比如 windows 下的 tcpdump 就不支持 -i 参数

  • 有些嵌入式设备,只支持 -i -w 参数等

  • 一般只用tcpdump进行过滤抓包,然后使用 wireshark 进行解析

  • 表达式单元之间可以使用操作符进行连接

    • 否定操作 (!not)
    • 与操作(&&and)
    • 或操作(||or)
  • 使用括号"()"可以改变表达式的优先级,但需要注意的是括号会被shell解释,所以应该使用反斜线""转义为"()",在需要的时候,还需要包围在引号中。

  • tcpdump [options] [not] proto dir type

    • options: -i -s -w ...
    • proto: tcp/udp/arp/ip/ether/icmp
    • type: host/net/port/portrange

参数options

  • -s
    • 设置tcpdump的数据包抓取长度为len,如果不设置默认将会是65535字节。
    • 对于要抓取的数据包较大时,长度设置不够可能会产生包截断,若出现包截断,输出行中会出现"[|proto]"的标志(proto实际会显示为协议名)。
    • 抓取len越长,包的处理时间越长,并且会减少tcpdump可缓存的数据包的数量,从而会导致数据包的丢失,所以在能抓取我们想要的包的前提下,抓取长度越小越好。
  • -i
    • 指定网卡名称,如果不指定网卡名称,则默认使用第一个网卡
    • 可以通过命令 ifconfig 查看
    • 也可以通过命令 tcpdump -D 查看
    • 可以使用 any 关键字表示所有网络接口。
  • src:源ip,默认是 src or dst
  • dst:目的ip,默认是 src or dst
  • port:端口号, 多个端口号用空格隔开
  • host 指定主机 hostname/ip
  • -w:写数据到指定目录,可以配合 -G -C 参数使用
    • -G:指定保存文件的时间,单位为秒, 设置后会自动切换文件
    • -C:指定保存文件的大小, 设置后会自动切换文件
      • -W
        此选项与-C 选项配合使用, 这将限制可打开的文件数目, 并且当文件数据超过这里设置的限制时, 依次循环替代之前的文件, 这相当于一个拥有filecount 个文件的文件缓冲池
  • -c
    • 指定要抓取的包数量。注意,是最终要获取这么多个包。
    • 例如,指定"-c 10"将获取10个包,但可能已经处理了100个包,只不过只有10个包是满足条件的包。

举例

tcpdump -i any -w test.cap 抓取所有网卡的数据包到 test.cap 文件
tcpdump -s 0 host 10.1.2.190 抓取指定主机的数据包
tcpdump -i eth0 src 10.1.10.185 抓取指定网卡和源ip的数据包
tcpdump -i eth0 dst 10.1.10.158 and tcp and port ! 22 抓取指定网卡和目的ip的tcp数据包, 排除端口为22的数据包
tcpdump -i eth0 host 10.1.10.158 抓取指定网卡和ip的数据包
tcpdump -i eth0 dst 10.1.10.158 and udp 抓取指定网卡和目的ip的udp数据包
tcpdump -i eth0 tcp and port 554 22 抓取指定网卡和端口的tcp数据包
tcpdump -i eth0 -w 1.cap 抓取指定网卡的数据包并写入到文件
tcpdump -i lo -s 0 抓取本地回环数据包,不限制包长度
tcpdump host foo and not port ftp and not port ftp-data,这表示筛选的数据包要满足"主机为foo且端口不是ftp(端口21)和ftp-data(端口20)的包
tcpdump -c 10 net 192.168 抓取网络为192.168的数据包,并只抓取10个
tcpdump -c 5 -nn -i eth0 icmp 抓取5个ICMP数据包,并显示端口号

参考文章

有任何问题,请联系:knowledgebao@163.com

相关推荐
laimaxgg几秒前
Linux关于华为云开放端口号后连接失败问题解决
linux·运维·服务器·网络·tcp/ip·华为云
jerry-891 小时前
centos 安全配置基线
网络
didiplus1 小时前
告别手动编辑:如何用Python快速创建Ansible hosts文件?
网络·python·ansible·hosts
Thomas_YXQ2 小时前
Unity3D 动态骨骼性能优化详解
开发语言·网络·游戏·unity·性能优化·unity3d
kingbal2 小时前
SpringBoot:websocket 实现后端主动前端推送数据
网络·websocket·网络协议
德迅云安全-小钱4 小时前
跨站脚本攻击(XSS)原理及防护方案
前端·网络·xss
Cici_ovo6 小时前
wlan和vlan
网络·智能路由器
hardWork_yulu11 小时前
Android RTMP直播练习实践
网络·安卓
qq_2430507911 小时前
irpas:互联网路由协议攻击套件!全参数详细教程!Kali Linux入门教程!黑客渗透测试!
linux·网络·web安全·网络安全·黑客·渗透测试·系统安全