「インターネットにつながらない」「社内のサーバーに接続できない」といったとき、原因を調べるために便利なのがping(ピング)コマンドです。
pingを使うと、自分のパソコンから相手の機器まで通信が届いているかを確認できます。
この記事では、Windowsでのpingの使い方と、ネットワークトラブルの原因を順番に切り分ける方法を初心者向けに紹介します。
INDEX
pingコマンドとは
pingは、指定したIPアドレスやホスト名に小さなデータを送り、相手から応答が返ってくるかを確認するコマンドです。
たとえば、GoogleのWebサイトに対してpingを実行する場合は、次のように入力します。
ping google.com
応答が返ってくれば、少なくとも自分のパソコンからGoogleまで通信できている可能性が高いと判断できます。
pingは主に、次のような確認に使われます。
- ネットワークに接続できているか
- ルーターまで通信できているか
- インターネットまで通信できているか
- サーバーやほかのパソコンに到達できるか
- ドメイン名からIPアドレスを調べられるか
- 通信速度が極端に遅くなっていないか
pingを実行する方法
Windowsでは、コマンドプロンプトまたはPowerShellからpingを実行できます。
- スタートボタンをクリックします。
- 検索欄に「cmd」と入力します。
- 「コマンドプロンプト」を開きます。
- pingコマンドを入力してEnterキーを押します。
pingを使うだけであれば、管理者として起動する必要はありません。
最初に、次のコマンドを試してみましょう。
ping google.com
正常に通信できる場合は、次のような結果が表示されます。
google.com [142.250.xxx.xxx]に ping を送信しています
142.250.xxx.xxx からの応答: バイト数=32 時間=15ms TTL=117
Windowsでは、通常4回通信を行います。
実行結果の見方
pingの結果を見るときは、主に「応答」「時間」「パケット損失」を確認します。
「応答」が返っているか
次のように表示されれば、相手から応答が返っています。
142.250.xxx.xxx からの応答: バイト数=32 時間=15ms TTL=117
一方、次のように表示された場合は、相手から応答が返っていません。
要求がタイムアウトしました。
ただし、タイムアウトしたからといって、必ずしも相手の機器が停止しているとは限りません。
サーバーやルーターの設定によって、pingへの応答を拒否している場合もあります。
「時間」は通信にかかった時間
「時間=15ms」のように表示される数字は、データを送ってから応答が返ってくるまでの時間です。
msはミリ秒という単位で、1,000msが1秒です。一般的には、数字が小さいほど応答が速いことを表します。
ただし、相手との距離や回線の種類などによって変わるため、数字だけで正常・異常を決めることはできません。
普段は10ms程度なのに、突然500msを超えるようになった場合は、回線の混雑などが起きている可能性があります。
パケット損失を確認する
実行結果の最後には、次のような統計情報が表示されます。
送信 = 4、受信 = 4、損失 = 0(0%の損失)
これは、送信した4回すべてに応答が返った状態です。
「損失」が発生している場合は、Wi-Fiの電波が不安定になっていたり、ネットワークが混雑していたりする可能性があります。
ネットにつながらない原因を順番に調べる
pingの便利なところは、接続先を変えながら実行することで、どこに問題があるのかを切り分けられることです。
次の順番で確認すると、問題のある場所を見つけやすくなります。
1.自分のパソコン内部を確認する
最初に、次のコマンドを実行します。
ping 127.0.0.1
127.0.0.1は、自分自身のパソコンを表す特別なIPアドレスです。「ループバックアドレス」と呼ばれます。
ここで応答が返れば、Windowsの基本的な通信機能が動作していると判断できます。
ただし、この確認だけでは、LANケーブルやWi-Fi、インターネットへの接続までは確認できません。
2.ルーターまで通信できるか確認する
次に、自分のパソコンからルーターまで通信できるか確認します。
まず、次のコマンドを実行してください。
ipconfig
表示された情報の中から「デフォルト ゲートウェイ」を探します。
たとえば、次のように表示されていたとします。
デフォルト ゲートウェイ:192.168.1.1
この場合は、次のコマンドを実行します。
ping 192.168.1.1
ここで応答が返れば、パソコンからルーターまで通信できています。
応答がない場合は、次のような原因が考えられます。
- Wi-Fiが切断されている
- LANケーブルが抜けている
- ルーターの電源が入っていない
- パソコンのネットワーク設定に問題がある
- ルーターがpingに応答しない設定になっている
3.インターネットまで通信できるか確認する
ルーターまで問題がなければ、外部のIPアドレスにpingを実行します。
たとえば、Google Public DNSのIPアドレスを使って確認できます。
ping 8.8.8.8
応答が返れば、インターネット上の機器まで通信できています。
ルーターまでは応答があるのに、8.8.8.8から応答がない場合は、ルーターより先の回線やインターネットサービスプロバイダー側に問題がある可能性があります。
ただし、途中のネットワークや接続先がpingを拒否している場合もあるため、この結果だけで断定はできません。
4.名前解決ができるか確認する
最後に、IPアドレスではなくドメイン名を指定します。
ping google.com
「8.8.8.8にはpingが通るのに、google.comには通らない」という場合は、DNSによる名前解決に問題がある可能性があります。
DNSは、google.comのようなドメイン名を、通信に必要なIPアドレスへ変換する仕組みです。
このような場合は、nslookupコマンドを使うと、さらに詳しく調べられます。
切り分け結果のまとめ
| 確認結果 | 考えられる原因 |
|---|---|
| 127.0.0.1に通らない | Windowsの通信機能やネットワーク設定に問題がある可能性 |
| 127.0.0.1には通るが、ルーターに通らない | Wi-Fi、LANケーブル、ルーターとの接続に問題がある可能性 |
| ルーターには通るが、8.8.8.8に通らない | ルーターより先の回線やプロバイダー側に問題がある可能性 |
| 8.8.8.8には通るが、google.comに通らない | DNSによる名前解決に問題がある可能性 |
| すべてに通る | 基本的なネットワーク接続は正常。ブラウザー、アプリ、プロキシ、ファイアウォールなどを確認 |
便利なpingのオプション
pingには、動作を変更するためのオプションがあります。ここでは、Windowsでよく使うものを紹介します。
指定した回数だけ実行する
通常は4回ですが、「-n」の後ろに数字を付けると回数を指定できます。
ping -n 10 google.com
この例では、pingを10回実行します。
通信がときどき途切れる場合は、回数を増やしてパケット損失が発生するか確認できます。
停止するまで繰り返す
「-t」を付けると、手動で停止するまでpingを繰り返します。
ping -t 192.168.1.1
Wi-Fiがときどき切れる場合や、ネットワーク機器を再起動して復旧するタイミングを確認したい場合に便利です。
停止するときは、Ctrlキーを押しながらCキーを押します。
ドメイン名のIPアドレスを確認する
ドメイン名にpingを実行すると、変換されたIPアドレスも表示されます。
ping google.com
結果の先頭には、次のような情報が表示されます。
google.com [142.250.xxx.xxx]に ping を送信しています
角括弧の中がIPアドレスです。
ただし、大規模なWebサービスでは、利用する場所や時間によって異なるIPアドレスが表示されることがあります。
結果をテキストファイルに保存する
pingの結果をファイルへ保存することもできます。
ping google.com > ping_result.txt
実行すると、現在のフォルダーに「ping_result.txt」というファイルが作成されます。
ネットワーク障害の記録を残したい場合や、担当者へ結果を送る場合に便利です。
pingが通らなくても停止しているとは限らない
pingを使ううえで、特に注意したい点があります。
pingの応答がないからといって、接続先のサーバーやWebサイトが停止しているとは限りません。
pingでは、ICMPという通信用の仕組みが利用されます。セキュリティ対策として、ICMPへの応答を拒否している機器もあります。
そのため、pingはネットワークを調べるための有力な手段ですが、結果だけですべてを判断することはできません。
たとえば、Webサイトにpingが通らなくても、ブラウザーでは正常に表示できる場合があります。
まとめ
pingは、相手の機器まで通信が届いているかを確認できる基本的なネットワークコマンドです。
ネットにつながらないときは、次の順番で確認すると原因を切り分けやすくなります。
ping 127.0.0.1でパソコン内部を確認するipconfigでルーターのIPアドレスを調べる- ルーターにpingを実行する
ping 8.8.8.8でインターネットへの通信を確認するping google.comで名前解決を確認する
「どこにもつながらない」と考えるのではなく、どこまではつながっているのかを順番に確認するのがポイントです。
次回は、ドメイン名とIPアドレスの関係を調べられる「nslookupコマンド」を紹介します。
