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

相关推荐
fantasy_arch5 小时前
CPU性能优化-磁盘空间和解析时间
网络·性能优化
美团测试工程师6 小时前
九大高效的前端测试工具与框架
软件测试·测试工具·jmeter
小白学大数据7 小时前
如何使用Selenium处理JavaScript动态加载的内容?
大数据·javascript·爬虫·selenium·测试工具
weixin_419349797 小时前
selenium 报错 invalid argument: invalid locator
selenium·测试工具
是Dream呀7 小时前
Python从0到100(七十八):神经网络--从0开始搭建全连接网络和CNN网络
网络·python·神经网络
程序猿000001号7 小时前
Selenium 深度解析:自动化浏览器操作的利器
selenium·测试工具·自动化
kaixin_learn_qt_ing8 小时前
了解RPC
网络·网络协议·rpc
安全小王子8 小时前
Kali操作系统简单介绍
网络·web安全
Hacker_LaoYi10 小时前
【漏洞分析】DDOS攻防分析(四)——TCP篇
网络·tcp/ip·ddos
爱吃水果蝙蝠汤10 小时前
DATACOM-IP单播路由(BGP)-复习-实验
网络·网络协议·tcp/ip