回答:
netstat -an | grep ESTABLISHED | wc -l
開いているポートの数、私の場合は32が表示されます。
cat /proc/sys/net/ipv4/ip_local_port_range
次のようなものを返します:
32768 61000
つまり、61000-32768-$ OPENPORTS = AvailablePorts
私の箱では、それは:
61000-32768-32 = 28200の使用可能なポート番号。
他の人が述べたように、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>"
個人的に私はnmapを好みます。nmap -P 1-65535 targetを発行すると、すべてのポートの状態を確認できます。ほとんどのディストリビューションでは、パッケージマネージャーを介してこのパッケージを利用できる必要があります。
netstatを使用すると、開いているポートを確認できます。「netstat-」を実行して、ニーズに最適なポートを確認してください。
netstat --inet
最も役立ちます。
「nmap localhost」は、すべての開いているポートとそれらで実行されているサービスを提供します。
netstat -tulnp
netstatプログラムの引数は次のとおりです。
*
t - Show TCP
*
u - Show UDP
*
l - Show only listening processes (netstat can show both listening and all established connections, i.e. as a client too)
*
n - Do not resolve network IP address names or port numbers
*
p - Show the process name that is listening on the port