Questions tagged «tcpdump»

命令行数据包分析器

5
为什么内核会丢弃数据包?
我tcpdump用Ctrl+ 打断C了总的摘要: 579204 packets captured 579346 packets received by filter 142 packets dropped by kernel 什么是“内核丢弃的数据包”?为什么会这样呢?
49 kernel  tcpdump 

5
如何实时处理/管道TCPDUMP输出
如果我想通过客户端tcpdump DNS请求(在OpenWrt 10.04路由器上),那么我 root@ROUTER:/etc# tcpdump -n -i br-lan dst port 53 2>&1 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on br-lan, link-type EN10MB (Ethernet), capture size 96 bytes 22:29:38.989412 IP 192.168.1.200.55919 > 192.168.1.1.53: 5697+ A? foo.org. (25) 22:29:39.538981 IP 192.168.1.200.60071 > 192.168.1.1.53: 17481+ PTR? …
27 pipe  tcpdump 

2
Debian 8.6上的Ghost NTP服务器
因此,我和大学的IT安全团队一直在不停地走来走去...任何人对此都有任何想法: 我最近为我的实验室设置了一台小型文件服务器,在专用计算机上运行Debian 8.6(英特尔Avoton C2550处理器,很乐意在需要时提供更多硬件信息,但我认为没有必要)。Debian的安装没有任何问题,当时我还安装了Samba,NTP,ZFS和python。看起来一切正常,所以我让它在实验室的角落坐了几个星期。 大约两周前,我收到了IT团队的电子邮件,其中说我的服务器已“受损”,并且易受NTP放大/ DDoS攻击(使用CVE-2013-5211的NTP放大攻击,如https中所述)使用: //www.us-cert.gov/ncas/alerts/TA14-013A)。他们指向的标志是端口123上有很多NTPv2流量。奇怪的是,他们标识为(*.*.*.233)的IP地址与为服务器配置并通过ifconfig(*.*.*.77)报告的IP地址不同。但是,一些基本的故障排除表明我的计算机确实在端口123上生成了此流量(如tcpdump所示)。 这就是怪异开始的地方。我首先浏览了为CVE-2013-5211推荐的“修复程序”(同时更新了版本4.2.7之后的NTP并禁用了monlist功能)。两者均未阻止交通流量。然后,我尝试通过IP表阻止UDP 123端口: $ /sbin/iptables -A INPUT -o eth0 -p udp --destination-port 123 -j DROP $ /sbin/iptables -A OUTPUT -o eth0 -p udp --destination-port 123 -j DROP 但这对流量也没有影响。我最终尝试从系统中清除NTP,但这对流量也没有影响。截至今天下午,nmap仍在报告: Starting Nmap 5.51 ( http://nmap.org ) at 2016-12-19 16:15 EST Nmap scan report for *.233 Host …

1
用于在内核空间捕获数据包的缓冲区大小?
通过的手册页tcpdump,看来如果缓冲区已满,内核可以丢弃数据包。我想知道是否: 该大小是可配置的和/或 在哪里可以看到发行版的大小? 在手册页中(为便于参考): ``被内核丢弃的数据包''(这是由于tcpdump运行所在的OS中的操作系统中的数据包捕获机制由于缺少缓冲区空间而丢弃的数据包的数量;如果OS向应用程序报告了该信息;如果不是,它将报告为0)。

2
如何收集DNS A记录请求?
我需要A在RedHat PC上记录所有传出记录。我尝试使用tcpdump: tcpdumpdns=OUTPUT-FILENAME-HERE nohup tcpdump -K dst port 53 -w $tcpdumpdns > /dev/null 2>&1 & 它使输出文件如下: 19:26:12.185392 IP 172.16.0.6.57977 > google-public-dns-a.google.com.domain: 51198+ A? yahoo.com. (27) 所以我需要进行处理以获取yahoo.com: echo $tcpdumpdns | awk '/ A\? / {u = NF - 1; print $u}' | sed 's/^www.//g; s/.$//g' | sort -u 有没有更好的解决方案来收集所有传出A记录请求? ps:只需要收集DNS A记录即可获得可通过HTTPS访问的网站的最新列表。因此,我可以为Firefox附加组件的HTTPSEverywhere生成xml文件。因此,这只是脚本的一部分。
15 tcpdump 

4
如何跟踪命令的网络活动?
我想跟踪命令的网络活动,我尝试了tcpdump和strace失败。 例如,如果我要安装软件包或使用任何尝试访问某个站点的命令,则要查看该网络活动(它尝试访问的站点)。 我想我们可以使用tcpdump做到这一点。我尝试过,但是它正在跟踪系统的所有网络活动。假设如果我运行多个与网络相关的命令,并且只想跟踪特定的命令网络活动,那么很难找到确切的解决方案。 有没有办法做到这一点? 更新: 我不想跟踪网络接口上的所有内容。我只想跟踪命令(例如#yum install -y vim)的网络活动。例如它尝试到达的站点。

3
一个如何捕获虚拟接口上的流量?
我想捕获Linux虚拟接口上的流量,以进行调试。我一直在尝试veth,tun而且dummy接口类型; 在这三个方面,我都很难tcpdump显示任何东西。 这是我设置虚拟界面的方法: ip link add dummy10 type dummy ip addr add 99.99.99.1 dev dummy10 ip link set dummy10 up 在一个终端中,通过以下方式观看tcpdump: tcpdump -i dummy10 一秒钟,用以下命令收听nc: nc -l 99.99.99.1 2048 第三,使用发出HTTP请求curl: curl http://99.99.99.1:2048/ 尽管在2号航站楼中我们可以从curl请求中看到数据,但从中看不到任何数据tcpdump。 一个TUN / TAP教程澄清某些情况下,内核可能不会实际发送当一个本地接口上运行的任何数据包: 查看tshark的输出,我们什么都没看到。没有流量通过该接口。这是正确的:由于我们要对接口的IP地址执行ping操作,因此操作系统正确地确定不需要“在线”发送任何数据包,并且内核本身正在答复这些ping操作。如果您考虑一下,这就是您对另一个接口的IP地址(例如eth0)执行ping操作时将发生的情况:不会发送任何数据包。这听起来似乎很明显,但一开始可能会引起混乱(对我而言)。 但是,很难看到这如何适用于TCP数据包。 也许tcpdump应该以不同的方式绑定到接口?
12 networking  kernel  ip  tcp  tcpdump 

1
tcpdump从哪个网络堆栈级别获取其信息?
当我徒劳地尝试在此处修复故障的以太网控制器时,我尝试的一件事是在计算机上运行tcpdump。 我发现tcpdump能够检测到ping应用程序认为正在发送的某些ICMP数据包实际上不在线路上,即使它在同一台计算机上运行,​​也很有趣。我在这里复制了这些tcpdump结果: 14:25:01.162331 IP debian.local > 74.125.224.80: ICMP echo request, id 2334, seq 1, length 64 14:25:02.168630 IP debian.local > 74.125.224.80: ICMP echo request, id 2334, seq 2, length 64 14:25:02.228192 IP 74.125.224.80 > debian.local: ICMP echo reply, id 2334, seq 2, length 64 14:25:07.236359 IP debian.local > 74.125.224.80: ICMP …

1
tcpdump:“捕获的数据包”与“过滤器收到的数据包”
我们有一个脚本 tcpdump -v src host <IP address> and port <port number> >>out.txt 2>>err.txt -w capture.cap 在多个IP上运行,而脚本的其他部分在后台启动一些流量。我们要检查数据包是否返回给我们,并仅在收到包裹时手动检查那些情况。首先,tcpdump的错误输出对此似乎还不错。 正如主题所暗示的,问题是“捕获的数据包”和“过滤器接收的数据包”之间有什么区别?有些捕获没有记录任何数据包,而是输出“捕获了0个数据包,过滤器接收了2个数据包”,这听起来像是一个矛盾,因为如果没有捕获任何数据包,那么其中的2个如何被过滤?最初,我们一直在寻找“过滤器接收到0个数据包”,但是当没有接收到数据包时,它始终不会写入错误输出。那么这些数字显示了什么? 如果要过滤未收到回复数据包的情况,我需要知道要查找的内容。
11 ip  tcpdump 

1
为tcpdump捕获创建多播联接
我想编写一个Linux Shell脚本来捕获特定的多播流量。具体来说,我想创建一个pcap文件,其中包含一个特定多播组/端口的所有流量。 这是我用来查看流量的命令行: tcpdump -nnXs 0 -i eth1 udp port 22001 and dst 233.54.12.234 只要我已经建立了对该组的多播订阅,就可以正常工作。例如,如果我在另一个控制台中运行此命令: mdump 233.54.12.234 22001 10.13.252.51 tcpdump将看到数据包。如果mdump没有运行,tcpdump什么也看不到。 在开始捕获之前,是否有标准的linux-y方法来建立这些多播联接?我可以mdump用来建立这些联接,但这似乎很浪费,因为mdump它将处理组中的所有数据,但是我只是将其丢弃。 请注意,由于我的特定环境,我们不建议将接口置于混杂模式。实际上,它可能被禁止。

1
/etc/dhcp/dhclient.conf中的“ rfc3442-classless-static-routes”是什么
我正在尝试在笔记本电脑上调试DHCP(我正在使用dhcping并dhcdump查看DHCP服务器发回的内容)。以下是我的/etc/dhcp/dhclient.conf。 option rfc3442-classless-static-routes code 121 = array of unsigned integer 8; send host-name = gethostname(); request subnet-mask, broadcast-address, time-offset, routers, domain-name-servers, interface-mtu, rfc3442-classless-static-routes; 我认为,除了以外,我所有这些选项的含义是什么rfc3442-classless-static-routes。另外,我rfc3442-classless-static-routes在DHCP回复中看不到任何相关信息。 它的含义是rfc3442-classless-static-routes什么?在什么情况下可以使用它? (文档毫无意义)

1
如何调查通过环回接口连接到服务器的TCP客户端端口上的随机重置
我有一个测试套件,该套件在localhost上初始化服务器,然后运行成千上万的压力测试,其中包括启动和停止连接到同一计算机上此本地服务器的客户端。我正在尝试查找客户端发送到服务器的RST的原因。 这是事件的顺序: 客户端初始化SYN 服务器发回SYN,ACK 客户端发送RST(而不是ACK和建立连接) 一个观察结果是,在许多情况下,服务器运行大约99%的CPU,尽管它在几秒钟/分钟后恢复正常。 最初,我认为这可能是因为客户端使用的是先前关闭的连接中的端口,该端口处于TIME_WAIT状态,因此当服务器在该连接上发送SYN,ACK时,客户端会发出RST。尽管我对为什么客户端应该在TIME_WAIT状态下使用端口表示怀疑,但是后来我使用的是旧的fedora核心4,并认为可能没有正确的TCP / IP实现:-)。 现在,我不认为这是原因,因为围绕解决上述问题所做的所有调整都无法缓解问题。仅供参考,以下是我尝试过的更改/etc/sysctl.conf: net.ipv4.ip_local_port_range = 1024 65535 net.ipv4.tcp_fin_timeout = 15 net.ipv4.tcp_rfc1337 = 1 net.ipv4.tcp_tw_reuse = 1 还有一点,这个问题并不一致。实际上,只有经过15到35个重新启动服务器并运行所有客户端测试的周期后,我才能重现此问题。 我没有所有可以想到的原因,所以请让我知道是否有人对可能发生的事情有任何想法。 封包详细资料 Date & Time No. Time Source Destination Protocol Length Source port Dest port Info 2014-06-25 14:49:45.378209 1032719 1858.494749 ::1 ::1 TCP 94 netview-aix-5 navisphere …
10 fedora  tcp  tcpdump  tcp-ip 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.