如何在linux中找到开放端口的数量?

ero*_*ppa 19 networking linux port

如何在linux中找到开放端口的数量?我想看看我的端口是否用完了。另外,如何查看操作系统的限制?

Cur*_*oty 29

在现代 linux 上,使用 ss (socket stats) 实用程序。

$ ss -s
Total: 10160 (kernel 10262)
TCP:   10349 (estab 8886, closed 408, orphaned 0, synrecv 0, timewait 393/0), ports 3147

Transport Total     IP        IPv6
*         10262     -         -        
RAW       0         0         0        
UDP       5         5         0        
TCP       9941      9941      0        
INET      9946      9946      0        
FRAG      0         0         0        
Run Code Online (Sandbox Code Playgroud)


Gri*_*zly 11

netstat -an | grep ESTABLISHED | wc -l
Run Code Online (Sandbox Code Playgroud)

会给你开放端口的数量,在我的例子中是 32。

cat /proc/sys/net/ipv4/ip_local_port_range
Run Code Online (Sandbox Code Playgroud)

会返回类似的东西:

32768 61000

这意味着,61000 - 32768 - $OPENPORTS = 可用端口

在我的盒子上,那是:

61000-32768-32 = 28200 个可用端口号。


Ale*_*lex 8

正如其他人提到的,netstat 是用于确定当前正在使用哪些端口的工具。至于限制,可用端口数是一个 16 位无符号整数,范围为 0-65535。可供应用程序绑定的端口是保留的特权/根端口 (0-1024) 以及您的临时端口范围未涵盖的端口。

您可以通过运行查看您的临时端口cat /proc/sys/net/ipv4/ip_local_port_range

要永久修改它,您必须在 /etc/sysctl.conf 文件中添加/修改“net.ipv4.ip_local_port_range”,或与 sysctl -n net.ipv4.ip_local_port_range="<start_port> <end_port>"


小智 0

netstat 将允许您查看哪些端口打开,执行“netstat -”以查看最适合您需求的端口。