0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解tcpdump命令的六个常用选项

Linux爱好者 来源:Linux就该这么学 作者:逄增宝 2022-03-16 10:30 次阅读

tcpdump用于捕获和分析网络流量。系统管理员可以使用它来查看实时流量或将输出保存到文件中并在以后进行分析。下面列出6个常用选项。


-D 选项


tcpdump的-D获取接口设备列表。看到此列表后,可以决定要在哪个接口上捕获流量。它还告诉你接口是否已启动、正在运行,以及它是否是环回接口,如下所示:
[root@localhost~]#tcpdump-D
1.ens160[Up,Running]
2.lo[Up,Running,Loopback]
3.any(Pseudo-devicethatcapturesonallinterfaces)[Up,Running]
4.bluetooth-monitor(BluetoothLinuxMonitor)[none]
5.nflog(Linuxnetfilterlog(NFLOG)interface)[none]
6.nfqueue(Linuxnetfilterqueue(NFQUEUE)interface)[none]
7.usbmon0(AllUSBbuses)[none]
8.usbmon1(USBbusnumber1)
9.usbmon2(USBbusnumber2)

a2b5d790-9881-11ec-952b-dac502259ad0.png


-c [数字]选项

-c选项捕获X个数据包,然后停止。否则,tcpdump 将无限地继续运行。因此,当只想捕获一小部分数据包样本时,可以使用此选项。但是如果接口上没有数据流量,tcpdump 会一直等待。
[root@localhost~]#tcpdump-c5-iany
droppedprivstotcpdump
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize262144bytes
1747.713379IPlocalhost.localdomain.ssh>192.168.43.1.39970:Flags[P.],seq714380127:714380371,ack1854022435,win388,length244
1747.713785IPlocalhost.localdomain.36821>_gateway.domain:36365+PTR?1.43.168.192.in-addr.arpa.(43)
1747.713939IP192.168.43.1.39970>localhost.localdomain.ssh:Flags[.],ack244,win4104,length0
1747.716053IP_gateway.domain>localhost.localdomain.36821:36365NXDomain0/1/0(78)
1747.716543IPlocalhost.localdomain.57441>_gateway.domain:61445+PTR?131.43.168.192.in-addr.arpa.(45)
5packetscaptured
9packetsreceivedbyfilter
0packetsdroppedbykernel

a2defd50-9881-11ec-952b-dac502259ad0.png


-n 选项

-n选项不将IP地址解析为域名,直接以IP地址显示:
[root@localhost~]#tcpdump-c5-iany-n
droppedprivstotcpdump
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize262144bytes
1738.980756IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq714383039:714383283,ack1854024303,win388,length244
1738.981032IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq244:440,ack1,win388,length196
1738.981096IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq440:604,ack1,win388,length164
1738.981153IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq604:768,ack1,win388,length164
1738.981208IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq768:932,ack1,win388,length164
5packetscaptured
5packetsreceivedbyfilter
0packetsdroppedbykernel

a302d806-9881-11ec-952b-dac502259ad0.png


-s 选项


带有-sXXX的 tcpdump 可帮助你控制捕获数据包的大小。在上一个输出的第三行中,可以看到它表示捕获大小 262144 字节。可以使用-s选项更改捕获数据大小。如果你只想检查数据包标头,则可以使用较小的大小进行捕获:
[root@localhost~]#tcpdump-c5-iany-n-s64
droppedprivstotcpdump
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize64bytes
1744.437891IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq714405271:714405515,ack1854033767,win388,length244
1744.438153IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq244:440,ack1,win388,length196
1744.438220IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq440:604,ack1,win388,length164
1744.438301IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq604:768,ack1,win388,length164
1744.438361IP192.168.43.131.ssh>192.168.43.1.39970:Flags[P.],seq768:932,ack1,win388,length164
5packetscaptured
5packetsreceivedbyfilter
0packetsdroppedbykernel

a328f3ec-9881-11ec-952b-dac502259ad0.png


端口捕获

tcpdump 允许你指定使用某个端口作为源或目标的网络数据包。例如,要捕获 DNS 流量,你可以使用端口 53。可以在port选项前加上 src/dst。如src port 53dst port 53并进一步过滤它。
[root@localhost~]#tcpdump-ianyport53-n
droppedprivstotcpdump
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize262144bytes
1748.158109IP192.168.43.131.47054>192.168.43.2.domain:58704+A?www.baidu.com.(31)
1748.158152IP192.168.43.131.47054>192.168.43.2.domain:60504+AAAA?www.baidu.com.(31)
1748.159180IP192.168.43.2.domain>192.168.43.131.47054:605041/1/0CNAMEwww.a.shifen.com.(115)
1748.162018IP192.168.43.2.domain>192.168.43.131.47054:587043/0/0CNAMEwww.a.shifen.com.,A180.101.49.11,A180.101.49.12(90)

a3505c5c-9881-11ec-952b-dac502259ad0.png

下面只获取源端口为53的数据包,其中-nn选项表示不解析IP地址和端口:
[root@localhost~]#tcpdump-c5-ianysrcport53-nn-s64
droppedprivstotcpdump
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize64bytes
1841.604216IP192.168.43.2.53>192.168.43.131.48245:50676[|domain]
1841.606390IP192.168.43.2.53>192.168.43.131.48245:19947[|domain]
1841.631001IP192.168.43.2.53>192.168.43.131.54536:31350NXDomain[|domain]
1846.110591IP192.168.43.2.53>192.168.43.131.42379:17512[|domain]
1846.110603IP192.168.43.2.53>192.168.43.131.42379:40562[|domain]
5packetscaptured
5packetsreceivedbyfilter
0packetsdroppedbykernel

a3658ab4-9881-11ec-952b-dac502259ad0.png


下面只获取目的端口为53的数据包:
[root@localhost~]#tcpdump-c5-ianydstport53-nn-s64
droppedprivstotcpdump
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize64bytes
1822.568585IP192.168.43.131.49444>192.168.43.2.53:27625+[|domain]
1822.568623IP192.168.43.131.49444>192.168.43.2.53:42481+[|domain]
1822.595257IP192.168.43.131.45790>192.168.43.2.53:28116+[|domain]
1823.850730IP192.168.43.131.34861>192.168.43.2.53:23444+[|domain]
1823.850762IP192.168.43.131.34861>192.168.43.2.53:23964+[|domain]
5packetscaptured
5packetsreceivedbyfilter
0packetsdroppedbykernel

a37c87aa-9881-11ec-952b-dac502259ad0.png


-w 选项


如果要将 tcpdump 的输出写入文件,请使用选项-w选项写入文件。如果想查看写了多少数据包,可以加-v选项。
[root@localhost~]#tcpdump-c4-ianyport53-nn-wdns.pcap-v
droppedprivstotcpdump
tcpdump:listeningonany,link-typeLINUX_SLL(Linuxcooked),capturesize262144bytes
4packetscaptured
6packetsreceivedbyfilter
0packetsdroppedbykernel

a3a2334c-9881-11ec-952b-dac502259ad0.png


总结


tcpdump 用于收集有关网络流量数据的出色工具。数据包捕获为故障排除和安全分析提供了有用的信息

原文标题:tcpdump 命令的常用选项

文章出处:【微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口
    +关注

    关注

    33

    文章

    8486

    浏览量

    150806
  • 网络
    +关注

    关注

    14

    文章

    7511

    浏览量

    88605
  • 设备
    +关注

    关注

    2

    文章

    4469

    浏览量

    70524

原文标题:tcpdump 命令的常用选项

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Linux tcpdump命令示例 如何在Linux中安装tcpdump

    在这里,我们将展示如何安装 tcpdump,然后讨论并介绍一些有用的命令以及它们的实际示例。
    发表于 08-06 11:11 3633次阅读
    Linux <b class='flag-5'>tcpdump</b><b class='flag-5'>命令</b>示例 如何在Linux中安装<b class='flag-5'>tcpdump</b>

    tcpdump命令介绍

    , 以及一可能的网络接口描述。其中网络接口名字和数字编号可以用在tcpdump的-i [flag]选项(nt:把名字或数字代替flag), 来指定要在其上抓包的网络接口。此选项在不支
    发表于 04-08 06:02

    20常用Linux命令

    20常用Linux命令 今天总结几个非常常用的Linux命令,其中有几个在面试中很可能问相关命令
    发表于 05-11 15:46

    sd可以实现六个面对应六个不同文件夹sd音乐吗?

    想做一感应正方体音乐盒,通过三轴加速度计去感应六个面的变化,从而去读取sd不同文件夹的音乐,六个面对应六个不同文件夹sd音乐,而且文件夹里面的音乐是可以换的,我知道单独设置一
    发表于 08-12 22:09

    六个电视游戏电路

    六个电视游戏电路
    发表于 01-17 22:52 766次阅读
    <b class='flag-5'>六个</b>电视游戏电路

    六个有关RoHS的检测方法标准

    国家质量监督检验检疫总局最近颁布了六个有关RoHS的检测方法标准,这六个标准是: 1. 《电子电气产品中
    发表于 08-12 09:04 1302次阅读

    六个数码管轮流显示数字

    六个数码管轮流显示数字。
    发表于 05-11 14:33 4次下载

    linux常用命令实例详解

    ,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使
    发表于 11-03 10:19 5527次阅读

    tcpdump的安装以及通过实例来演示如何使用 tcpdump 命令

    在本文中,我们将会通过一些实例来演示如何使用 tcpdump 命令,但首先让我们来看看在各种 Linux 操作系统中是如何安装 tcpdump 的。
    的头像 发表于 01-11 08:49 6331次阅读
    <b class='flag-5'>tcpdump</b>的安装以及通过实例来演示如何使用 <b class='flag-5'>tcpdump</b> <b class='flag-5'>命令</b>

    算法:计算Fibonacci number的六个方法

    算法:计算Fibonacci number的六个方法
    的头像 发表于 06-22 17:27 2607次阅读
    算法:计算Fibonacci number的<b class='flag-5'>六个</b>方法

    Linux虚拟机之tcpdump命令操作详解

    Linux虚拟机之tcpdump命令操作详解
    发表于 08-12 09:50 23次下载

    grep命令常用选项详解

    说明:在Rocky8系统中,grep默认帮我们把匹配到的字符串标注了红色,这点还是挺贴心的。其实大家可以用which命令看一下grep,你会发现grep其实是grep --color=auto,这个选项就是颜色显示。
    的头像 发表于 11-30 11:43 4422次阅读

    tcpdump常用选项参数详细总结

    常用选项通过上述的实战案例,相信大家已经掌握的 tcpdump 基本用法,在这里来详细总结一下常用选项参数。 (一)基础
    的头像 发表于 09-28 15:52 1767次阅读

    kafka相关命令详解

    kafka常用命令详解
    的头像 发表于 10-20 11:34 864次阅读

    详解kubectl常用命令

    详解kubectl常用命令
    的头像 发表于 11-05 15:39 115次阅读
    <b class='flag-5'>详解</b>kubectl<b class='flag-5'>常用命令</b>