もどる

023 ping コマンドの使い方

TCP/IP の IP レベルで通信できるかどうかを確認するために、ping コマンドが使われます。
ping は ICMP パケットを送信し、相手からの応答を要求するプログラムです。

@ 基本的な使い方
ダイヤルアップで接続している場合は、ダイヤルアップ接続を行います。
MS-DOS プロンプト (Windows NT/2000 はコマンドプロンプト) を開きます。(脚注1)

次のような文字列を記入し、Enter キーを押します。



※ ping の後には半角スペースが入ります。
※ ping の後の www.yahoo.com 部分は、接続確認したい相手コンピュータのホスト名 (脚注2) もしくは IP アドレスです。

A 結果の見方
ping を実行した結果によって、目的のホストとの接続状況が確認できます。

1) 正常に通信している
すべてのパケットに対して、正しく Reply (応答) が返ってきています。



2) 名前解決に失敗している
ホスト名を IP アドレスに変換する作業に失敗しています。



主な原因
ホスト名を間違えている。
DNS サーバーを正しく認識していない。

3) 接続できない
正しい IP アドレスに変換できているが、応答がないことを示します。



主な原因
送信元の TCP/IP 設定に問題がある。
相手先の TCP/IP スタックが動作していない。
途中経路に問題がある。(tracert コマンドで判別します。)
Proxy や Socks を経由している。(多くの場合 ICMP パケットを通しません。)
途中経路もしくは相手先で ICMP がフィルターされている。
(セキュリティ向上のため、ICMP パケットを通さない設定をすることがあります。)

B 基本的な問題判別
TCP/IP での通信に問題が発生した場合、ping を使うことで問題を特定することができます。

1) デフォルトゲートウェイに ping する
自分のデフォルトゲートウェイとして設定されたアドレスに ping します。
現在のデフォルトゲートウェイは、コマンドプロンプトで ipconfig を実行すると表示されます。
(Windows95 だけは [スタート]−[ファイル名を指定して実行] で winipcfg を実行する必要があります。)

正しい応答があれば、基本的な IP 設定に問題はありません。

2) DNS サーバーに ping する
ご自分の DNS サーバーとして設定されたアドレスに ping します。
現在の DNS サーバーは、コマンドプロンプトで ipconfig /all を実行すると表示されます。
(Windows95 だけは [スタート]−[ファイル名を指定して実行] で winipcfg を実行する必要があります。)

応答がない場合、DNS サーバーとして指定したアドレスが間違っている可能性があります。

3) 目的のサーバーに ping する
目的のホストに ping します。

応答があれば、IP レベルでは通信可能だとわかります。
ping に応答があってもブラウザでアクセスすると問題がある場合、ブラウザか http サーバーに問題があると推測できます。

--------------------------------------------------------------------------------
脚注1:コマンドプロンプトの起動方法

Windows9x の場合
[スタート]−[プログラム] から [MS-DOS プロンプト] をクリックします。
Windows Me の場合
[スタート]−[プログラム]−[アクセサリ] から [MS-DOS プロンプト] をクリックします。
Windows 2000 の場合
[スタート]−[プログラム]−[アクセサリ] から [コマンドプロンプト] をクリックします。

脚注2:ホスト名とは?

TCP/IP プロトコルが稼動している機械を「ホスト」と総称することがあります。
各ホストには 1 つ以上の IP アドレスが割り当てられ、IP アドレスを基に通信を行います。 (IP アドレスがわからない相手とは通信できません。)
IP アドレスは 32bit (IPv4) のビット列ですが、多くの場合 204.71.200.74 のように 8 ビットごとに区切って 10 進数で表記します。

IP アドレスは覚えにくいので、人間がおぼえやすいようにつけた名前が「ホスト名」です。
ただし、ホスト名では通信できないので、ホスト名を IP アドレスに変換する必要があり、インターネット上では変換するために DNS が使われています。
Internet Explorer などのプログラムは DNS サーバーにホスト名を問い合わせ、返された IP アドレスを使って通信しています。

Internet Explorer などのブラウザのアドレスバーに表示された http:// で始まる名前 (URL) は次のような構造になっています。
<プロトコル名>://<ホスト名>/<ディレクトリ>/<ファイル名>
ですから、ping でホスト名を指定するときは、URL の <ホスト名> 部分を指定してください。