标签: netstat

IP 地址 0.0.0.0 和 127.0.0.1 有什么区别?

我知道 127.0.0.1 ~ 127.255.255.254 是大多数现代操作系统的环回 IP 地址,这些 IP 地址可以用来指代我们自己的计算机。

但什么是 0.0.0.0?好像也指本地电脑,那有什么区别呢?

并且,您能否为我解释以下 IP 连接:

netstat -an 输出的屏幕截图

ip netstat ip-address

264
推荐指数
5
解决办法
31万
查看次数

如何从命令行让 cURL 使用 keepalive?

我正在尝试验证在与我正在运行的 Tomcat 网络服务器通信期间是否正在使用 HTTP 持久连接。目前,我可以从浏览器(例如 Chrome)检索服务器上的资源,并使用 netstat 验证连接已建立:

# visit http://server:8080/path/to/resource in Chrome
[server:/tmp]$ netstat -a
...
tcp        0      0 server.mydomain:webcache client.mydomain:55502 ESTABLISHED
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用 curl,则在 netstat 中看不到服务器上的连接。

[client:/tmp]$ curl --keepalive-time 60 --keepalive http://server:8080/path/to/resource
...

[server:/tmp]$ netstat -a
# no connection exists for client.mydomain
Run Code Online (Sandbox Code Playgroud)

我也尝试使用以下 curl 命令:

curl -H "Keep-Alive: 60" -H "Connection: keep-alive" http://server:8080/path/to/resource
Run Code Online (Sandbox Code Playgroud)

这是我的客户端机器的 curl 版本:

[server:/tmp]$ curl -V
curl 7.19.5 (x86_64-unknown-linux-gnu) libcurl/7.19.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 libssh2/1.1
Protocols: tftp ftp telnet dict http file https ftps scp sftp
Features: …
Run Code Online (Sandbox Code Playgroud)

http netstat tcp keepalive curl

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

如何找到unix socket连接的另一端?

我有一个进程(dbus-daemon),它通过 UNIX 套接字有许多打开的连接。这些连接之一是 fd #36:

=$ ps uw -p 23284
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
depesz   23284  0.0  0.0  24680  1772 ?        Ss   15:25   0:00 /bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session

=$ ls -l /proc/23284/fd/36 
lrwx------ 1 depesz depesz 64 2011-03-28 15:32 /proc/23284/fd/36 -> socket:[1013410]

=$ netstat -nxp | grep 1013410
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it …
Run Code Online (Sandbox Code Playgroud)

linux unix netstat socket dbus

45
推荐指数
5
解决办法
7万
查看次数

大量 TIME_WAIT 连接表示 netstat

好吧,这让我毛骨悚然 - 我看到了大约 1500-2500 个:

root@wherever:# netstat

Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost:60930         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60934         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60941         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60947         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60962         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60969         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60998         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60802         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60823         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60876         localhost:sunrpc        TIME_WAIT  
tcp        0      0 localhost:60886         localhost:sunrpc …
Run Code Online (Sandbox Code Playgroud)

networking linux tcpip debian netstat

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

netstat 显示没有 pid 的侦听端口,但 lsof 没有

这个问题类似于网络端口打开,但没有附加进程?

我已经从那里尝试了一切,查看了日志等......但找不到任何东西。

我的 netstat 显示了一个 TCP 侦听端口和一个没有 pid 的 UDP 端口。当我在 lsof 中搜索这些端口时,什么也没有出现。

netstat -lntup
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:44231           0.0.0.0:*               LISTEN      -               
udp        0      0 0.0.0.0:55234           0.0.0.0:*                           - 
Run Code Online (Sandbox Code Playgroud)

以下命令不显示任何内容:

lsof | grep 44231
lsof | greo 55234
fuser -n tcp 44231
fuser -n udp 55234
Run Code Online (Sandbox Code Playgroud)

重新启动后,除了新的端口号外,那些“相同”的两个连接还在那里:

netstat -lntup
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:45082           0.0.0.0:*               LISTEN      -               
udp        0      0 0.0.0.0:37398 …
Run Code Online (Sandbox Code Playgroud)

port rpc netstat

27
推荐指数
4
解决办法
5万
查看次数

netstat 持续刷新(观察改变输出)

我正在使用这个简单的命令来监控我的 Debian 服务器上的连接(以处理最近的一些 DoS 攻击):

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

我如何连续运行它?所以它会每分钟(或任何给定的时间,当然)刷新一次。我试过看:

watch -n 30 "netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n"
Run Code Online (Sandbox Code Playgroud)

但是它将带有连接数的好列表的输出更改为如下所示:

1 tcp        0  10015 [LOCAL IP]
...
1 Proto Recv-Q Send-Q Local Address           Foreign Address         State
1 Active Internet connections (w/o servers)
Run Code Online (Sandbox Code Playgroud)

所以没有显示外部IP。有什么我错过了吗?

这是原始输出的样子:

  2 [IP ADDRESS]
  4 [IP ADDRESS]
  4 [IP ADDRESS]
  4 …
Run Code Online (Sandbox Code Playgroud)

linux debian netstat

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

如何摆脱 FIN_WAIT1 状态的套接字?

我有一个端口被我需要杀死的进程阻止。(一个崩溃的小 telnet 守护进程)。该进程已成功终止,但端口仍处于“FIN_WAIT1”状态。它没有出来,超时似乎设置为“十年”。

我发现释放端口的唯一方法是重新启动整个机器,这当然是我不想做的事情。

$ netstat -tulnap | grep FIN_WAIT1 
tcp        0  13937 10.0.0.153:4000         10.0.2.46:2572          FIN_WAIT1  -
Run Code Online (Sandbox Code Playgroud)

有谁知道如何在不重新启动的情况下解锁此端口?

linux port netstat

25
推荐指数
4
解决办法
8万
查看次数

网络端口打开,但没有附加进程?

我在打开网络端口时遇到了奇怪的情况。我的主要问题是,为什么没有与开放 TCP 端口关联的程序:

netstat -ln --program
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 0.0.0.0:5666                0.0.0.0:*                   LISTEN      -  
Run Code Online (Sandbox Code Playgroud)

对于我的特定情况,应该有一个 nrpe 守护程序(opsview 安装)侦听端口 5666,但没有运行 nrpe 守护程序。如果我尝试启动它,它会立即退出。

lsof -i :5666也不显示任何输出。我的系统上没有运行 (x)inetd。

更新

是的,我以 root 身份运行这些命令。Telnet 可以,但从来没有任何响应。

经过进一步调查,我发现了一个内核错误dmesg:这是一个运行较旧内核的 EC2 实例(实际上是其中几个)(2.6.16 显然不稳定)。停止崩溃的修复方法是升级内核

看起来内核崩溃的方式导致进程消失并保持端口打开。

networking linux nagios netstat opsview

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

netstat -ntap 不显示某些连接的 pid/进程名称?

我有 ubuntu/hardy 服务器,内核为 2.6.24-23-server 和 netstat:

# netstat --version
net-tools 1.60
netstat 1.42 (2001-04-15)
Run Code Online (Sandbox Code Playgroud)

问题是我们有很多 ESTABLISHED 连接在netstat -ntap输出中不显示 PID 或程序名称。Netstat 是从 root 调用的,没有 chroots、grsecurity,也没有类似的东西(或者我被告知 :)。

关于可能出什么问题的任何想法?

更新

lsof -n -i 工作正常,并显示连接的 pid/进程名称。

networking linux ubuntu netstat

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

系统(PID 4)正在使用端口 80,那是什么?

我正在尝试将端口 80 用于我的应用程序服务器,但是当我执行“netstat -aon”时,我得到

TCP 0.0.0.0:80 0.0.0.0:0 聆听 4

当我在任务管理器中查找进程时,它显示 PID 4 是 SYSTEM,就是这样,而不是扩展名......没有,只是“SYSTEM”。这里发生了什么?

我害怕结束这个过程,我该怎么办?

windows port netstat pid

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

标签 统计

netstat ×10

linux ×6

networking ×3

port ×3

debian ×2

curl ×1

dbus ×1

http ×1

ip ×1

ip-address ×1

keepalive ×1

nagios ×1

opsview ×1

pid ×1

rpc ×1

socket ×1

tcp ×1

tcpip ×1

ubuntu ×1

unix ×1

windows ×1