GNU/Linux >> Linux の 問題 >  >> Linux

初心者向けのLinuxpingコマンドチュートリアル(8つの例)

Linuxユーザーのタイプ(初心者またはプロ)に関係なく、知っておく必要のある特定のツールがあります。そのようなユーティリティの1つがPing 。このチュートリアルでは、わかりやすい例を使用して、このツールの基本について説明します。ただし、その前に、ここでの記事のすべての例がUbuntu16.04LTSマシンでテストされていることを言及する価値があります。

Linuxpingコマンド

最も基本的な用語では、pingコマンドを使用すると、リモートホストが稼働していて応答しているかどうかを確認できます。ツールの構文は次のとおりです。

ping [OPTIONS] destination

そして、manページで説明されているのは次のとおりです。

       ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to elicit
       an ICMP ECHO_RESPONSE from a host or gateway.   ECHO_REQUEST  datagrams
       (``pings'')  have  an  IP and ICMP header, followed by a struct timeval
       and then an arbitrary number of ``pad'' bytes  used  to  fill  out  the
       packet.

       ping6  is  IPv6  version  of  ping,  and can also send Node Information
       Queries (RFC4620).  Intermediate hops may not be allowed, because  IPv6
       source routing was deprecated (RFC5095).

以下は、pingコマンドがどのように機能するかについての良いアイデアを与えるはずのQ&Aスタイルの例です。

Q1。 pingコマンドの使用方法は?

基本的な使用法はかなり簡単です。宛先を入力として「ping」コマンドを実行するだけです。

例:

ping howtoforge.com

以下は、私のシステムで生成されたこのコマンドの結果です。

デフォルトでは、コマンドはCtrl+Cで停止するまで実行を継続することに注意してください。

Q2。 pingパケット間の時間間隔を変更するにはどうすればよいですか?

デフォルトでは、pingパケット間に1秒のギャップがあります。ただし、必要に応じて、-iコマンドラインオプションを使用してこの遅延をカスタマイズできます。

たとえば、次のコマンドは3秒のギャップがあることを確認します。

ping -i 3 howtoforge.com

そして、次のコマンドは0.5秒の遅延でパケットを送信します。

ping -i 0.5 howtoforge.com

スーパーユーザーのみが間隔を0.2秒未満の値に設定できることに注意してください

Q3。 pingパケットサイズを変更するにはどうすればよいですか?

デフォルトでは、pingパケットのバイト数は56(8バイトのICMPヘッダーを含めると64)です。ただし、必要に応じて、この値を変更します。これは、-sコマンドラインオプションを使用して実行できます。

たとえば、80バイトのパケット(ICMPヘッダーを含む88)を送信するには、次のコマンドを使用します。

ping -s 80 howtoforge.com

Q4。 pingに設定されたパケット数を送信させる方法は?

pingのデフォルトの動作は、ユーザーによって中断されるまでパケットを送信し続けることです。ただし、必要に応じて、設定された数のパケットを送信した後、pingの実行を強制的に停止することができます。これは、-cコマンドラインオプションを使用して実行できます。

たとえば、次のコマンドは3つのパケットを送信してから、停止します。

ping -c 3 howtoforge.com

Q5。 pingを使用して大量のパケットを起動するにはどうすればよいですか?

はい、pingコマンドには、大量のパケットを起動するオプションもあります。これは、-fコマンドラインオプションを使用して実行できます。

ping -f howtoforge.com

このオプションについての公式ドキュメントの内容は次のとおりです。

              For  every  ECHO_REQUEST  sent  a  period  ``.''  is
              printed,  while  for  ever  ECHO_REPLY  received  a backspace is
              printed.  This provides a rapid display of how many packets  are
              being  dropped.   If  interval is not given, it sets interval to
              zero and outputs packets as fast as they come back or  one  hun?
              dred  times  per second, whichever is more.  Only the super-user
              may use this option with zero interval.

Q6。各行の前にping印刷タイムスタンプを作成するにはどうすればよいですか?

これを可能にするオプション(-D)があります。印刷されるタイムスタンプは、UNIX時間とマイクロ秒の組み合わせです(gettimeofdayのように)。

ping -D howtoforge.com

このオプションの実際のスクリーンショットは次のとおりです。

Q7。 pingのハードタイムアウトを設定するにはどうすればよいですか?

pingを終了する期限を指定できます。これは、秒数を表す数値を必要とする-wコマンドラインオプションを使用して実行できます。

たとえば、次のpingコマンドは3秒後に停止します。

ping -w 3 howtoforge.com

公式ドキュメントでこのオプションを説明する方法は次のとおりです。

              Specify  a  timeout, in seconds, before ping exits regardless of
              how many packets have been sent or received. In this  case  ping
              does  not  stop after count packet are sent, it waits either for
              deadline expire or until count probes are answered or  for  some
              error notification from network.

Q8。 pingのソフトタイムアウトを設定するにはどうすればよいですか?

-wオプションを使用すると、期限が切れた後でもpingが確実に停止しますが、宛先側からの応答がない場合にのみpingを停止する別のオプション(-W、大文字で)があります。

ping -W 3 howtoforge.com

この場合の動作については、マニュアルページで次のように説明されています。

              Time to wait for a response, in seconds. The option affects only
              timeout in absence of any responses, otherwise  ping  waits  for
              two RTTs.
結論

pingは、ネットワーク関連の問題のデバッグにほぼ確実に使用される重要なツールです。このチュートリアルでは、このユーティリティのいくつかの主な機能(コマンドラインオプション)について説明しました。これらを練習し、完了したら、ツールのマニュアルページにアクセスして詳細を確認してください。


Linux
  1. 初心者向けのLinuxcdコマンドチュートリアル(8例)

  2. 初心者向けのLinux日付コマンドチュートリアル(8例)

  3. 初心者向けのLinuxホスト名コマンドチュートリアル(5つの例)

  1. 初心者向けのLinux通信コマンドチュートリアル(5例)

  2. 初心者向けのLinuxdfコマンドチュートリアル(8例)

  3. 初心者向けのLinuxduコマンドチュートリアル(10例)

  1. 初心者向けのLinuxechoコマンドチュートリアル(5つの例)

  2. 初心者向けのLinuxenvコマンドチュートリアル(5つの例)

  3. 初心者向けのLinuxサイズのコマンドチュートリアル(6つの例)