我有两台服务器,每台运行一个Java应用程序,在不同的端口上创build两个独立的TCP连接,一个来自HostA – > HostB,另一个来自HostB – > HostA。 我被告知TCP连接丢失并重新build立,但客户端无法为我提供发生的时间和date。 我可以在HostA上设置tcpdump来监视特定的端口,纯粹告诉我什么时候断开连接? HostB连接也一样? 我不在乎有效载荷数据等 我看了手册页,发现了一些HowTo的在线,谷歌search等。我没有看到我正在寻找的例子。 谢谢,如果你能帮助。
有没有办法使用tcpdump或任何其他的Linux工具来了解VXLAN ID / VLAN ID,同时捕获接口上的数据包?
我在netcat中使用UDPdebuggingOpenVPN站点到站点的连接。 我可以让数据包在一个方向stream动(主机A->主机B),但不是反向的。 root@hosta:~# nc 10.0.3.2 1234 -u root@hostb:~# nc -l 1234 -u 奇怪的是,当在主机A中运行tcpdump时,我实际上看到了从主机B到达的UDP数据包: root@hosta:~# tcpdump port 1234 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 17:36:04.695423 IP hosta.46603 > 10.0.3.2.1234: UDP, length 4 17:36:06.484233 IP 10.0.3.2.1234 > hosta.46603: UDP, length 4 […]
¿如何debugging此问题? (我有完整的tcpdump捕获) 我有一个TCP服务器,许多客户build立持久连接。 通常,所有这些客户端的行为,我从来没有达到每个进程的默认Linux限制连接(打开的文件)。 昨天有人(或某事)开始行为不端,并留下许多开放的连接,迫使我重新启动服务器。 你可以在下面的munin netstat图上看到它的行为: 每次连接达到1000,我重新启动服务器。 这种不正当行为只是第四次神秘地停了下来,没有任何明显的原因。 一周前发生了类似的事情。 所有不好的连接来自同一个(子)networking:我可以将它们隔离起来,但也有一些来自同一networking的有效连接(所以我不能拒绝来自该networking的连接)。 到目前为止,我已经使用tcpdump,ethereal和ngrep,但是我还没有find一种方法来查看已build立的连接,但是不会传输数据。 我应该如何看待tcpdump(pcap)捕获以隔离不正常的连接并研究它们? 你会build议什么来阻止这种情况的发生? 谢谢!
我使用tcpdump捕获一个服务器的输出数据包,但我也需要阻止这些数据包。 如果我使用iptables来阻止他们,那么我也无法捕捉任何东西。 我可以使用iptables阻止数据包,并在数据包被丢弃之前仍然捕获这些数据包吗?
我正在寻找一种工具,它可以嗅探接口上的所有stream量,并实时生成一个类似于思科日志的系统日志。 例如: Feb 16 10:19:05 tcp SSSS(6083) -> DDDD(80), 1 packet Feb 16 10:19:07 tcp SSSS(80) -> DDDD(4662), 1 packet Feb 16 10:19:11 igmp SSSS -> 224.0.0.1, 1 packet Feb 16 10:19:13 udp SSSS(53) -> DDDD(13341), 1 packet Feb 16 10:19:13 icmpv6 FE80::660:2408:2:2 -> FF02::1 (134/0), 2 packets 在示例中,SSSS是源IP地址,DDDD是目的地IP地址。 我尝试使用tshark,但是我不能使用filter来做所有的事情,因为有时候会有端口(对于TCP或UDP),有时候不会。 如果我们也可以有L2地址,这将是很酷的。 你的箱子里有这样的工具吗? 它应该在Debian Linux上工作。 捕获所有文本stream量将是一个守护进程。 […]
我有安装在Apache服务器上的Web应用程序(端口80,没有SSL)。 这个应用程序的工作是通过从客户端文件传输来收集一些信息。 我的目标是检查我的客户是否发送正确的文件。 所以我想捕获传输到我的Apache的文件,然后检查数据格式是否正确。 我启动tcpdump是这样的: tcpdump -s0 -i eth0 'port 80' -vv但输出不是我想要的。 是否有可能在同一台服务器上运行tcpdump?
当我没有任何互联网conncetion,我想捕捉本地计算机之间的networking,tcpdump的行为是这样的: 1.我使用以下命令启动tcpdump: tcpdump -ixenbr0 2.运行后,tcpdump进入冻结模式大约1-2分钟,然后捕获一些数据包并再次冻结,再次捕获一些相同的结果。 我甚至不能用ctrl + c退出tcpdump,甚至用killall tcpdump命令杀死tcpdump进程。 我在networking中的所有计算机上都有这个问题,而不是一个。 但是,当我连接networking到互联网,tcpdump工作得很好。 一切都可以与互联网连接。 对我来说似乎很奇怪。 我也试过了,但没有运气。 我使用Ubuntu 14.04。 Tcpdump版本是4.5.1。 任何人有任何想法是什么错误?
即使我可以清楚地看到tcpdump输出中的响应,我也遇到了实际ping过程收到答复的问题。 我正在运行: Mac OS X 10.11.4 El Capitan 作为一个成员的龙头接口与龙头界面 qemu正在运行IncludeOS的虚拟机实例 桥梁创build如下: sudo ifconfig bridge5 create sudo ifconfig bridge5 10.0.0.5 netmask 255.255.255.0 up 分接接口是一个tuntap设备,并按如下方式连接到网桥: sudo ifconfig bridge5 addm tap0 我用qemu启动我的虚拟机没有问题,这是我观察到的: 连接到虚拟机上运行的TCP服务没有问题。 我可以加载一个网页。 执行一个arping很好。 一个正常的ping 10.0.0.42给我Request timeout for icmp_seq ,但是当我检查出tcpdump输出我看到以下内容: $ tcpdump -i bridge5 -vvv tcpdump: listening on bridge5, link-type EN10MB (Ethernet), capture size 262144 bytes 15:11:40.014240 […]
在工作中,我被要求增加对将多个密钥映射到单个(甚至多个)IP到本质上被动的HTTP嗅探器的支持。 它支持用户上传的密钥进行SSL解密。 目前,它支持一个IP到一个密钥的映射,或一个IP到多个密钥的映射。 问题出在通知方面。 目前我们发送SNMP陷阱和/或电子邮件,如果密钥不再起作用。 使用多对多的映射,我将无法知道失败是否是由于一个映射键已经改变的模数(因此键已经改变),或者它只是一个额外的键被添加,或者系统pipe理员对解密不感兴趣。 主要的问题在于这里,因为它将被实现的方式,除非完全重写被允许,还将打破一对一IP /密钥映射的当前通知。 我认为这是错误的,这是我的观点。 有人可以帮我支持与老板的这个论点吗? 或者,如果我错了,请告诉我我的推理错误在哪里。 这个function是必需的,因为显然有一个用例,一个webapp中的多个节点使用不同的密钥,即使它们都映射到一个VIP。 请求这个function的人坚持说他们已经在客户端环境中看到了这个function。 我想确认这是一个错误的观察,但我没有tcpdumps这样做。 我认为,对于一个单独的IP,SSL协商将始终发送相同的证书,因此将使用相同的密钥,因为没有HTTPS已经完成,它只知道到IP的连接,不知道什么主机:在这个阶段,头文件存在于webapp / server上,以确定应用程序将会响应什么。 因此,在我看来,不能有这样的用例。 是否有一个负载均衡器可以让您将两个密钥放到一个VIP中? 而且,即使可以做到这一点,基于SSL协商的方式,也无法控制terminal用户甚至收到正确的证书。 这基本上是一个破碎的设置。 我想不出一个有效的用例,它不会导致客户端的随机SSL不匹配错误。 所以,我疯了,觉得这不应该被支持? 如果是这样,我很想知道何时将多个密钥映射到单个IP是一个有效的用例。 如果没有,请为此提供进一步的build设性论据 – 因为我上述论点没有成功。 到目前为止的答复是“系统pipe理员不胜任的问题不是我们的问题,我们应该支持” 编辑:我打破了标题