Articles of tcpdump

我如何才能logging所有stream量的确切长度?

我想通过我们的网关服务器(运行Debian 4.0)处理所有数据包的大小。 我的想法是使用tcpdump,但我有两个问题。 我目前正在考虑的命令是tcpdump -i iface -n -t -q 。 是否保证tcpdump将处理所有的数据包? 如果CPU正在满负荷工作,会发生什么情况? 输出行的格式为IP ddd.ddd.ddd.ddd.port > ddd.ddd.ddd.ddd.port: tcp 1260 。 什么是1260? 我怀疑它是数据包的字节有效负载,这正是我所需要的,但我不确定。 这可能是TCP窗口大小。 或者也许还有更好的方法呢? 我想到了iptables中的LOG规则,但tcpdump似乎更容易,我不知道iptables是否可以logging数据包长度。 更新: 现在在IpTables中实现。 为每个网段使用一个单独的链,我有一棵深度为3的树。 该机器具有较高的软中断负载,尤其是在晚上(当我们大多数用户在线时),但是到目前为止,这是可以接受的。 感谢您的input。

无法从MySQL获取TCPdump

我有一个棘手的服务器上的相当多的问题。 目前我的一个主要问题是tcpdump似乎无法获取发送到mysql的数据包,除非我用一点点的方法修改MySQL。 这是我运行的: tcpdump -s 65535 -x -nn -q -tttt -i任何-c 99999端口3306 当我运行这个,没有输出显示。 但是,如果我使用login到mysql mysql -h 127.0.0.1 然后tcpdump显示一些输出。 我的问题是,来自Apache的当前stream量不会显示使用tcpdump,我不知道是否需要更改tcpdump,MySQL或apache中的参数。 一些更多信息: netstat -tap | grep mysql tcp 0 0 *:mysql *:* LISTEN 2238/mysqld 猫/ etc / hosts 127.0.0.1 localhost localhost.localdomain 任何人都可以请帮忙?

如何实时查看应用程序networking协议通信

我想实时查看客户端 – 服务器应用程序使用的协议。 我对任何统计资料都不感兴趣。 我想看到的是由服务器和客户端发送的消息。 这是FreeBSD的具体如果有帮助。一些谷歌search后,我发现tcpdump作为正确的select。 所以我试图在我的服务器上运行它,但不能缩小特定于我的应用程序的数据包内容。 它的一堆文字滚动直播。 我的应用程序的实际通信量不足以在terminal上显示时丢失跟踪。 我想我可能没有提供足够的信息。 如果需要什么,请添加评论。 我会很快回复。 任何帮助或指针,高度赞赏。

如何使tcpdump在捕获一定数量的数据包后停止捕获?

我正在debugging两个服务器在彼此通信时陷入循环的问题。 服务器重新启动后,问题将在某个时间点开始,可能在一个小时或一天之内。 我想在问题开始时tcpdumpstream量,所以我可以找出是什么让它发生。 我的计划是重新启动服务器,然后让tcpdump捕获stream量,然后分析结果。 不过,我想在捕获几千个数据包之后停止tcpdump,以避免监视它,因为我不知道stream量何时开始。 任何人有一个build议?

IPv6 DNS查找

我试图阻止networking服务器对DNS服务器执行IPv6查找(AAAA)。 Web服务器在接口上没有设置IPv6地址。 在sysctl.conf中禁用IPv6也没有任何影响,Web服务器不断地发送每个主机名的A和AAAA请求到DNS服务器(我执行了一个tcpdump)。 任何人都可以帮助我停止Web服务器发送IPv6主机名查找? 额外的信息: 这是在我的内部networking上。 TCPDump的: webserver.internal.43831 > internaldns.internal.domain: [bad udp cksum 629d!] 63585+ A? someserver.internal. (43)` webserver.internal.43831 > internaldns.internal.domain: [bad udp cksum 32dd!] 40337+ AAAA? someserver.internal. (43) internaldns返回Alogging的IP和NXA的AAAA,因为没有设置一个。

如何重新启动后在Centos上运行tcpdump?

我看到我的Amazon EC2在重新启动Linux机器后有很多stream量进入。 我想知道服务器在重新启动后回来后发生了什么。 我想使用tcpdump捕获stream量。 我如何确保tcpdump在重启后立即启动并将信息写入文件? 我应该使用其他工具吗? 谢谢!! 多坦。

Rsyslog不从远程服务器logging

我正在尝试build立一个集中的日志服务器。 我有中央服务器(A)通过端口514上的远程服务器(B)接收日志。我知道它正在接收这些。 以下是来自514端口上的tcpdump的一些条目 # tcpdump port 514 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes 10:49:52.136520 IP IP_FROM_SERVER_B.55558 > IP_FROM_SERVER_A.syslog: SYSLOG local0.notice, length: 474 10:49:52.136792 IP IP_FROM_SERVER_B.55558 > IP_FROM_SERVER_A.syslog: SYSLOG user.notice, length: 671 10:49:52.136838 IP IP_FROM_SERVER_B.55558 > IP_FROM_SERVER_A.syslog: SYSLOG user.info, length: […]

为什么OS X花费更多的数据包来build立和closuresTCP连接?

Linux花费3个数据包build立TCP连接,3个数据包closures,如tcpdump捕获所示 # establishing TCP connection 22:37:09.150456 IP 127.0.0.1.49327 > 127.0.0.1.8000: Flags [S], seq 598953185, win 65535, options [mss 1368,nop,wscale 4,nop,nop,TS val 808887890 ecr 0,sackOK,eol], length 0 22:37:09.150498 IP 127.0.0.1.8000 > 127.0.0.1.49327: Flags [S.], seq 1017784291, ack 598953186, win 14480, options [mss 1460,sackOK,TS val 116674605 ecr 808887890,nop,wscale 6], length 0 22:37:09.159764 IP 127.0.0.1.49327 > 127.0.0.1.8000: Flags […]

如何从tcpdump剥离TCP头(hex输出不可打印的数据)

tcpdump不知道如何从打包数据中剥离TCP头。 tcpflow打印的唯一的数据包数据,很好,但它只支持ASCII字符,没有hex输出可能。 我忽略了一些select吗? 还有其他的方法吗?

运行作业和暂停的作业写入相同的文件

所以我偶然在一夜之间运行了tcpdump,输出到同一个文件。 但是,我把他们当成了工作,其中一个人一直停下来。 任何人都有如何保持文件的build议? 到目前为止,我已经想到: kill -9暂停的作业 暂停正在运行的作业,复制文件,然后停止。 两个听起来像是最安全的select,任何人都有一个更好的主意,而不是首先这样做;-)