Solaris のシステム管理 (IP サービス)

ping コマンド

ping コマンドは、特定のホストとの IP 接続が存在しているかどうかを確認するために使用します。基本構文は次のとおりです。

/usr/sbin/ping host [timeout]

この構文で、host は問題のマシンのホスト名を示します。オプションの timeout 引数は、ping がそのマシンに到達しようと試みる秒数を示し、デフォルトは 20 秒です。詳しい構文とオプションについては、ping(1M) のマニュアルページを参照してください。

ping を実行すると、ICMP プロトコルは、指定されたホストにデータグラムを送って、応答を求めます。ICMP は、TCP/IP ネットワーク上のエラー処理を担当するプロトコルです。詳細については、ICMP プロトコルを参照してください。

ping コマンド (作業マップ)

表 4–6 ping コマンド (作業マップ)

タスク 

説明 

参照先 

ホストが動作しているか確認する 

ホスト名に対して ping を実行する

ネットワークデータベースと nsswitch.conf ファイル

ホストでパケットが失われていないか確認する 

ping コマンドの -s オプションを使用する

ネットワークデータベースへのネームサービスの影響

ホストが動作しているか確認する方法

    コマンド行で次のコマンドを入力します。


    % ping hostname
    

    ホスト hostname が動作していれば、次のメッセージが表示されます。


    hostname is alive

    このメッセージは、hostname が ICMP の要求に応答したことを示します。hostname がダウン状態にあるかまたは ICMP パケットを受け取れなかった場合は、ping から次の応答が返されます。


    no answer from hostname
    

ホストでパケットが失われていないか確認する方法

マシンが動作状態にあるのにパケットが失われている疑いがある場合は、ping-s オプションを指定することにより、問題を追求できます。

    コマンド行で次のコマンドを入力します。


    % ping -s hostname
    

ping は、ユーザーが割り込み文字を送るかタイムアウトが発生するまで、hostname にパケットを送り続けます。画面上には次のように出力されます。


PING elvis: 56 data bytes
64 bytes from 129.144.50.21: icmp_seq=0. time=80. ms
64 bytes from 129.144.50.21: icmp_seq=1. time=0. ms
64 bytes from 129.144.50.21: icmp_seq=2. time=0. ms
64 bytes from 129.144.50.21: icmp_seq=3. time=0. ms
.
.
.
----elvis PING Statistics----
4 packets transmitted, 4 packets received, 0% packet loss
round-trip (ms) min/avg/max = 0/20/80   

パケットロスの統計値は、ホストがパケットを失ったかどうかを示します。

ping が失敗した場合は、ifconfignetstat が報告するネットワーク状態を調べます。これについては、ifconfig コマンドnetstat コマンドを参照してくだい。