Linuxでポートが使用されているかどうかを確認する方法

How Check If Port Is Use Linux



コンピュータサイエンスのバックグラウンドを持っているか、ネットワークに少しでも精通している場合は、TCP / IPスタックについて聞いたことがあるかもしれません。 TCP / ICスタックは、物理層、データリンク層、ネットワーク層、トランスポート層、アプリケーション層の5つの異なる層で構成されています。 TCP / IPスタックのすべての層には異なる通信手段があり、トランスポート層内のすべての通信はポート番号を介して行われます。

ポート番号は、IPアドレスとともにデバイスを一意に識別するために使用されます。コンピュータシステムを使用する場合、プロセス間通信は一般的です。この通信を容易にするために、オペレーティングシステムは、ユーザーが通信するエンティティに応じて、特定のポートを開いたままにします。したがって、どの単一インスタンスでも、システムで複数のポートを開くことができます。







ポートが使用中であると言うとき、私たちは本質的に開いているポート、言い換えれば、リスニング状態にある(接続を受け入れる準備ができている)ポートを指します。オペレーティングシステムで開いているポートを判別する方法は複数あります。 この記事では、Linuxでポートが使用されているかどうかを確認するために使用できる4つの方法を示します。



ノート: この記事で説明するすべてのメソッドは、Linux Mint20で実行されています。



Linux Mint 20でポートが使用されているかどうかを判断するには、次の4つの方法のいずれかを使用できます。





方法1:lsofコマンドを使用する

NS lsof コマンドを使用すると、次の方法でシステムで使用されているすべてのポートを一覧表示できます。

まず、ショートカットアイコンをクリックしてLinux Mint20ターミナルを起動します。ターミナルは下の画像に示されています:



次に、をインストールする必要があります lsof これまで使用したことがない場合はコマンド。これを行うには、ターミナルで次のコマンドを実行します。

$sudo apt-get installlsof

コマンドが正常にインストールされると、ターミナルに次の出力が表示されます。

このコマンドをインストールすると、Linuxで使用されているポートのクエリに使用できます。システムで開いているポートを確認するには、ターミナルで次のコマンドを実行します。

$sudolsof –i

このコマンドの出力では、次の図に示すように、LISTEN状態でリストされているポートが使用中のポートです。

方法2:ssコマンドを使用する

NS NS コマンドを使用して、次の方法でシステム内の開いているTCPおよびUDPポートを判別できます。

使用中のTCPポートとUDPポートの両方を照会するには、ターミナルで次のコマンドを実行します。

$ss –lntup

このコマンドの出力では、使用中のポート(TCPとUDPの両方)はLISTEN状態ですが、他のすべてのポートはUNCONN状態を示しています。

方法3:netstatコマンドを使用する

NS netstat コマンドを使用して、次の方法でシステム内の開いているTCPおよびUDPポートを判別することもできます。

使用中のTCPポートとUDPポートを照会するには、ターミナルで次のコマンドを実行します。

$sudo netstat–pnltu

sudoキーワードを指定せずにこのコマンドを実行しようとすると、すべてのポートにアクセスできなくなります。 rootユーザーアカウントでログインしている場合は、このキーワードをスキップできます。

このコマンドを実行すると、次の画像に示すように、使用中のすべてのポートがLISTEN状態にあるのに対し、他のすべてのポートの状態は使用できないことがわかります。

方法4:nmapコマンドを使用する

NS nmap コマンドは、次の方法で使用されているTCPポートとUDPポートを判別するために使用できるさらに別のユーティリティです。

の場合 nmap ユーティリティはLinuxMint 20システムにまだインストールされていません。デフォルトではインストールされていないため、手動でインストールする必要がある場合があります。これを行うには、次のコマンドを実行します。

$sudoaptインストール nmap

正常にインストールしたら nmap Linux Mint 20システムのユーティリティを使用すると、次の画像に示すように、ターミナルからコントロールが返され、次のコマンドを実行できるようになります。

このユーティリティをインストールした後、ターミナルで次のコマンドを実行して、システムで使用されているTCPポートとUDPポートの両方を照会します。

$sudo nmap–n –PN –sT –sU –p- localhost

このコマンドを実行すると、次の画像の出力に示すように、使用中のすべてのポートの状態が開きます。

結論

この記事では、Linuxシステムでポートが使用されているかどうかを確認するための4つの異なる方法を紹介しました。これらのメソッドはすべてLinuxMint 20でテストされていますが、これらのメソッドに示されているコマンドは、わずかな違いはありますが、他のLinuxディストリビューションでも実行できます。これらのメソッドで使用される各コマンドは、実行に数秒しかかかりません。したがって、4つの方法のいずれかを試して、どれが最適かを確認する時間があります。