ping – ネットワーク疎通を確認するコマンド

診断・疎通確認

ping コマンドは、指定したホストに ICMP Echo Request を送信し、応答が返ってくるかを確認するためのコマンドです。
ネットワークの疎通確認や遅延(RTT: Round Trip Time)の測定に広く使われます。

構文(Syntax)

ping [オプション] ホスト名/IPアドレス

主なオプション一覧

オプション説明使用例
(なし)指定ホストに無限に ping を送信ping example.com
-c COUNT指定回数だけ送信して終了ping -c 4 example.com
-i SECONDS送信間隔を指定(デフォルト 1秒)ping -i 2 example.com
-s SIZEパケットサイズを指定(バイト単位)ping -s 1024 example.com
-W TIMEOUT応答待ち時間を指定(秒)ping -W 2 example.com
-q結果を簡潔に表示ping -c 4 -q example.com
-Dタイムスタンプを表示ping -D example.com
-4IPv4 を強制利用ping -4 google.com
-6IPv6 を強制利用ping -6 google.com

実行例

google.com へ無限 ping

ping google.com

出力例:

PING google.com (142.250.72.14): 56 data bytes
64 bytes from 142.250.72.14: icmp_seq=0 ttl=115 time=25.3 ms
64 bytes from 142.250.72.14: icmp_seq=1 ttl=115 time=24.8 ms
...

4回だけ送信して終了

ping -c 4 google.com

出力例:

--- google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 24.812/25.132/25.569/0.298 ms

IPv6 を使って疎通確認

ping -6 google.com

パケットサイズを大きくして送信

ping -s 1024 google.com

結果を簡潔に表示

ping -c 4 -q google.com

出力例:

--- google.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 24.8/25.1/25.6/0.3 ms

エラー例(到達できないホスト)

ping -c 2 unknownhost

出力例:

ping: unknownhost: Name or service not known

関連コマンド

  • traceroute : パケットがたどる経路を表示
  • mtr : ping と traceroute を統合したリアルタイム解析ツール
  • curl / wget : HTTP/HTTPS 通信の確認
  • netstat / ss : ネットワーク接続状況を表示

備考

  • ping が利用する ICMP パケット はファイアウォールでブロックされている場合があります。
  • Linux では Ctrl + C で無限 ping を停止できます。
  • OS によってデフォルトの動作に違いがあり、BSD系や macOS の ping はデフォルトで無限ループせず終了する場合があります。
  • IPv4 と IPv6 で挙動を切り替えるオプション(-4, -6)は環境によって異なることがあります。

参考

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント