netstat のマニュアルページには次のように書かれています:
注意 このプログラムは廃止されました。netstat の代替は ss です。netstat -r の代わりは ip route です。netstat -i の代わりは ip -s link です。netstat -g の代わりは ip maddr です。" </p>
netstat と ss がオプション t (TCP ソケットの場合) と n (dns ルックアップを避けるため) で実行される場合、ss は netstat よりも高速です。
time netstat -tn
.
.
real 0m0.052s
user 0m0.005s
sys 0m0.037s
time ss -tn
.
.
real 0m0.018s
user 0m0.002s
sys 0m0.013s
ただし、追加のオプション p を使用すると、どういうわけか、ss は netstat よりも非常に遅くなります。
time netstat -tnp
.
.
real 0m0.072s
user 0m0.010s
sys 0m0.056s
time ss -tnp
.
.
real 0m3.913s
user 0m0.585s
sys 0m3.288s
lsof という別のコマンドがあります。これは ss よりも高速ですが、 netstat よりも低速です。
time lsof -i TCP
.
.
real 0m0.126s
user 0m0.050s
sys 0m0.057s
では、netstat は、tcp ネットワークの詳細と、tcp ソケットが属するプロセスの PID を取得するための最良のコマンドですか?