流行ってますね、Azure。
Azureの仮想ネットワークの構築が完了して、いざ仮想マシンの作成が終わり、さあ接続確認をしようと思ったらまず思いつくのはPingですよね。しかし、Azureの仮想マシンに紐づいたグローバルIPアドレスにPingを打っても一向に応答がありません。。。
確かにAzureポータルから起動したはず。。。
リモートデスクトップで接続できているのに。。。
そんなときに便利なコマンドpspingの使い方を説明します。Microsoft社の公式ツールですので安心です。
ツールのダウンロード
こちらのページからPsToolsをダウンロードします。
ダウンロードしたファイルを任意のフォルダに保存します。
解凍すると、以下のような実行ファイルなどが入っていることが確認できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
PS C:\work\PSTools> ls –n Eula.txt PsExec.exe PsExec64.exe psfile.exe psfile64.exe PsGetsid.exe PsGetsid64.exe PsInfo.exe PsInfo64.exe pskill.exe pskill64.exe pslist.exe pslist64.exe PsLoggedon.exe PsLoggedon64.exe psloglist.exe pspasswd.exe pspasswd64.exe psping.exe psping64.exe PsService.exe PsService64.exe psshutdown.exe pssuspend.exe pssuspend64.exe Pstools.chm psversion.txt |
psping以外にもいろいろなコマンドが入っていますね。それぞれの使い方は、先ほどのダウンロードサイト内にリンクがありますので必要に応じて確認して下さい。「英語」と記載があるものでも日本語で使用法が記載されていました^^
使い方
使い方は通常のコマンドと同様です。
構文は以下です。
1 |
psping [IPアドレス]:[ポート番号] |
しかし、解凍しただけの状態でコマンドプロンプトを立ち上げてコマンドを実行しても以下の表示がされて実行できません。
1 2 3 |
C:\WINDOWS\system32>psping 'psping' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 |
今回は以下の2通りの方法を紹介します。
- PATHを指定して(フルパスか相対パスで)実行する
- PATHの通ったフォルダへxxx.exeを設置する
PATHを指定して(絶対パスか相対パスで)実行する
ぴぐろぐはC:\work\PSToolsフォルダに解凍して保存したので、そのフルパスを指定して実行します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
C:\WINDOWS\system32>C:\work\PSTools\psping 192.168.2.100:80 TCP connect to 192.168.2.100:80: 5 iterations (warmup 1) ping test: Connecting to 192.168.2.100:80 (warmup): from 192.168.2.100:61007: 0.19ms Connecting to 192.168.2.100:80: from 192.168.2.100:61008: 0.33ms Connecting to 192.168.2.100:80: from 192.168.2.100:61009: 0.30ms Connecting to 192.168.2.100:80: from 192.168.2.100:61010: 0.30ms Connecting to 192.168.2.100:80: from 192.168.2.100:61011: 0.30ms TCP connect statistics for 192.168.2.100:80: Sent = 4, Received = 4, Lost = 0 (0% loss), Minimum = 0.30ms, Maximum = 0.33ms, Average = 0.31ms |
応答が帰ってきていますね。応答結果の見方はほぼpingと同じです。
PATHの通ったフォルダへxxx.exeを設置する
まず、解凍したxxx.exe のファイルをすべて選択してコピーします。
(pspingしか使わない!っていう方はpsping.exeだけで良いです)
次に、C:\WINDOWS\system32フォルダを開いてコピーしたファイルを貼り付けます。(C:\WINDOWS\system32が開かない人はアドレスバーに%systemroot%\system32を指定してみてください)
system32フォルダへコピーできれば、パスの指定は不要でコマンドを実行できるはずです。
以下は管理者権限でなくコマンドプロンプトを立ち上げてテストしてみましたが実行できていますね。
1 2 3 4 5 6 7 8 9 |
C:\Users\pig-log>psping 192.168.2.100:80 TCP connect to 192.168.2.100:80: 5 iterations (warmup 1) ping test: Connecting to 192.168.2.100:80 (warmup): from 192.168.2.100:61042: 0.19ms Connecting to 192.168.2.100:80: from 192.168.2.100:61043: 0.32ms Connecting to 192.168.2.100:80: from 192.168.2.100:61044: 0.30ms Connecting to 192.168.2.100:80: from 192.168.2.100:61045: 0.33ms Connecting to 192.168.2.100:80: from 192.168.2.100:61046: 0.33ms |
おまけ
Azureでの仮想マシン作成後はデフォルトでリモートデスクトップ接続が許可されていますので、以下のようにRDPのポート番号(3389)を指定して実行すれば応答があることを確認できます。
1 |
>psping [Azure仮想マシンのグローバルIP]:3389 |
今回はコマンドプロンプトでテストしましたが、もちろんPowerShellでも同様に使えます。また、各コマンドのヘルプは通常のコマンドと同様に、コマンドプロンプトで以下のように実行すれば確認が可能です。
1 |
>psping --help |
以上です。お役に立ちましたらシェアして頂けるとうれしいです。