【Linux】netstatで特定ポートの使用状況を確認する

【Linux】netstatで特定ポートの使用状況を確認する

記事の文字数:980

netstatコマンドを利用すると特定ポート番号の使用状況(LISTEN,ESTABLISHEDなど)を確認することができます。すべてのソケット情報を取得する場合は-aを指定し、TCPで接続待ちしているポートは-nltオプションで確認します。


スポンサーリンク

Linuxのnetstatコマンドを利用すると、特定ポートの使用状況などネットワークの状況を確認することができます。
netstatがインストールされていない場合はこちらのリンクを参照してください。

すべてのソケットを表示

以下コマンドですべてのソケット情報を取得します。

実行コマンド
netstat -a

TCP情報を表示する場合は以下コマンドを実行します。

実行コマンド
netstat -ant

接続待ちしているポートを確認(LISTEN)

以下コマンドでTCP接続待ち(LISTEN)しているポートを取得します。

実行コマンド
netstat -nlt

ポートを絞る

ポートを絞る場合は、以下のようにgrepで指定します。

実行コマンド
netstat -nlt | grep -e ":443" -e "State"
実行結果例
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN

通信が確立しているポートを確認(ESTABLISHED)

以下コマンドでTCP通信が確立しているソケットを取得します。

実行コマンド
netstat -ant | grep -e "ESTABLISHED" -e "State"
実行結果例
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 xx.xxx.x.x:xxxxx xxx.xxx.xxx.xxx:xx ESTABLISHED
tcp 0 0 xx.xxx.x.x:xxxxx xxx.xxx.xxx.xxx:xx ESTABLISHED
tcp 0 284 xx.xxx.x.x:xxxx xxx.xxx.xx.xx:xxxx ESTABLISHED

各出力項目の説明

各出力項目の意味は以下の通りとなります。

項目説明
Protoプロトコルの種類(TCP/UDPなど)
Recv-Q受信バッファに残っている受信データのバイト数
Send-Q送信バッファに残っている送信データのバイト数
Local AddressローカルホストのIPアドレス・ポート番号
Foreign Address接続先ホストのIPアドレス・ポート番号
State現在の接続ステータス(LISTEN、ESTABLISH、TIME_WAIT、CLOSEなど)

オプションの意味

各オプションの意味は以下の通りとなります。

オプション意味
-nサービス名に変換せずに表示(ex :httpと表示せず:80と表示)
-tTCP情報を表示
-uUDP情報を表示
-a全てのソケットを表示
-lListenポートのみを表示
-pソケットを使用しているプロセスを表示

netstatの代替コマンド

netstatはnet-toolsというパッケージに含まれており、昨今のLinuxでは非推奨で、インストールされていない場合もあります。
その場合は、netstatの代替となるssコマンドを利用しましょう。
ssコマンドの確認方法はこちらのリンクを参照してください。


以上で本記事の解説を終わります。
よいITライフを!
スポンサーリンク
Scroll to Top