标签: netstat

如何确定给定进程(linux)正在打开哪些 TCP/UDP 端口?

我知道如何使用 lsof 或 netstat 做相反的事情(找出哪个进程打开了给定的端口),但是对 Google 的广泛研究并没有帮助我解决相反的问题。

我知道我可以将“netstat -np”与一些 grep 和 sed 结合使用,但它看起来很笨拙。是否有反向版本的“lsof -i tcp:80”可以显示给定进程打开的所有本地端口?

port netstat tcp lsof process

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

Windows netstat 结果中的“::”表示什么?

我试图了解 TCP 端口在哪些接口上打开

使用 windows netstat 命令我得到如下结果:

TCP    [::]:10000             MyMachineName:0               LISTENING
Run Code Online (Sandbox Code Playgroud)

这里的符号“::”是什么意思?对于其余端口,它正确显示本地环回或 LAN 机器名称,在某些情况下甚至显示 0.0.0.0。

networking windows netstat

3
推荐指数
1
解决办法
313
查看次数

是什么导致“SYN to LISTEN 套接字丢失”?

一个非常繁忙的代理服务器有很多“SYNs to LISTEN sockets drops”。

我了解到一个原因可能是积压量太小。但在这种情况下,“套接字的监听队列溢出的次数”值应该相等(事实并非如此)。

那么这种行为的原因可能是什么?也许是坏的网卡?

我们有 5 个代理,其中两个数字不相等,所以这个问题似乎发生在那里。

这是 netstat 的输出:

$ netstat -s | grep -i list
238627 times the listen queue of a socket overflowed
8610307 SYNs to LISTEN sockets dropped
Run Code Online (Sandbox Code Playgroud)

服务器有 ipv4 和 ipv6 流量,也许有帮助?

networking linux ubuntu netstat

3
推荐指数
1
解决办法
7705
查看次数

Netstat 和 ss 没有看到连接

我正在尝试查找 Kubernetes 集群上运行的哪个应用程序正在使用特定端口与 RabbitMQ 集群进行通信。在 RabbitMQ 上,我看到连接来自 192.168.1.10:34226。192.168.1.10是Kubernetes节点之一。登录到 192.168.1.10 后,我检查是否通过 tcpdump 命令从该节点建立了连接tcpdump -i eth0 port 34226。我看到两个方向的交通。现在我正在尝试查找哪个进程正在建立此连接。首先我尝试了 netstat:

netstat -tapn | grep 34226

结果什么也没发现。然后我尝试了 ss 但仍然一无所获。连接已建立,通过 tcpdump 我可以看到发送到 RabbitMQ 的心跳数据包以及来自 RabbitMQ 的响应。但 netstat 和 ss 不报告已建立的连接。

更新1

我发现这与网络命名空间有关。我的问题与this问题类似,但我需要找到从34226端口建立连接的进程的PID。

netstat tcpdump network-namespace kubernetes

3
推荐指数
1
解决办法
5724
查看次数

Netstat 显示两个 sshd 的监听,但只有一个 pid

在我的 Linode 上 sudo netstat -tulp 给了我:

Proto Recv-Q Send-Q Local Address    Foreign Address   State    PID/Program name   
tcp        0      0 *:ssh            *:*               LISTEN   2030/sshd           
tcp        0      0 *:http           *:*               LISTEN   2178/httpd          
tcp        0      0 *:ssh            *:*               LISTEN   2030/sshd           
udp        0      0 *:bootpc         *:*                        1937/dhclient 
Run Code Online (Sandbox Code Playgroud)

为什么 sshd 在那里两次?

linux ssh fedora netstat linode

2
推荐指数
1
解决办法
1438
查看次数

如何将临时端口映射到 pid?

我有一个 RHEL 服务器,上面有几个应用程序,我试图找出其中一个正在调用外部 Web 服务。我有 TCP 转储显示正在进行的调用,并且通过各种工具我能够确定进行这些调用的临时端口。但是,我无法弄清楚如何将该临时端口映射到 pid。我知道我可以使用lsof -i将绑定端口映射到 pid,但这不是我的问题。

有什么方法可以将正在使用的临时端口映射到 pid 或其他指示哪个文件正在调用的指标?

port netstat tcp lsof pid

2
推荐指数
1
解决办法
855
查看次数

使用 netstat 检测 DDOS 攻击

我有一台服务器,今天我的服务器负载超过 20,我发现一个命令可以检测到服务器的活动连接以进行 DDOS 检测并拒绝 IP。

netstat -anp | grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
Run Code Online (Sandbox Code Playgroud)

此命令的结果是:

  1 109.162.158.160
  1 109.162.192.55
  1 127.0.0.1
  1 206.217.193.220
  1 91.99.170.69
  2 66.197.219.236
  5 213.152.172.169
 32 0.0.0.0
583 
Run Code Online (Sandbox Code Playgroud)

没有IP的583连接,我该如何解决这个问题?服务器负载超过 20

tnx 为您提供帮助。

netstat ddos

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

查找使用我所有服务器带宽的内容

TLDR:我如何更深入地挖掘我的 Mac mini OSX 服务器以确定哪些进程消耗了如此多的带宽,或者所有入站流量来自哪里?

资源缓存开启,所有资源都被缩小或图像被粉碎,我们的页面比上个月的网站 (www.vulytrampolines.com) 消耗的带宽更少,我们的分析流量是相同的。

背景故事:我们有 2 台 mac mini 服务器运行我们的网站/登台/数据库等。自从从美国的专用服务器迁移到城市的托管地点后,我们的带宽消耗不知何故增加了四倍。两者之间有一个数据库复制过程设置,以及DNS和各种网站(例如大文件、数据库任务、内网包等在临时服务器上,网站和数据库在生产服务器上)

我们的临时服务器在3 天内7GB 的入站流量。有谁知道如何检查入站流量来源,以查看 200k 连接处的入站流量的一致流可能来自哪里?我们不知道。我们根本不向它发送文件,唯一应该处于活动状态的是 SSH 和数据库复制过程。[见下文] 显示我们已经建立了大约 20 多个与 625 端口的 close_weight 连接和 30 多个 close_weight 连接。我们还不清楚这是如何发生的。netstat

令人讨厌的是,webstats 显示我们没有使用接近 11.66GB 的 HTTP 流量(它说我们在上个月使用了 22GB,但我们的出站流量记录为超过 100GB)。数据库统计数据表明,我们也没有使用足够的带宽来导致问题。

这是我们的登台服务器 venus1(几个星期以来一直是这样): 在此处输入图片说明

这是我们的生产服务器 venus2: 在此处输入图片说明

netstat -anp tcpvenus1 上的输出。大部分国外地址来自我们的工作IP地址。11211 是内存缓存。

tcp4       0      0  122.99.117.18.49712    204.93.223.143.80      ESTABLISHED
tcp4       0      0  122.99.117.18.11211    122.99.117.18.49711    ESTABLISHED
tcp4       0      0  122.99.117.18.49711    122.99.117.18.11211    ESTABLISHED
tcp4       0     52  122.99.117.18.22       59.167.152.67.56106 …
Run Code Online (Sandbox Code Playgroud)

bandwidth mac-osx-server netstat network-traffic

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

已建立与阻塞端口的连接,这是什么意思?

我对系统管理很陌生,我一直在努力更熟悉像 netsat 这样的工具。如果我netstat -n在我的服务器上运行,我会看到这一行:

tcp        0      0 xxx.xxx.xxx.xxx:44573          xxx.xxx.xxx.xxx:443         ESTABLISHED
Run Code Online (Sandbox Code Playgroud)

但是,我使用 iptables 的默认策略为 DROP,而 44573 不是我允许流量通过的端口之一。我的规则在 iptables 中是这样的:

Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:pcsync-https state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:21022 state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ftp state NEW,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp …
Run Code Online (Sandbox Code Playgroud)

linux iptables netstat

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

为什么这个“netstat -tln”输出显示“0.0.0.0:22”和“127.0.0.1:3306”的条目

当我运行命令时,netstat -tln我看到以下输出:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp6       0      0 :::8000                 :::*                    LISTEN     
tcp6       0      0 :::80                   :::*                    LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 :::443                  :::*                    LISTEN  
Run Code Online (Sandbox Code Playgroud)

我理解除了0.0.0.0:22和之外的所有条目127.0.0.1:3306;为什么会有这些条目?

我使用 iptables 作为我的防火墙工具,想知道我是否需要禁用它以及该条目最初是如何显示的。

我知道那3306是针对 mysql 的。但是为什么 SSH 和 Mysql 有特定的 IP 地址,而其他服务器没有?

mysql ssh ip iptables netstat

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