26
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【初心者用】基本の確認コマンド

26
Last updated at Posted at 2026-07-16

はじめに

「CUIの練習のために何かコマンドを書いてみたいけど、データ消しちゃったり変に設定変えちゃったりしないか不安…」
そんな人向けに、日経NETWORK 2025年11月号から、コマンドプロンプトで気軽に入力できる確認コマンドをいくつかまとめました。

1.ping

pingとは

自分のパソコンと相手がつながっているかチェックするためのコマンドです。
以下のように書きます。
ping [オプション] ○○○.×××.com
オプションについては後で説明します。

ping 実行結果

試しにGoogleのトップページとつながっているか確認します。

ping
C:\Users\pc-abc>ping www.google.com

www.google.com [2001:4860:XXXX:XXXX::] ping を送信しています 32 バイトのデータ:
2001:4860:XXXX:XXXX:: からの応答: 時間 =9ms
2001:4860:XXXX:XXXX:: からの応答: 時間 =13ms
2001:4860:XXXX:XXXX:: からの応答: 時間 =9ms
2001:4860:XXXX:XXXX:: からの応答: 時間 =53ms

2001:4860:XXXX:XXXX::  ping 統計:
    パケット数: 送信 = 4受信 = 4損失 = 0 (0% の損失)
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 9ms最大 = 53ms平均 = 21ms

意味はこんな感じ↓

  • 2001:4860:XXXX:XXXX:: からの応答: 時間 =9ms
    →相手からの返信が返ってくるまでに9ミリ秒かかった
     
  • 2001:4860:XXXX:XXXX:: の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
    →4回リクエストを送ったら4回返ってきた。損失は0
     
  • ラウンド トリップの概算時間 (ミリ秒):
    最小 = 9ms、最大 = 53ms、平均 = 21ms
    →相手にリクエスト送って返信来るまでに最小で9ミリ秒、最大で53ミリ秒かかった。
     4回送った時の平均は21ミリ秒。

すべてのリクエストに返答があり、返答時間は最大でも53ミリ秒(国内サーバーなら100ミリ秒以下で正常)。
つまり…通信に問題なしということです。

 
また、オプションを付ければ、表示の仕方を変えたり、ちょっとした追加の指示を出すことも可能です。

pingのオプション一覧

表記法 意味
-t ユーザーが中断するまで問い合わせを継続
-a 逆引きの名前検索(IPアドレスからドメイン名を調べること)をする
-n 数値 問い合わせの実行回数を指定する
-i 数値 TLT(ルーターを跨ぐ回数)を指定
-4 IPv4で表示
-6 IPv6で表示

2.tracert

tracertとは

宛先までの経路を把握するコマンドです。
tracert [オプション] ○○○.×××.com
と打つことで、どんな経路を辿ってそのページにたどり着くのかを調べることができます。

tracert 実行結果

試しにGoogleのトップページへの経路を調べてみます。

tracert
C:\Users\pc-abc>tracert www.google.com

www.google.com [2001:4860:XXXX:XXXX::] へのルートをトレースしています
経由するホップ数は最大 30 です:

  1    11 ms    14 ms     6 ms  XXXX:XXXX:XXXX:XXXX::1
  2    11 ms     8 ms    11 ms  XXXX:XXXX:XXXX:XXXX::XXXX
  3     *        *        *     要求がタイムアウトしました
  4     *        *        *     要求がタイムアウトしました
  5    40 ms    55 ms     8 ms  2001:xxx:XXXX:X::1
  6     9 ms    24 ms    13 ms  2001:4860:XXXX:XXXX::

トレースを完了しました

意味はこんな感じ↓
1行目:スタート、自分のPC
2行目~4行目:中継地点(家、地域レベル)
5行目:中継地点(国、世界レベル)
6行目:ゴール

3、4行目に「要求がタイムアウトしました」と書いてあります。
一見エラーに見えますが、実はエラーではありません。ちゃんと通過しています。
セキュリティ対策や負荷軽減のために応答していないだけです。

また、tracertはサーバーまでしか調べられないため、細かいページまでの経路は調べられません。
ホスト名以外の部分を入力すると↓

tracert https://
C:\Users\pc-abc>tracert https://www.google.com/
ターゲット システム名 https://www.google.com/ を解決できません

このようにエラーが起きてしまいます。

teracertのオプション一覧

表記法 意味
-d 経路上のルーターの名前解決(ドメイン名をIPアドレスに変換)をしない
-h 数値 相手先までの最大ホップ数を指定
-w 数値 応答待ち時間を指定
-R IPv6で往復の経路をトレース
-4 IPv4で表示
-6 IPv6で表示

3.pathping

pathpingとは

ルーターごとにping処理的なことをしてくれる、いわばping+tracertです。
以下のように書きます。
pathping [オプション] ○○○.×××.com

pathping 実行結果

試しにGoogleのトップページでやってみます。

pathping
C:\Users\pc-abc>pathping www.google.com

www.google.com [2001:4860:XXXX:XXXX::] へのルートをトレースしています
経由するホップ数は最大 30 です:
  0  pc-abc.flets-east.jp [XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX]
  1  XXXX:XXXX:XXXX:XXXX::1
  2  XXXX:XXXX:XXXX:ffff::fffd
  3     *        *        *
統計を 50 秒間計算しています...
            ソースからここまで   このノード/リンク
ホップ  RTT    損失/送信 = Pct  損失/送信 = Pct  アドレス
  0                                           pc-abc.flets-east.jp [XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX]
                                0/ 100 =  0%   |
  1    7ms     0/ 100 =  0%     0/ 100 =  0%  XXXX:XXXX:XXXX:XXXX::1
                                0/ 100 =  0%   |
  2   10ms     0/ 100 =  0%     0/ 100 =  0%  XXXX:XXXX:XXXX:ffff::fffd

トレースを完了しました

「3 * * *」の部分ですが、どうやら経路探索を途中で中止してしまうみたいです。
参照している雑誌では、後に説明する「-n」をオプションとして付ければ解決するそうですが、解決しませんでした。
 
しかし、「-4」を付けてみたところ…

pathping -4
C:\Users\pc-abc>pathping -4 www.google.com

www.google.com [142.251.XXX.XXX] へのルートをトレースしています
経由するホップ数は最大 30 です:
  0  host.docker.internal [XXX.XXX.XX.XX]
  1  XXX.XXX.XX.X
  2  XXX.XXX.XXX.XX
  3  XXX.XXX.XXX.XX
  4  XX.XX.XXX.XX
  5  XXX.XXX.XXX.XXX

統計を 125 秒間計算しています...
            ソースからここまで   このノード/リンク
ホップ  RTT    損失/送信 = Pct  損失/送信 = Pct  アドレス
  0                                           host.docker.internal [XXX.XXX.XX.XX]
                                0/ 100 =  0%   |
  1    6ms     0/ 100 =  0%     0/ 100 =  0%  XXX.XXX.XX.X
                                0/ 100 =  0%   |
  2  ---     100/ 100 =100%   100/ 100 =100%  XXX.XXX.XXX.XX
                                0/ 100 =  0%   |
  3   12ms     0/ 100 =  0%     0/ 100 =  0%  XXX.XXX.XXX.XX
                                0/ 100 =  0%   |
  4   11ms     0/ 100 =  0%     0/ 100 =  0%  XX.XX.XXX.XX
                                0/ 100 =  0%   |
  5    9ms     0/ 100 =  0%     0/ 100 =  0%  XXX.XXX.XXX.XXX

トレースを完了しました

なぜか最後までやってくれるようになりました。

チャットGPTに聞いてみたところ、IPv6とIPv4で通るネットワークが異なることが理由として考えられるらしいです。

IPv4:返事をしてくれる経路を通る
IPv6:返事をしてくれない経路を通る

IPv6表示でも、tracertと同様に応答がないだけなので、通信自体には何も問題はありません
 

意味はこんな感じ↓
1行目:スタート、自分のPC
2行目:家のルーター
3~4行目:中継地点(国、世界レベル)
5行目:ゴール
 
「2 --- 100/ 100 =100% 100/ 100 =100% XXX.XXX.XXX.XX」の部分で損失が100%になっていますが、これはICMP(確認用の信号)には返事をしない設定になっているだけなので、こちらも通信に問題はなさそうです(実際、後ろのホップは応答がある)。

pathpingのオプション一覧

表記法 意味
-n 経路上のルーターの名前解決(ドメイン名→IPアドレスに変換)をしない
-h 数値 相手先までの最大ホップ数を指定
-I(大文字のi) アドレス    送信元アドレスを指定
-p 数値 pingを送る間隔を指定
-w 数値 タイムアウト時間を指定
-4 IPv4で表示
-6 IPv6で表示

4.nslookup

nslookupとは

DNS関連の情報を集めるためのコマンドです。
以下のように書きます。
nslookup [オプション] ×××.com

nslookup 実行結果

試しにGoogleのトップページでやってみます。

nslookup
C:\Users\pc-abc>nslookup google.com
サーバー:  UnKnown
Address:  XXXX:XXXX:XXXX:XXXX::1

権限のない回答:
名前:    google.com
Addresses:  XXXX:XXXX:XXXX:XXXX::71
          XXXX:XXXX:XXXX:XXXX::65
          XXXX:XXXX:XXXX:XXXX::64
          XXXX:XXXX:XXXX:XXXX::8b
          XXX.XXX.XX.XXX
          XXX.XXX.XX.XXX
          XXX.XXX.XX.XXX
          XXX.XXX.XX.XXX
          XXX.XXX.XX.XXX
          XXX.XXX.XX.XXX

意味はこんな感じ↓

  • サーバー: UnKnown
    Address: XXXX:XXXX:XXXX:XXXX::1
    →DNSサーバーのホスト名とIPアドレス
     
  • 権限のない回答:
    名前: google.com
    Addresses: XXXX:XXXX:XXXX:XXXX::71
    XXXX:XXXX:XXXX:XXXX::65(以下略)
    →Googleのドメイン名とサーバーのIPアドレス
     ※IPアドレスがたくさん出てくるのは、Googleのデータセンターがたくさんあるため。
     
    パッと見「これ大丈夫なの🤔」みたいなところがいくつかあると思います。
    ✅DNSサーバーのホスト名がUnKnown
    →ホスト名が登録されていないか、取得できなかっただけ。通信自体には問題なし。
     
    ✅権限のない解答とは?
    →「google.comを管理しているDNSサーバー本人じゃないけど、google.comのIPアドレス知ってるから教えるね」という意味。こちらも問題なし。
     

nslookup対話型

nslookupは対話型でも利用可能です。

まず、nslookupと入力し、「>」 が出てきたらset [オプション]を入力。
もう一度「>」 が出てきたら、ドメイン名を入力します。
※対話型の場合、[オプション]はハイフン(-)を付けない

nslookup対話型 実行結果

試しに、GoogleのトップページとYahoo!JAPANのトップページでやってみます。

nslookup_対話型
C:\Users\pc-abc>nslookup
既定のサーバー:  UnKnown
Address:  XXXX:XXXX:XXXX:XXXX::1

> set type=mx
> google.com
サーバー:  UnKnown
Address:  XXXX:XXXX:XXXX:XXXX::1

権限のない回答:
google.com      MX preference = 10, mail exchanger = smtp.google.com

smtp.google.com internet address = xxx.xxx.xxx.xx
smtp.google.com internet address = xxx.xxx.xxx.xx
smtp.google.com internet address = xxx.xxx.xxx.xx
smtp.google.com internet address = xxx.xxx.xxx.xx
smtp.google.com internet address = xxx.xxx.xxx.xx
> set type=a
> yahoo.co.jp
サーバー:  UnKnown
Address:  XXXX:XXXX:XXXX:XXXX::1

権限のない回答:
名前:    yahoo.co.jp
Addresses:  xxx.xx.xxx.xxx
          xxx.xx.xxx.xxx
          xxx.xx.xxx.xxx
          xxx.xx.xxx.xxx
          (以下略)
> quit

対話モードを終了するときはquitで抜けられます。

対話型のメリット
毎回「nslookup」を打たなくても、オプションやドメイン名だけを変えて情報収集ができる

nslookupのオプション一覧

nslookupは、大体-type=タイプ名で指定します。

表記法 意味
-type=a ドメイン名に対応するIPv4アドレスを指定
-type=aaaa ドメイン名に対応するIPv6アドレスを指定
-type=ns 権威DNSサーバー(権威ある回答をするサーバー)のドメイン名を知る
-type=mx メールサーバーのドメイン名を知る
-type=txt テキストレコードを表示
-d、-d2 デバッグモードで問い合わせる

5.netstat

netstatとは

ネットワークの動作状況を確認するためのコマンドです。
以下のように書きます。
netstat[オプション]

netstat 実行結果

netstat
PS C:\Users\ANY-PC184> netstat

アクティブな接続

  プロトコル  ローカル アドレス      外部アドレス           状態
  TCP         xxx.xxx.xx.xx:xxxxx    xxx:xxxx               ESTABLISHED
  TCP         xxx.xxx.xx.xx:xxxxx    xxx-xx-xxx-xx-xxx:https  ESTABLISHED
  TCP         xxx.xxx.xx.xx:xxxxx    xxx-xxx-xx-xxx:https   ESTABLISHED
  TCP         xxx.xxx.xx.xx:xxxxx    xxx-xx-xx-xx-xxx:https  ESTABLISHED
  TCP         xxx.xxx.xx.xx:xxxxx    xx.xx.xxx.x:https      ESTABLISHED
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:49424  [xxxx:xxxx:xxxx:x:2]:https  ESTABLISHED
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:50472  dns:https              ESTABLISHED
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:53274  rx-in-f95:https        TIME_WAIT
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:56347  dns:https              TIME_WAIT
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:57826  xxxx:xxxx:xxxx:xxxx:x:xxxx:xxxx:xxxx]:https  ESTABLISHED
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:60374  xx-xx-xxxx:xxxx        ESTABLISHED
  TCP         [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx7]:61019  xxxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx:https  ESTABLISHED

左から、

  • プロトコル
    →TCP(正しさ重視)かUDP(速さ重視)。httpsはデータが正しく届かなければならないので、基本TCP。
     

  • ローカルアドレス
    →自分のPCのアドレスとポート番号。
     

  • 外部アドレス
    →相手のサーバーとポート番号。
     

  • 状態
    →TCPの動作状態。

    メッセージ 意味
    LISTEN     接続待ち
    ESTABLISHED 現在通信中
    CLOSING 自分も相手も同時に切断処理中
    TIME_WAIT 通信終了→待機中
    CLOSE 接続終了
    CLOSE_WAIT 相手が切断、自分はまだ終了していない
    SYN_RECEIVED 接続要求を受けた状態

以下の場合は注意
CLOSE_WAITが大量→アプリのバグかサーバーに問題がある
SYN_RECEIVEDが大量→サーバーが攻撃を受けている可能性あり

  今回はESTABLISHEDとTIME_WAITしかないため、問題なし。

netstatのオプション一覧

表記法 意味
-a すべてのポートを表示
-b ポートを利用しているプログラムを表示(管理者権限が必要になるため、できない可能性が高い)
-n IPアドレスとポート番号で表示

おわりに

日経NETWORK 2025年11月号には、今回紹介したもの以外にも基本のネットワークコマンドが載っています。そちらを試してみるのもおすすめですが、オプションによっては設定を変えてしまったり、削除してしまったりするので注意が必要です。

最後まで読んでいただき、ありがとうございました。

参考資料

26
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
26
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?