Linux抓包命令tcpdump「建议收藏」 | 您所在的位置:网站首页 › tcpdump-c › Linux抓包命令tcpdump「建议收藏」 |
大家好,又见面了,我是你们的朋友全栈君。 tcpdump是一个抓包工具,用于抓取互联网上传输的数据包 tcpdump是一个用于截取网络分组,并输出分组内容的工具。凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具 tcpdump 支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息 #常用选项 -i #监听哪一个网卡 -n #不把ip解析成主机名 -nn #不把端口解析成应用层协议 -c #指定抓包的数量 -S #不把随机序列和确认序列解析成绝对值 -w #将流量保存到文件中,文件中的信息是无法直接查看的 -r #读取文件中的内容 -v #输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。 -vv #输出详细的报文信息。#实例 1、默认启动 tcpdump -vv #普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包。 2、过滤主机 tcpdump -i eth1 host 192.168.1.1 #抓取所有经过eth1,目的或源地址是192.168.1.1的网络数据 tcpdump -i eth1 src host 192.168.1.1 #指定源地址,192.168.1.1 tcpdump -i eth1 dst host 192.168.1.1 #指定目的地址,192.168.1.1 3、过滤端口 tcpdump -i eth1 port 80 #抓取所有经过eth1,目的或源端口是80的网络数据 tcpdump -i eth1 src port 80 #指定源端口 tcpdump -i eth1 dst port 80 #指定目的端口 4、协议过滤 tcpdump -i eth1 arp tcpdump -i eth1 ip tcpdump -i eth1 tcp tcpdump -i eth1 udp tcpdump -i eth1 icmp #抓tcp某端口的数据包 tcpdump -i eth0 tcp port 21 -nn 5、常用表达式 非 : ! or "not" (去掉双引号) 且 : && or "and" 或 : || or "or" #抓取所有经过eth1,目的地址是192.168.1.254或192.168.1.200端口是80的TCP数 tcpdump -i eth1 '((tcp) and (port 80) and ((dst host 192.168.1.254) or (dst host 192.168.1.200)))' #抓取所有经过eth1,目标MAC地址是00:01:02:03:04:05的ICMP数据 tcpdump -i eth1 '((icmp) and ((ether dst host 00:01:02:03:04:05)))' #抓取所有经过eth1,目的网络是192.168,但目的主机不是192.168.1.200的TCP数据 tcpdump -i eth1 '((tcp) and ((dst net 192.168) and (not dst host 192.168.1.200)))'发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/147734.html原文链接:https://javaforall.cn |
CopyRight 2018-2019 实验室设备网 版权所有 |