标签: tcpdump

用于查找进程发起通信的 tcpdump 选项

我正在使用 Linux 命令行,当我运行以下命令时:

 tcpdump -n dst host destsitename
 tcpdump -n dst host stackoverflow.com
Run Code Online (Sandbox Code Playgroud)

看看我的服务器作为源是否与该域通信,我如何找出哪个进程从我的服务器作为源进行通信。

我的问题是我应该在“tcpdump”中使用哪个选项。

linux tcpdump

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

仅使用 tcpdump 保存原始二进制负载

如何使用 tcpdump 捕获流量并仅以原始二进制格式保存完整的有效负载(应用程序层数据,无 tcp/ip 标头)?

binary packet-capture tcpdump

5
推荐指数
1
解决办法
5705
查看次数

Linux 有没有办法记录发送 TCP RST 数据包的原因?

运行这个版本的内核4.11.8-1.el6.elrepo.x86_64并想知道为什么 TCP 堆栈发送一些 RST 数据包,即是否有 BSD 的 Linux 对应项net.inet.tcp.log_debug=1

以下是需要原因的案例之一。在握手最终到达 ACK 后立即发送 RST。可以看到SYN丢失了好几次,并且最后一个ACK在超过1秒后才到达。但目前还不清楚为什么要发送RST。禁用 syn cookie 没有帮助。

15:27:41.166799 IP CLIENT.16537 > SERVER.80: Flags [S], seq 1397492268, win 29200, options [mss 1440,sackOK,TS val 1230199 ecr 0,nop,wscale 6], length 0
15:27:41.166820 IP SERVER.80 > CLIENT.16537: Flags [S.], seq 1773519351, ack 1397492269, win 29200, options [mss 1460,nop,nop,sackOK,nop,wscale 9], length 0
15:27:42.069572 IP CLIENT.16537 > SERVER.80: Flags [S], seq 1397492268, win 29200, options [mss 1460,sackOK,TS val 1230299 ecr 0,nop,wscale 6], length …
Run Code Online (Sandbox Code Playgroud)

linux tcp tcpdump linux-kernel

5
推荐指数
1
解决办法
2833
查看次数

tcpdump只显示in或out mac地址,如何同时显示?

我的操作系统版本:CentOS Linux release 7.5.1804(核心)

我的 tcpdump 版本:

tcpdump: option requires an argument -- 'V'
tcpdump version 4.9.2
libpcap version 1.5.3
OpenSSL 1.0.2k-fips  
26 Jan 2017
Run Code Online (Sandbox Code Playgroud)

当命令为 tcpdump -i any -e -nn 时,输出如下:

15:55:07.876878  **In 00:50:56:c0:00:08** ethertype IPv4 (0x0800), length 80: 172.16.248.1.61944 > 172.16.248.101.80: Flags [S], seq 448335523, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 386448815 ecr 0,sackOK,eol], length 0
15:55:07.876939 **Out 00:50:56:28:6d:20** ethertype IPv4 (0x0800), length 80: 172.16.248.1.61944 > 172.16.248.101.80: Flags [S], seq 448335523, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS …
Run Code Online (Sandbox Code Playgroud)

macos tcpdump centos7

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

如何修复 Mac OS 上的 BPF 设备权限以使用 tcpdump

我可能已经做了一些更改我的设备权限的操作,因为我收到错误:"tcpdump: en0: You don't have permission to capture on that device"。TCP 部分无关紧要,因为我在使用设备时遇到问题bpf。我尝试将权限恢复为默认值,并将它们设置为如下所示,但我仍然遇到问题sudo

我已重置权限并重新启动多次。另外,我的笔记本电脑被更换了,硬盘是唯一被转移的东西。

zjam@ZimSec:~$ tcpdump -i en0

tcpdump: en0: You don't have permission to capture on that device
((cannot open BPF device) /dev/bpf0: Permission denied
)
zjam@ZimSec:~$ sudo tcpdump -i en0

tcpdump: en0: You don't have permission to capture on that device
((cannot open BPF device) /dev/bpf0: Permission denied)

0 crw-rw----   1 root  access_bpf      23,   0 Aug 22 13:27 bpf0

0 crw-rw----   1 root …
Run Code Online (Sandbox Code Playgroud)

macos wireless tcpdump wireshark bpf

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

使用远程主机接口的 scapy sniff

我想使用 scapy 嗅探一些数据包,但不是从自己主机的接口嗅探,而是想从远程主机(例如 192.168.1.x)及其接口嗅探。使用 python 和 scapy 和/或带有 tcpdump 的 paramiko 隧道可以实现这一点吗?

sniff(prn=packet_callback, iface=iface, filter=bpf_filter, count=0)
Run Code Online (Sandbox Code Playgroud)

iface如果我能用适当的功能或虚拟接口替换,我会很高兴。远程是一个tcpdump已安装的 Linux 盒子,所以我可以通过 ssh 执行以下操作

$ tcpdump -i eth1 -U -w -
Run Code Online (Sandbox Code Playgroud)

请指教,谢谢。

python tcpdump scapy

5
推荐指数
0
解决办法
672
查看次数

在环回上重放 pcap

我有一组pcap包含来自两台主机的 UDP 流量的文件,并且必须定期对此流量执行一些分析。

理想情况下,我希望避免频繁设置具有特定 IP 的本地接口等来重播这些文件。我希望能够简单地在我的环回接口上重播它们,使用tcprewrite更改pcap.

这是它目前的样子:

# Remove mac addresses for loopback interface
# Remove VLAN tags
tcprewrite \
  --enet-smac=00:00:00:00:00:00 \
  --enet-dmac=00:00:00:00:00:00 \
  --enet-vlan=del \
  --infile="${INFILE}" \
  --outfile="${OUTFILE}.tmp"

# Change source and destination IP to loopback
# Regenerate IP checksums
tcprewrite \
  --srcipmap=0.0.0.0/0:127.0.0.1 \
  --dstipmap=0.0.0.0/0:127.0.0.1 \
  --fixcsum \
  --infile="${OUTFILE}.tmp" \
  --outfile="${OUTFILE}"
Run Code Online (Sandbox Code Playgroud)

看起来差不多可以工作了。然后我可以简单地使用我的环回重播这些文件,tcpreplay并且我看到数据包使用tcpdumpon lo。尽管如此,似乎任何常规用户空间套接字都看不到环回上的此流量。

据我了解,这似乎与Linux上环回接口处理第2层的方式有关。看来我需要将第 2 层标头 (DLT) 从普通协议重写ethernetnullBSD 环回使用的协议。

任何有将以太网上捕获的 UDP 流量重放到环回接口的经验的人将不胜感激。pcap我不知道如何使用/来实现这一点,或者是否可行 …

loopback tcpdump pcap tcpreplay

5
推荐指数
0
解决办法
1017
查看次数

frame包含"\ x03\x00\x0e\xa8"在wireshark中的显示过滤器显示不包含这些字节的数据包

我在wireshark中使用了以下过滤器来查找包含这些字节的数据包:

frame contains "\x03\x00\x0e\xa8"
Run Code Online (Sandbox Code Playgroud)

但是当我看到这个过滤器的结果时,它会显示超过1k的数据包,甚至不包含这些字节.例如,它甚至显示以下以太网数据包:

00219ba0610678e7d1c625f40800450000282a0340008006cd88c0a87801d43af65f059e00503bac54cf9f17722a5010ffff04e50000
Run Code Online (Sandbox Code Playgroud)

这个字节包含在这个数据包中.类似地,显示了几个其他分组,而实际上只有两个包含这些字节的分组也被显示.谁能告诉我这里的问题是什么?任何帮助都将得到很高的评价.谢谢

network-programming packet-capture tcpdump wireshark wireshark-dissector

4
推荐指数
1
解决办法
6838
查看次数

如何编辑wireshark pcap来改变数据包的顺序

我有一个使用wireshark捕获的pcap文件.假设pcap有6个包,编号从1到6,如下所示.现在我想编辑这个pcap文件,以便我以不同的顺序获取数据包.例如,如果原始pcap包是

1,2,3,4,5,6
Run Code Online (Sandbox Code Playgroud)

我想要一个新的pcap编辑后,现在数据包在顺序(例如)如下:

2,3,1,4,5,6
Run Code Online (Sandbox Code Playgroud)

类似地,我可以有一些其他订单,例如,2,4,5,6,1,3或任何其他订单.

任何人都可以让我知道我该怎么做?(可能使用wireshark或任何其他方法).任何帮助将不胜感激.谢谢

network-programming packet-capture tcpdump wireshark wireshark-dissector

4
推荐指数
1
解决办法
5807
查看次数

TcpDump:显示pcap文件的绝对时间戳(日期和时间)

我想使用tcpdump查看pcap文件中数据包的绝对时间戳。当我使用命令tcpdump -r mypcapfiile时,它仅显示时间,  

03:21:14.804778 IP static.vnpt.vn.51193 > 192.168.0.146.smtp
Run Code Online (Sandbox Code Playgroud)

如何读取日期呢?

timestamp tcpdump pcap

4
推荐指数
1
解决办法
5785
查看次数