标签: tcpdump

tcpdump 文件大小 == 流量大小?

我创建了一个 tcpdump 文件:

tcpdump -i eth0 host xxx.208.xxx.59 -n -s 0 -vvv -w /tmp/dump.dmp
Run Code Online (Sandbox Code Playgroud)

持续时间约为3小时。

此文件现在有 450 MB。我现在可以说 IP xxx.208.xxx.59 在 3 小时内产生了 450 MB 的流量吗?

packet-sniffer tcpdump sniffing

3
推荐指数
1
解决办法
1445
查看次数

如何获取每个 IP 的服务器的网络使用情况?

我想知道一种工具,以编程方式测量每个 IP 应用于服务器的负载(以 KB/s 为单位)。

到目前为止,tcpdump 在告诉我每秒发送的数据包数量方面做得很好,但我相信很多都没有显示(以 350KB/s 的速度下载,而每秒只输出 150 个数据包)。

我这样做是否正确?iftop 将是完美的,但我需要一个可以通过标准输出(没有 ncurses)连接的程序。

networking linux network-monitoring tcpdump

3
推荐指数
1
解决办法
150
查看次数

tcpdump 在捕获过程中将 UDP 数据包中的有用数据截断为 1472 字节

我正在编写一个与网络一起使用的应用程序。为了执行一些测试,我需要重现前一天的流程。但同时不允许停止当前工作的监听器。我也无法重写现有程序以保存传入流。为了解决我的任务,我决定使用 tcpdump。

我使用以下命令在目标机器上运行 tcpdump:

tcpdump -w capture.cap -n "dst host host.domain.com and port 5555"
Run Code Online (Sandbox Code Playgroud)

当我用 tcpick 或 scapy 阅读 capture.cap 时。我可以看到所有超过 1472 字节的有用数据都被截断为长度为 1472。但在标头中它仍然写入数据包的原始长度。我可以判断,UDP 数据包拆分为多个,然后再次连接。但是 tcpdump 可能会过滤掉所有没有标头的包(应该只出现在第一个包中)

有没有办法转储完整的 UDP 包?

networking linux udp tcpdump

3
推荐指数
1
解决办法
9048
查看次数

Netstat 和 ss 没有看到连接

我正在尝试查找 Kubernetes 集群上运行的哪个应用程序正在使用特定端口与 RabbitMQ 集群进行通信。在 RabbitMQ 上,我看到连接来自 192.168.1.10:34226。192.168.1.10是Kubernetes节点之一。登录到 192.168.1.10 后,我检查是否通过 tcpdump 命令从该节点建立了连接tcpdump -i eth0 port 34226。我看到两个方向的交通。现在我正在尝试查找哪个进程正在建立此连接。首先我尝试了 netstat:

netstat -tapn | grep 34226

结果什么也没发现。然后我尝试了 ss 但仍然一无所获。连接已建立,通过 tcpdump 我可以看到发送到 RabbitMQ 的心跳数据包以及来自 RabbitMQ 的响应。但 netstat 和 ss 不报告已建立的连接。

更新1

我发现这与网络命名空间有关。我的问题与this问题类似,但我需要找到从34226端口建立连接的进程的PID。

netstat tcpdump network-namespace kubernetes

3
推荐指数
1
解决办法
5724
查看次数

更改与 tcpdump 中的端口关联的协议?

此问题之后,我如何判断tcpdump对特定端口使用特定协议分析器?

我正在使用在端口 5053 上运行的测试服务器进行一些 DNS 开发,但我不知道如何判断tcpdump这真的是 DNS 流量。

我不能使用wireshark - 数据包没有通过有GUI 的机器。

domain-name-system tcpdump

2
推荐指数
2
解决办法
1415
查看次数

tcpdump 语法,仅用于捕获进入特定虚拟接口/本地 IP 的流量

CentOS 5.x

我需要收集发送到特定 IP 地址/虚拟接口的 https 请求的数据包捕获。tcpdump 是否有特定的开关/参数允许这样做?其他 IP 接收大量流量,因此我不想捕获与它们有关的数据,并且稍后必须将它们过滤掉......

linux centos tcpdump centos5 packet-capture

2
推荐指数
1
解决办法
1万
查看次数

在 tcpdump 过滤中,“端口”与“tcp”是多余的吗?

为什么在使用“端口”时要在“tcpdump”过滤器中强制使用“tcp”,给定端口号在 TCP 标头中定义(而不是 IP)

换句话说,是

tcpdump tcp and port 10000
Run Code Online (Sandbox Code Playgroud)

同义词

tcpdump port 10000
Run Code Online (Sandbox Code Playgroud)

filtering tcpdump

2
推荐指数
1
解决办法
224
查看次数

本地检查远程机器的网络流量

我在 192.168.0.1 和 192.168.0.100 上有对我的 dd-wrt ​​路由器和计算机的 root 访问权限。

我需要让来自其他计算机(192.168.0.101)的流量通过路由器(进出互联网)并在我的 192.168.0.100 机器上的wireshark 中检查它。如何才能做到这一点?可能在路由器上使用 iptables。

iptables tcpdump

2
推荐指数
1
解决办法
1541
查看次数

按时间和大小限制 tcpdump 捕获文件

我在使用 tcpdump 将所有 Internet 流量记录在具有以下限制的接口上时遇到了一些问题:

  • 我想每小时创建一个新的 pcap 文件,名称中带有时间和日期标签
  • 如果这一小时内的 pcap 文件变得大于 100M,则创建一个新的 pcapfile,其名称与以前相同,但带有 -2 -3 -4 ... 后缀。

我正在使用以下命令:

tcpdump -pni eth0 -s65535 -G 3600 -C 100 -w '/var/log/tcpdump/trace_%Y-%m-%d_%H:%M:%S.pcap'

因此,我每小时都会收到一个日志文件,但如果文件大于 100,它似乎不会拆分文件。

有谁知道我在哪里搞砸了?为帮助干杯

bash logging tcpdump

2
推荐指数
1
解决办法
2万
查看次数

如何使用 tshark 或 tcpdump 计算传输的字节数

我在 tshark 中使用这个命令:

tshark -r pcapfile "tcp and ip.src==192.168.1.1" -T text -V -x | grep 'Total Length'
Run Code Online (Sandbox Code Playgroud)

这本质上仅解析来自源 ip 的连接的 pcap,并查找每个数据包的总长度(以字节为单位)。我得到这样的输出:

Total Length: 125 
Total Length: 210 
Total Length: 40 
Total Length: 125
> etc, etc....
Run Code Online (Sandbox Code Playgroud)

我需要做的是从 Total Length 中获取数字并将它们相加,以便我可以了解在 pcap 的时间范围内从单个 IP 通过线路传递了多少数据。

有没有我可以在我用来执行此操作的命令的末尾添加的命令?或者有没有一种方法可以直接到标准输出,然后将其通过管道传输到可以解析和计算我所追求的程序?任何人都知道可以执行此操作的带有 tcpdump 的类似命令?

log-files tcpdump pcap tshark

2
推荐指数
1
解决办法
4780
查看次数