パソコンを立ち上げたら、ネットに繋がらない・・・そんな経験は一度や二度誰もが経験していますが、そんな時こそ冷静になって原因を切り分けて考える必要があります。

今回は、コマンドを活用して、COOL!!にチェックしていきたいと思います。

使うコマンドは全部で4つです。やることはとってもシンプルなので、コマンドプロンプトを開いて、キーボードをたたいてみて下さい。

目次

ipconfig の実行

ネットワークアダプタにIPアドレスが設定されているかどうかを調べるコマンドです。

問題なく接続している場合

通常、インターネットに繋がっている場合は、IPv4アドレス、サブネットマスク、デフォルトゲートウェイがきちんと取得されています。そこが取得されていなければ、ネットに繋がっていないと考えていただいて結構です。

インターネット接続されている状態のIPv4アドレス

お約束でモザイクがかかっており恐縮ですが、問題なくネット接続されている場合はIPv4アドレス、デフォルトゲートウェイがきちんと取得できているはずです。

簡単に言うと、デフォルトゲートウェイとはルータのIPアドレスになります。

ですので、ここは、192.168.☓☓.1となるのが一般的です。それに伴い、IPv4アドレスは、192.168.☓☓.○○と表示されます。*○○は、デフォルトゲートウェイを除く、1-254のいずれかであることが一般的です。

接続しない場合の一例

一方でインターネットに接続されていない場合はいくつかパターンがあります。

LANケーブルがきちんと繋がっている場合

LANは問題なく使えているのにネットに繋がらない場合は、IPv4アドレスが「169.254.☓☓☓.☓☓☓」形式になっています。

この状態は、ネットワーク接続のアイコンに黄色の「!」がついているはずです。

ルータが各端末にIPアドレスを払い出す状態になっていないと、このようなエラーが発生します。

インターネット接続されている状態のIPv4アドレス

この場合は、DHCPの確認とIPアドレスが指定されていて重複していないかどうかを確認した方がよさそうです。

ping の実行

pingコマンドで、相手の端末にパケットを送り、きちんと返ってくるかどうかのチェックをします。

きちんと返ってくれば「正常」。返ってこなければ、通信が正常に通っていないことになります。

試しに[ping 8.8.8.8]をやってみましょう。「8.8.8.8」というのは、Googleが無償で提供している「Google Public DNS」のIPアドレスになります。

損失=0となっていて、正常に通信されているのがわかる

上の画像の結果は、送受信ともにパケットが通っていますので、正常であることがお分かりいただけるかと思います。

100%の損失となり、パケットが通っていない。

上の画像の場合、4回の送信のうち損失が4回となってます。1回もパケットが通っていません。この時は、意図的にLANケーブルを抜いていましたので、パケットは通りません。

こちらは、IPアドレスを固定した状態で接続しています。ただし、IPアドレスが重複しているため、自身のIPアドレスが取得できていない状態です。

tracert の実行

[tracert]は相手のネットワーク先までの経路が見えるコマンドです。

引数を付けずにコマンドを実行すると以下のように表示されます。

C:\WINDOWS\system32>tracert

使用法: tracert [-d] [-h maximum_hops] [-j host-list]  [-w timeout]
               [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name

オプション:
    -d                 アドレスをホスト名に解決しません。
    -h maximum_hops    ターゲットを検索するときの最大ホップ数です。
    -j host-list       host-list で指定された緩やかなソース ルートを使用します
                       (IPv4 のみ)。
    -w     timeout     timeout ミリ秒間、応答を待ちます。
    -R                 往復のパスをトレースします (IPv6 のみ)。
    -S srcaddr         使用するソース アドレスです (IPv6 のみ)。
    -4                 IPv4 の使用を強制します。
    -6                 IPv6 の使用を強制します。

先ほどの[pingコマンド]と同様に、引数にはあて先となるホスト名(IPアドレスかFQDN名)を指定します。

「-d」オプションをつけることで、IPアドレスから名前(FQDN名)を求めないようすることができます。

デフォルトでは、通過したルータのIPアドレスから、DNSを使ってFQDN名を求めて表示するようになっているが、この名前解決のために少し時間がかかるので、これを省略することができるのです。またFQDN名を割り当てられていないIPアドレス(ルータ)も数多く存在するので、このような場合にも-dを利用すると、結果を素早く表示させることができます。

端末から、Yahoo!JAPANまでの経路をチェック

検証でYahoo!JAPAN[www.yahoo.co.jp]までの経路をチェックしてみます。

tracertコマンドでwww.yahoo.co.jpまでの経路をチェックする

社内のデフォルトゲートウェイを通過した後、プロバイダの内部ネットワークを経由してYahooJAPANのサーバに到達していることがわかります。

「ms」という表記がありますが、これはホストにパケットを送った結果、「○ミリ秒」で応答があったということを意味している。「<1ms」とあるのは1ミリ秒未満であることを示している。

ルータのLAN側の線を抜いてみると・・・

ターゲットシステム名 www.yahoo.co.jp を解決できません。と表示されます。

デフォルトゲートウェイにすら到達していないことがわかります。

この場合は、ルータまでの経路に問題があるのではないか、と切り分けて考えることができますね。

ルータのWAN側の線を抜いてみると・・・

デフォルトゲートウェイまでは通貨している

時間が無駄に経過してしまうので、「Ctrl+C」で中断させています。

デフォルトゲートウェイまでは通過していることがわかりますが、ISPまで到達していないので、ルータのWAN側に問題があるのではないかと検証できます。

今回は、WAN側のケーブルを意図的に抜いていましたので、デフォルトゲートウェイより先に行かなかったのです。

コマンドで通信の状態を確認してボトルネックになっているところを探す

コマンドを実行することで、通信の経路やレスポンス、IPが取れているかどうか、など様々なことが確認でいます。

それによって、インターネットが繋がらない原因を切り分けて検証することができるので、問題解決のスピードが上がる可能性が高まります。

普段、なかなか使う機会がない方もいると思いますが、ぜひ参考にしていただき、問題解決に役立てて下さい。