Pingポートは、サービスが生きているかどうかを確認するために最も効果的なトラブルシューティング手法の一つです。
システム管理者が日常的に使用するpingコマンドは、ICMPプロトコルに依存して、リモートホストに関する操作情報を取得します。
ただし、ホストへのpingでは必ずしも十分ではありません。,
この特定のポートは、データベース、Apache webサーバー、またはネットワーク上のプロキシサーバーに関連している可能性があります。
このチュートリアルでは、さまざまなコマンドを使用して特定のポートにpingを実行する方法を見ていきます。
目次
telnetを使用して特定のポートにPingする
特定のポートにpingする最も簡単な方法は、telnetコマンドの後にipアドレスとpingするポートを
ipアドレスの代わりにドメイン名を指定し、その後にpingを実行する特定のポートを指定することもできます。,
$ telnet <ip_address> <port_number>$ telnet <domain_name> <port_number>
“telnet”コマンドは、WindowsおよびUnixオペレーティングシステムで有効です。
システムで”telnet:command not found”エラーが発生している場合は、次のコマンドを実行してシステムにtelnetをインストールする必要があります。
$ sudo apt-get install telnet
例として、ローカルネットワーク上の192.168.178.2IPアドレス上のApache Webサーバー上で実行されているwebサイトがあるとしましょう。
デフォルトでは、ウェブサイトはポート80で実行されています:これは、私たちのウェブサイトがアクティブであるかどうかを確認するためにpingしようと,
リモートホストに接続できるということは、サービスが稼働していることを意味します。
Telnetユーティリティを終了するには、”Ctrl”+”]”キーストロークを使用してエスケープし、”q”コマンドを実行して終了することができます。
ncを使用して特定のポートにPing
特定のポート番号にpingを実行するには、”verbose”の”v”オプション、”scanning”の”z”オプションピングドライブ。,
ipアドレスの代わりにドメイン名を指定して、pingを実行するポートを指定することもできます。
$ nc -vz <host> <port_number>$ nc -vz <domain> <port_number>
このコマンドはUnixシステムで動作しますが、windowsではnetcatの代替案をオンラインで見つけることができます。
システムに”nc”コマンドが見つからない場合は、sudoユーザーとして”apt-get install”コマンドを実行してインストールする必要があります。
$ sudo apt-get install netcat
例として、ポート80でリモートHTTP webサイトにpingを実行するとします。,
$ nc -vz amazon.com 80amazon.com 80 (http) open
ご覧のとおり、ポート80で接続が正常に開かれました。
一方、開いていない特定のポートにpingを実行しようとすると、次のエラーメッセージが表示されます。
$ nc -vz amazon.com 389amazon.com 389 (ldap) : Connection refused
nmapを使用してポートをPing
特定のポートをpingする非常に簡単な方法は、portに”-p”オプションを指定してnmapコマンドを使用し、スキャンするポート番号とホスト名を指定することです。,
$ nmap -p <port_number> <ip_address>$ nmap -p <port_number> <domain_name>
注:nmapを使用している場合は、それに伴って発生する可能性のある法的問題に注意する必要があります。 このチュートリア
“nmap”コマンドがホストで使用できない場合は、インストールする必要があります。
$ sudo apt-get install nmap
例として、ローカルネットワーク上の”192.168.178.35/24″をデフォルトのLDAPポート389でpingするとしましょう。,
$ nmap -p 389 192.168.178.35/24
ご覧のとおり、ポート389はこの仮想マシンで開いていると言われており、OpenLDAPサーバーが実行されていることを示しています。
nmapを使用してポート範囲をスキャンする
nmapを使用してポート範囲をスキャンするには、”ports”に”p”オプションを付けて”nmap”を実行し、pingする範囲を指定
$ nmap -p 1-100 <ip_address>$ nmap -p 1-100 <hostname>
繰り返しますが、”192.168.178のポート範囲をスキャンしようとすると、
,35/24″,我々は、次のコマンドを実行します
$ nmap -p 1-100 192.168.178.35/24
Powershellを使用して特定のポートをPingします
Windows環境でコンピュータを実行している場合は、次のコマンドを使用して特定のポート番号をpingすることができますパワーストーン
このオプションは、自動化されたスクリプトにこの機能を含める予定の場合に非常に便利です。
Powershellを使用して特定のポートにpingを実行するには、”Test-NetConnection”コマンドの後にipアドレスとpingするポート番号を使用する必要があります。,
$ Test-NetConnection <ip_address> -p <port_number>
例として、”192.168.178.35/24″ホストをポート389にpingしたいとしましょう。
これを実現するには、次のコマンドを実行します
$ Test-NetConnection 192.168.178.35 -p 389
最後の行で、TCP呼び出しが成功したかどうかを確認できます。それは389ポートのポートに到達しました。
Pingの用語に関する単語
技術的には、ホスト上の特定のポートを”ping”するようなものはありません。,
リモートホストに”ping”要求を送信すると、ネットワーク接続を確認するためにICMPプロトコルを使用していることを意味します。
ICMPは主に、ホストに到達できないネットワークの問題を診断するために使用されます。
“ポートにpingを実行”すると、実際にはコンピュータと特定のポート上のリモートホストとの間にTCP接続を確立しています。
ただし、エンジニアが”ポートにpingを実行している”と述べることは非常に一般的ですが、実際にはTCP接続をスキャンまたは開いています。,
結論
このチュートリアルでは、特定のポートにpingを実行するために使用できるすべての方法を学びました。
このチュートリアルで使用するコマンドのほとんどは、Windows、UnixまたはMacOSオペレーティングシステムで使用できます。