ネットワークが繋がらない!を3分で解決する 4段階切り分け メソッド

もっち

  • 関東大手SIer勤務
  • 10システム、仮想サーバ約200台の基幹系システムが稼働する仮想化基盤のインフラ運用リーダー

以下3点について、ブログで役立つ情報を発信

  1. インフラ技術・システム運用
  2. キャリア・マネジメント
  3. エンジニア実務・仕事術

突然インターネットが繋がらなくなった!という時、エンジニアは闇雲に機器を再起動しません。まずはコマンドプロンプトを使って、どこまで通信が届いているかを正確に切り分けます。

前回の記事で紹介したコマンド操作の基礎知識を応用して、具体的なレスポンスメッセージの意味を理解しながら解決を目指しましょう。

この記事の想定読者

  • ネットワークにつながらない場合の簡単な対処法を知りたい
  • コマンドプロンプトを用いた原因究明を体験したい

この記事を読むことでのメリット

  • ネットワークにつながらない場合におおよその原因を特定できる
目次

ネットワーク不通を治す 4段階切り分け

今回、コマンドプロンプトを利用して、状況の切り分けを行います。「コマンドプロンプト(黒い画面)を使うのは初めてで不安…」という方は、まずはこちらの記事で基本をおさらいしておくとスムーズです!

第1段階:自分のPCの中身は壊れていないか?(ループバック)

まずは、PC内部の通信機能(TCP/IPスタック)が正常か確認します。

  • 実行コマンド
> ping 127.0.0.1
  • 成功のレスポンス
127.0.0.1 からの応答: バイト数 =32 時間 <1ms TTL=128
127.0.0.1 からの応答: バイト数 =32 時間 <1ms TTL=128

→ PC本体のネットワーク機能は健康です。

  • 失敗のレスポンス
PING: 転送に失敗しました。一般エラー。

→ OSのネットワーク設定やドライバが壊れている可能性があります。まずはPCを再起動してください。

第2段階:ルーターまで届いているか?(デフォルトゲートウェイ)

次に、家庭内・社内ネットワークの出口であるルーターとの接続を確認します。

  1. ルーターのIPを特定する まずは自分のルーターの住所を調べます。
  • 実行コマンド
> ipconfig
  • 出力結果の確認ポイント

ここで表示された デフォルト ゲートウェイ の数字をメモします。

  1. ルーターへ疎通確認 メモしたIP(例:192.168.1.1)へ通信テストを行います。
  • 実行コマンド
> ping 192.168.1.1
  • 成功時の出力結果
192.168.1.1 からの応答: バイト数 =32 時間 =2ms TTL=64
192.168.1.1 からの応答: バイト数 =32 時間 =2ms TTL=64

→ PCからルーターまでのLAN環境は正常です。

  • 失敗時の出力結果
要求がタイムアウトしました。

→ ルーターのフリーズ、LANケーブルの断線、Wi-Fiの切断が原因です。

第3段階:外の世界へ出られるか?(インターネット疎通)

ルーターを越えて、インターネットの世界まで信号が届くか確認します。

  • 実行コマンド
> ping 8.8.8.8
  • 成功時の出力結果
8.8.8.8 からの応答: バイト数 =32 時間 =15ms TTL=115
8.8.8.8 からの応答: バイト数 =32 時間 =15ms TTL=115

→ インターネット回線そのものは生きています。

  • 失敗時の出力結果
要求がタイムアウトしました。

→ プロバイダの通信障害や、回線終端装置(ONU)の異常が疑われます。

第4段階:名前を解決できるか?(DNS確認)

最後に、google.comのようなドメイン名をIPアドレスに変換できるか確認します。ここで指定するのはURL(https:から始まる文字列)ではなく、ドメイン名のみです。

  • 実行コマンド
> nslookup google.com
  • 成功時の出力結果
名前:    google.com
Addresses:  142.250.196.110

→ すべて正常です。「142.250.196.110」は値が異なっていても正常です。ブラウザのトラブルや特定のサイト側の問題を疑いましょう。

  • 失敗時の出力結果
*** DNS request timed out.
サーバー: UnKnown が google.com を見つけられません: Non-existent domain

→ 通信はできていますが、住所録(DNS)が引けていません。ルーターのDNS設定を見直しましょう。

ワンクリックで完結!自動診断ツール

これらを手動で行うのが大変な時のために、ダブルクリックするだけで診断結果を日本語で表示するバッチファイルを用意しました。

作成方法:メモ帳に貼り付け、診断.batという名前で保存してください。

@echo off
setlocal enabledelayedexpansion
title ネットワーク爆速診断ツール

echo ========================================
echo   ネットワーク診断を開始します...
echo ========================================

:: 第1段階:ループバック
ping 127.0.0.1 -n 1 > nul
if %errorlevel% neq 0 (echo [NG] PC本体の通信機能に異常があります。 & pause & exit)
echo [OK] PC内部の通信機能は正常です。

:: 第2段階:ルーター確認
for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr "デフォルト ゲートウェイ"') do set gw=%%a
set gw=%gw: =%
if "%gw%"=="" (echo [NG] ルーターのIPが見つかりません。LAN/Wi-Fiを確認。 & pause & exit)
ping %gw% -n 1 > nul
if %errorlevel% neq 0 (echo [NG] ルーター(%gw%)に届きません。配線を確認。 & pause & exit)
echo [OK] ルーター(%gw%)まで正常に通信できています。

:: 第3段階:インターネット確認
ping 8.8.8.8 -n 1 > nul
if %errorlevel% neq 0 (echo [NG] インターネット側に通信障害があります。 & pause & exit)
echo [OK] インターネットへの接続を確認しました。

:: 第4段階:DNS確認
nslookup google.com > nul 2>&1
if %errorlevel% neq 0 (echo [NG] DNSエラー(名前解決不能)です。 & pause & exit)
echo [OK] すべての接続が正常です!

echo ========================================
echo   診断完了!大きな問題は見つかりませんでした。
echo ========================================
pause

まとめ:もう「とりあえず再起動」に頼らない!切り分けの鉄則

ネットワークトラブルは、手元から一歩ずつ外に向かって、レスポンスメッセージを確認するのが解決への最短ルートです。この切り分けフローを覚えておけば、いざという時に慌てずに対処できるようになります。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

もっちのアバター もっち インフラエンジニア/サービスマネージャ

・関東大手SIer勤務
・10システム、仮想サーバ約200台の基幹系システムが稼働する仮想化基盤のインフラ運用リーダー

以下3点について、ブログで役立つ情報を発信
1.インフラ技術・システム運用
2.キャリア・マネジメント
3.エンジニア実務・仕事術

目次