【Linux】ポートを確認する(非推奨):netstat

Uncategorized

どーも!marusukeです!

現在では非推奨ですが、開いているポートを確認するコマンドnetstatについてです!

netstatコマンドでできること

netstat [オプション]

netstatコマンドは、ネットワーク接続、ルーティングテーブル、インターフェースの統計、マスカレード接続、マルチキャストメンバーシップなど、システムのネットワーク情報を表示するためのコマンドです
ただし、netstatは現在、非推奨(deprecated)とされており、代替としてssコマンドの使用が推奨されています。netstatは古いシステムにしかインストールされていない場合が多いので、注意が必要です

netstatが非推奨になった背景

netstatコマンドが非推奨とされ始めたのは、2011年ごろからです。具体的には、Linuxカーネルのネットワークスタックの変更に伴い、より効率的でモダンなツールとしてssコマンド(iproute2パッケージの一部)が導入されました

  • iproute2パッケージの採用
    • Linuxでは、従来のnet-toolsを置き換えるために、新しいネットワーク管理ツールであるiproute2が導入されました
  • net-toolsのメンテナンス終了
    • netstatは、古いネットワークユーティリティパッケージであるnet-toolsに含まれていました。しかし、このnet-toolsパッケージは2001年ごろから積極的な開発が行われなくなり、機能の更新やバグ修正が停止していました。ネットワーク管理の現代的な要件に対応できなくなりました

    netstatの代替として、より高性能なssコマンドが提供されるようになりました

    • パフォーマンスと機能性の向上
      • netstatは、システムコールを多く使用してネットワーク情報を収集するため、大規模なシステムや高負荷な環境ではパフォーマンスに制限がありました
      • ssは直接カーネルの/procファイルシステムを参照して情報を取得するため、処理が高速で、より詳細な情報を提供できます

    netstatコマンドの使用例

    以下の例では、現在のネットワーク接続のリスニングソケットを表示しています

    $ netstat -tuln
    Proto Recv-Q Send-Q Local Address           Foreign Address         State      
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN    
    udp        0      0 0.0.0.0:68              0.0.0.0:*                         
    • -t:TCP接続を表示
    • -u:UDP接続を表示
    • -l:リスニング状態のソケットのみを表示
    • -n:アドレスやポートを名前解決せず数値で表示

    netstatコマンドのオプション

    オプション説明
    -aすべてのソケットを表示します
    -tTCPソケットを表示します
    -uUDPソケットを表示します
    -nアドレスとポートを数値で表示します
    -lリスニング状態のソケットのみを表示します
    -p各接続に関連するプロセスIDとプロセス名を表示します
    -rルーティングテーブルを表示します
    -e拡張情報を表示します(インターフェース統計など)
    -c指定した間隔でコマンドを繰り返し実行します

    注意点

    • netstatは非推奨のため、代わりにssコマンドを使用することをお勧めします
    • 例として、ss -tulnコマンドはnetstat -tulnと同等の出力を得るための方法です

    以下はssコマンドを使用した例です

    $ ss -tuln
    Netid  State      Recv-Q Send-Q Local Address:Port  Peer Address:Port Process
    tcp    LISTEN     0      128    0.0.0.0:22         0.0.0.0:*            
    udp    UNCONN     0      0      0.0.0.0:68         0.0.0.0:*            

    以上です!

    ここまで読んでいただきありがとうございました!

    コメント

    タイトルとURLをコピーしました