【tcpdump抓指定端口流量示例】

如果你想要使用tcpdump抓取指定端口的流量,你可以在命令行中使用port关键词。例如,如果你想要抓取所有到达或离开端口80的流量,你可以使用以下命令:

tcpdump-i eth0 src 172,31.12.41 and dstport 9988

在这里插入图片描述

sudo tcpdump -i any 'port 80'

这个命令会显示所有经过任何网络接口(-i any)并且目标或源端口为80的数据包。

一个典型的tcpdump输出可能如下所示:

12:34:56.789012 IP 192.168.1.2.34567 > 93.184.216.34.80: Flags [S], seq 1234567890, win 29200, options [mss 1460,sackOK,TS val 1234567890 ecr 0,nop,wscale 7], length 0

这个输出的各个字段的含义如下:

  • 12:34:56.789012:数据包的时间戳。
  • IP:数据包的协议(在这个例子中是IP协议)。
  • 192.168.1.2.34567:源IP地址和端口号(在这个例子中,源IP地址是192.168.1.2,源端口号是34567)。
  • >:指示流量的方向(在这个例子中,流量从192.168.1.2发送到93.184.216.34)。
  • 93.184.216.34.80:目标IP地址和端口号(在这个例子中,目标IP地址是93.184.216.34,目标端口号是80)。
  • Flags [S]:TCP标志(在这个例子中,S表示SYN标志,表示这是一个新的连接请求)。
  • seq 1234567890:TCP序列号。
  • win 29200:TCP窗口大小。
  • options [mss 1460,sackOK,TS val 1234567890 ecr 0,nop,wscale 7]:TCP选项。
  • length 0:数据包的长度。

请注意,tcpdump的输出格式可能会根据你的具体需求和tcpdump的版本有所不同。你可以查阅tcpdump的手册页(通过运行man tcpdump命令)以获取更多信息。

options [mss 1460,sackOK,TS val 1234567890 ecr 0,nop,wscale 7]表示TCP数据包中包含的一些选项。这些选项用于协商和优化TCP连接。以下是各个选项的含义:

  • mss 1460:MSS(Maximum Segment Size)是TCP连接中每个数据段的最大数据量(不包括TCP头部)。在这个例子中,MSS值为1460字节。

  • sackOK:SACK(Selective Acknowledgment)是一种TCP选项,允许接收方确认收到不连续的数据段,从而提高TCP连接的性能。sackOK表示此连接支持SACK选项。

  • TS val 1234567890 ecr 0:TS(Timestamp)是TCP连接中的时间戳选项,用于测量网络延迟以及避免旧数据包的错误接收。val表示时间戳值,ecr表示回显应答。在这个例子中,时间戳值为1234567890,回显应答为0。

  • nop:NOP(No Operation)是一个填充选项,用于对齐其他TCP选项。它没有实际功能。

  • wscale 7:WScale(Window Scaling)是一种TCP选项,允许双方协商更大的窗口大小,从而提高TCP连接的性能。wscale后面的数字表示窗口扩大因子。在这个例子中,窗口扩大因子为7,表示实际窗口大小是报文中win字段值的2^7倍。

这些TCP选项在建立TCP连接时进行协商,以确保连接双方都支持这些选项。在实际通信过程中,这些选项有助于提高TCP连接的性能和可靠性。

相关推荐

  1. TCPDUMP包明确显示IP地址和端口

    2023-12-23 01:42:03       50 阅读
  2. tcpdump

    2023-12-23 01:42:03       41 阅读
  3. tcpdump

    2023-12-23 01:42:03       30 阅读
  4. 路由器tcpdump包方法

    2023-12-23 01:42:03       65 阅读
  5. 网络包命令tcpdump

    2023-12-23 01:42:03       63 阅读
  6. tcpdump服务器包实测

    2023-12-23 01:42:03       27 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-23 01:42:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-23 01:42:03       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-23 01:42:03       82 阅读
  4. Python语言-面向对象

    2023-12-23 01:42:03       91 阅读

热门阅读

  1. 3-go-函数、包、if-else语句、for循环、switch语句

    2023-12-23 01:42:03       52 阅读
  2. 设计模式中的设计原则

    2023-12-23 01:42:03       65 阅读
  3. RedisTemplate存取数据

    2023-12-23 01:42:03       59 阅读
  4. 常见的排序算法---快速排序算法

    2023-12-23 01:42:03       81 阅读
  5. Oracle-表备份、表数据备份、create select语句备份

    2023-12-23 01:42:03       61 阅读
  6. 设计测试用例

    2023-12-23 01:42:03       50 阅读
  7. 数据结构【2】:列表专题

    2023-12-23 01:42:03       58 阅读
  8. 【Linux】Linux中链表数据结构详细说明及用法代码

    2023-12-23 01:42:03       53 阅读
  9. LeetCode2828. Check if a String Is an Acronym of Words

    2023-12-23 01:42:03       59 阅读
  10. 面试算法65:最短的单词编码

    2023-12-23 01:42:03       60 阅读