出典(authority):フリー百科事典『ウィキペディア(Wikipedia)』「2015/03/03 20:44:46」(JST)
この項目では、ネットワーク試験ツールについて説明しています。
|
ping(ピン[1]、またはピングとも[2])はIPネットワークにおいて、ノードの到達性を確認するためのソフトウェアである。IPネットワークにおける基本的なツールの一つであり、IPが実装されている環境のほとんどにおいて、何らかの形で用意されている。
pingはICMPの"echo request"パケットを対象ノードに投げ、対象ノードから"echo reply"が返ってくることで到達性を確認する。pingではリプライが返ってくるまでの時間や応答率から、対象ノード間のラウンドトリップタイム (RTT) やパケットロス率を求めることができる。これらは対象ノード間の回線状況を知るため重要な情報である。前日までアクセス可能だったサイトがアクセス不能・困難になった時に原因や状況を調べるのに有効なツールである。pingが通るということは、「少なくとも双方向にIPパケットが通り、対象から応答があった」事を示す。ドメイン名をノード名としてパケットを投げて正常にリプライされた場合は、DNSの障害もないことが確認できる。例えばウェブサイトが閲覧できなくなっている場合、ウェブサーバのドメイン名でpingを打ち正常に応答があれば、ネットワークもDNSも正常と判断されるので、より高レベルに位置するソフトウェア側に問題が起きていると推測できる。つまり自身か相手のファイアウォールでhttp通信をブロックされているかもしれないし、相手のWWWサーバソフトウェアに障害が起きている可能性がある。一部のオンラインソフト[3]にもping機能を持つものがある。
オンラインゲームなどにおいて、サーバーとプレイヤー(クライアント)間の通信タイムラグをpingとして表示するものもある。 また、短時間で切断されるような特殊なセッションを定期的なpingによって強制的に保持するという使い方もある。
1983年12月、当時アメリカ陸軍の弾道学研究所(Ballistics Research Laboratory)に所属していたマイク・ムース(Mike Muuss)が自身の管理するネットワークでのトラブルシュート用にプログラムを書いた。そのプログラムの挙動が潜水艦などで使われるアクティブソナーの発する音波(=ping)の挙動と似ていることから、pingと名づけた[4]。この事からpingを実行する事を「pingを打つ」と呼ぶ場合が多い。後にNTPを開発したデビット・L・ミルズ(David L. Mills)により”Packet Internet Grouper (Groper)”、別の人より”Packed Internet Gopher”(ここでのGopherはIT用語でのGopherではなく、齧歯目のgopher)というバクロニムを授かっている。
インターネットの接続性の問題の”診断”にも有用なpingであったが、2003年末、Welchiaのようなpingをネットワークにフラッドし標的を探すタイプのコンピュータウイルスが出現したり、悪意を持ったユーザが攻撃目標の調査やネットワークに負荷をかけるなどの目的でpingの悪用を行ったため、一部のISPでICMP Type 8(echo request)パケットがフィルタリングされるようになった。
下線は利用者が入力する部分
以下の出力例はLinux端末からwww.google.comへ、iputilsバージョンのpingからpingを打った結果である。
$ ping www.google.com PING www.l.google.com (64.233.183.103) 56(84) bytes of data. 64 bytes from 64.233.183.103: icmp_seq=1 ttl=246 time=22.2 ms 64 bytes from 64.233.183.103: icmp_seq=2 ttl=245 time=25.3 ms 64 bytes from 64.233.183.103: icmp_seq=3 ttl=245 time=22.7 ms 64 bytes from 64.233.183.103: icmp_seq=4 ttl=246 time=25.6 ms 64 bytes from 64.233.183.103: icmp_seq=5 ttl=246 time=25.3 ms 64 bytes from 64.233.183.103: icmp_seq=6 ttl=245 time=25.4 ms 64 bytes from 64.233.183.103: icmp_seq=7 ttl=245 time=25.4 ms 64 bytes from 64.233.183.103: icmp_seq=8 ttl=245 time=21.8 ms 64 bytes from 64.233.183.103: icmp_seq=9 ttl=245 time=25.7 ms 64 bytes from 64.233.183.103: icmp_seq=10 ttl=246 time=21.9 ms --- www.l.google.com ping statistics --- 10 packets transmitted, 10 received, 0% packet loss, time 9008ms rtt min/avg/max/mdev = 21.896/24.187/25.718/1.619 ms
出力例からわかることは、まずwww.google.comというURLがDNSのCNAMEレコードによりwww.l.google.comへ誘導され、64.233.183.103というIPアドレスにリゾルブされている。そして64.233.183.103に向けて10回pingが打たれており(Linuxの場合はデフォルトでは割込み文字を打って止めるまで、ずっとpingが打たれる設定となっている)、出力の最後にpingの結果が出ている。
結果からわかることは以下の通りである。
以下の出力例はMac OS X端末からwww.google.comへ、ターミナルのコマンドpingからpingを打った結果である。 ただし、computernameはコンピューター名、usernameはユーザー名である(Macintosh HD→アプリケーション→ユーティリティ→ターミナル)。
computername:~ username$ ping www.google.com PING www.l.google.com (66.249.89.104): 56 data bytes 64 bytes from 66.249.89.104: icmp_seq=1 ttl=238 time=30.556 ms 64 bytes from 66.249.89.104: icmp_seq=2 ttl=238 time=30.412 ms 64 bytes from 66.249.89.104: icmp_seq=3 ttl=238 time=31.272 ms 64 bytes from 66.249.89.104: icmp_seq=4 ttl=238 time=30.121 ms 64 bytes from 66.249.89.104: icmp_seq=5 ttl=238 time=30.942 ms 64 bytes from 66.249.89.104: icmp_seq=6 ttl=238 time=32.132 ms 64 bytes from 66.249.89.104: icmp_seq=7 ttl=238 time=30.680 ms 64 bytes from 66.249.89.104: icmp_seq=8 ttl=238 time=32.614 ms 64 bytes from 66.249.89.104: icmp_seq=9 ttl=238 time=29.405 ms 64 bytes from 66.249.89.104: icmp_seq=10 ttl=238 time=41.360 ms 64 bytes from 66.249.89.104: icmp_seq=11 ttl=238 time=32.176 ms 64 bytes from 66.249.89.104: icmp_seq=12 ttl=238 time=32.321 ms ^C --- www.l.google.com ping statistics --- 13 packets transmitted, 12 packets received, 7% packet loss round-trip min/avg/max/stddev = 29.405/31.999/41.360/2.978 ms
Mac OS XはUNIX互換であるため、Linuxとほぼ変わらない表示である。 今回は-cオプションで回数設定していないため、割込み文字(この例ではControl+C)で止めない限り永遠に続く(例では13回pingを送信)。見方はLinuxの出力例を参考。
logから分かる事は、
尚、Mac OS XにはGUIから実行可能なpingも有り、こちらは任意の実行回数を指定できる(Macintosh HD→アプリケーション→ユーティリティ→ネットワークユーティリティ→ping)。
以下の出力例はMicrosoft Windows XP端末からwww.google.comへ、コマンドプロンプト標準のpingを使用してpingを打った結果である(95、98、Me、2000も同様)。
C:\>ping www.google.com Pinging www.l.google.com [64.233.183.103] with 32 bytes of data: Reply from 64.233.183.103: bytes=32 time=25ms TTL=245 Reply from 64.233.183.103: bytes=32 time=22ms TTL=245 Reply from 64.233.183.103: bytes=32 time=25ms TTL=246 Reply from 64.233.183.103: bytes=32 time=22ms TTL=246 Ping statistics for 64.233.183.103: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 22ms, Maximum = 25ms, Average = 23ms
出力例からわかることは、まずwww.google.comというURLがDNSのCNAMEレコードによりwww.l.google.comへ誘導され、64.233.183.103というIPアドレスにリゾルブされている。そして64.233.183.103に向けて4回pingが打たれており(Windowsの場合はデフォルトではpingは4回ずつ打たれる設定となっている)、出力の最後にpingの結果が出ている。
結果からわかることは以下の通りである。
[ヘルプ] |
|
Look up ping in Wiktionary, the free dictionary. |
Ping may refer to:
This disambiguation page lists articles associated with the title Ping. If an internal link led you here, you may wish to change the link to point directly to the intended article. |
全文を閲覧するには購読必要です。 To read the full text you will need to subscribe.
拡張検索 | 「enhancer trapping」「statistical parametric mapping」「skipping」 |
関連記事 | 「pin」 |
.