Articles of netstat

如何处理Linux上的TCP连接攻击

我的服务器被淹没,直到Apache变得无法响应, 我需要一些帮助find并阻止负责任的IP地址 。 通常,我没有超过150个连接。 现在我有几千: netstat -nat | awk '{print $6}' | sort | uniq -c | sort -n 1 established) 1 Foreign 13 LAST_ACK 20 CLOSING 30 SYN_RECV 41 LISTEN 44 FIN_WAIT1 74 FIN_WAIT2 77 CLOSE_WAIT 273 ESTABLISHED 1960 TIME_WAIT MRTG图清楚地显示了攻击开始之前的正常连接: 这是每个IP计数连接的结果(仅列表的结尾): netstat -atun | awk '{print $5}' | cut -d: -f1 | sed […]

如何在过去15分钟内测量带宽?

我想logging我的带宽到一个数据库,并找出当我的Windows Server 2003的使用最多。 我想用从最后一个提要传递的带宽来提供数据库(比方说15分钟)。 我知道netstat -e命令返回接口启动后传递的带宽。 有没有办法以某种方式重置计数器,而不禁用和重新启用接口? 如果没有,有没有比caching最后一个样本和每次计算差异更好的方法? 我在python脚本,如果它是相关的。

让一个进程监听0.0.0.0(或不是127.0.0.1)

这两个盒子都是RHEL5。 我有一个python RPC服务器运行在本地端口8000端口。当运行在同一台机器上的客户端尝试连接,一切正常。 当远程客户端尝试连接时,我们没有得到任何回应。 netstat显示进程运行在127.0.0.1:8000,这似乎是如果我想要允许远程连接器的问题。 我已经转发了路由器上的端口,并使用tcpdump我可以看到RPC调用进入端口8000,但它们都失败,RPC服务器永远不会收到消息。 服务器configuration允许我把主机名放在:server = SimpleXMLRPCServer((“localhost”,8000)) 因为我们的/ etc / hosts文件如下所示,所以尝试使用我们的域代替localhost仍然导致127.0.0.1: 127.0.0.1 localhost.localdomain localhost 127.0.0.1 staging.<ourdomain>.com 然后,我将/ etc / hosts更改为: 127.0.0.1 localhost.localdomain localhost 192.168.1.140 staging.<ourdomain>.com testserver 我已经将本地IP更改为服务器IP,但仍然没有。 netstat将显示staging..com行上hosts文件的IP地址。 我如何让一个进程在::: 8000或0.0.0.0:8000上运行,或者任何可以允许远程客户端连接的排列?

了解netstat命令输出

我最近使用了netstat命令,输出如下。 netstat -a proto local address foreign address state tcp 127.0.0.1:1107 avinash-pc:0 listening tcp 0.0.0.0:134 avinash-pc:0 listening tcp 226.178.166.149:1104 a60-274-182-61:https close_wait udp 0.0.0.0:566 *.* udp [::]:566 *.* 当我做了netstat -n ,输出中没有0.0.0.0:134 …为什么? 第一项和第二项的含义是什么(本地和外国地址都在我的电脑上) 即为什么我的电脑连接到自己? 什么意思。 第三项和第四项的[::]:

Netstat:如何知道它是人类还是Bot / Spider / DDOS

我正在使用以下命令来检查从一个IP有多less个连接 netstat -anp |grep ':80' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n 如果是DDOS攻击(500多个连接),则很容易检测到。 但是在任何时候,我仍然有从单个IP连接60-100个连接。 它可以是人类还是某种机器人/蜘蛛? 这是我现在(前6)。 48 217.212.230.*** 54 46.63.105.*** 55 62.235.175.*** 56 79.235.188.*** 60 178.27.93.*** 63 31.16.96.***

在Apache中,来自单个IP地址的ESTABLISHED连接过多

netstat -ntp |grep 80显示来自单个IP地址的ESTABLISHED连接太多。 其中约300人,这不是一个攻击 ,用户使用2G连接访问Apache。 其他2G连接也是如此。 由于这个Apache正在耗尽儿童。 早些时候,它显示了太多的close_wait并且在启用tcp_tw_reuse和tcp_tw-recycle之后,没有太多的close_wait但是增加了ESTABLISHED连接的数量。 我们使用的是具有48 GB RAM的Ubuntu 11.04 keepalive On keepalive timeout 10 max clients 800 max-request-perchild 4000 timeout 300 我已经将syn_ack设置为1, syn_retries为2。 在WiFi上没有这样的问题。 连接正常closures,但使用2G连接,Apache正在耗尽儿童和许多ESTABLISHED连接。 我也尝试了从默认300到30设置超时 ,但由于我们的项目是手机图像托pipe,客户端无法正确上传图像,因为他们正在越来越频繁的时间。此外还有大量的408消息,所以改变它默认300

Apache的两个netstat结果之间的区别

我们在运行Apache HTTP Server的两个前端Web服务器上运行RedHat Linux。 我已经做了两个httpd.conf文件的差异,没有什么区别,但服务器的主机名。 我们已经看到一些问题,其中一个服务器正在向第一个Web服务器发出请求时向负载均衡器发送重置。 所以我注意到了一些独特的东西: 当我运行netstat-an | grep 80 | grep LISTEN的结果是不一样的。 第一次显示:0.0.0.0:80 LISTEN(我习惯看到这个,我相信允许服务器上的任何IP通过端口80响应。 第二场演出:::: 80听(我从来没有见过这个) 任何人都可以解释为什么第二个Web服务器看起来不同于第一个? 如果这是一个问题或没有什么大不了的? 谢谢

为什么Solaris和Linux之间的netstat -n不同,我怎样才能使它一样?

当我在Solaris上运行netstat -n ,我在Linux上得到了与netstat -n不同的结果,即使根据Solaris和Linux中的手册页, -n标志也应该做同样的事情。 我的问题: 请告诉我如何在Linux中运行netstat ,以便获得与Solaris中相同的结果。 例: 的Solaris netstat -n | head-10 TCP:IPv4 LocalAddress RemoteAddress SwindSend-QRwindRecv-Q State ——————–——————–—–———–—————– 10.119.99.77.9495 10.106.97.118.60823 5888 049640 0CLOSE_WAIT 10.119.99.77.33121 10.119.99.77.1521 49152 049152 0ESTABLISHED 10.119.99.77.1521 10.119.99.77.33121 49152 049152 0ESTABLISHED 10.119.99.77.1521 10.119.99.112.54374 63702 049232 0ESTABLISHED 127.0.0.1.45459 127.0.0.1.8886 49152 049152 0ESTABLISHED 10.119.99.77.7777 10.115.244.53.63575 5888 049220 0CLOSE_WAIT Linux的 netstat -n | head […]

是否有一个netstat -s相当于windows?

我知道netstat -s存在于Windows上,但它显示的信息比Linux / OS Xless。它只给出8个关于TCP的计数器,而在Linux上则超过50个。 我正在寻找任何TCP相关的计数器,如: Linux: TCPDSACKOldSent , DelayedACKLocked , TCPOFODrop或TCPDSACKIgnoredNoUndo 。 您可以通过cat /proc/net/netstat获取整套计数器。 BSD / OS X: rcvbyteafterwin , rcvduppack或rcvoobyte 。 有没有一个内置的工具来实现这一目标? 或者也许有一个系统调用,可以让我检索这些信息?

可以ping一个IP,但不显示在netstat?

我想知道是否有人能够帮助我头部的抓手。 我们有一个设备已经与我们的服务器进行通信,但没有发回任何数据。 我能ping通ping的IP地址,但是当我在机器上执行netstat时,IP地址没有列出。 为什么会这样? IP地址如何可以ping通但不能连接? 有没有其他工具可以帮助我诊断这个问题? 更新: 对不起,使用下面的评论。 我没有意识到我可以编辑我自己的post! EightBitTony,我想我会看到你在说:“netstat -a显示连接的机器,而不是每个机器的IP地址”。 这个分站设备唯一的工作就是上网并发送数据到我们的服务器。 设备的IP地址是:10.113.201.155,它应该连接的端口号是:6102。 当我做一个netstat,我期待它被连接到这个端口号(6102),但它不是。 6102是服务器软件侦听的端口。 这个分站在过去的两天里还没有发回任何数据,这是我们正在经历的问题,但它是可以ping通的,表明它是在线的。 不幸的是,这个设备不在办公室,我可以简单地重置它。 我们将不得不派遣一个维护团队,但我想更好地了解正在发生的事情以及为什么会发生这种情况。 我有另一个问题。 如果外站联机但不绑定到端口6102将不显示在netstat? 我想我知道答案在这里(不)。 更新2: 谢谢EightBitTony。 你已经完全向我解释,我明白你的意思。 在阅读你的答案后,我相信应用程序在某种程度上在该机器上失败,并处于某种崩溃的状态。 我试图“提出”你的答案,但没有足够的代表点!