linuxコマンド--pingコマンド&traceroutコマンド
2716 ワード
linuxのpingコマンドは、ICMP echo_を送信することによって、ターゲットホストとの接続性をテストするために使用できます.requestパケットはホストに送信され、応答状況が表示されます.
コマンド1 pingホスト1台
コマンド2 pingゲートウェイ
コマンド3指定パラメータ-iは送信時間が3 s、-sは送信パケットサイズが1024に設定されていることを示します(送信されたデータバイト数を指定し、プリセット値が56で、8バイトのICMPヘッダを加えて64 ICMPデータバイトです).tは設定TTL値255を示し、-cは送信10回を示す
tracerouteでは、ホストが別のホストにどのようなパスを歩くかをテストできますが、パケットが進むたびにパスが異なる場合があります.windowsでコマンドtracertを使用します.
よく使われるパラメータは
コマンド1ホストから別のマシンへのパス
その戻り値は、各動作のシーケンス番号であり、ホップであり、ホップごとにゲートウェイを表し、ホップごとの時間はパケットの戻り時間を表し、-qでプローブパケットの個数を指定することができ、一部の行は*番号で表され、ファイアウォールがICMPの戻り情報を封印している可能性があるため、関連パケットのデータが取得されず、-nパラメータはdns解析を回避することができる.IP形式で直接出力します.
コマンド2ホップ数の設定
コマンド3 UDPの転送ポートの設定
コマンド4-rは、ルーティングテーブルを無視して、対応するホストに直接接続できます.ネットワークが到達できない可能性があります
コマンド5-wは、s単位で待機時間を設定できます.
tracerouteコマンドの原理:
Tracerouteプログラムの設計は,ICMPおよびIPヘッダを用いたTTL(Time To Live)カラム(field)である.まず、tracerouteは、1つのTTLが1のIP datagramである(実際には、ソースアドレス、宛先アドレス、およびパケット発行のタイムラベルを含む3つの40バイトのパケットを送信するたびに)宛先に送信し、経路上の最初のルータがこのdatagramを受信すると、TTLを1減少させる.このとき、TTLが0になるので、このルータはこのdatagramを破棄し、「ICMP time exceeded」メッセージ(IPパケットを送信するソースアドレス、IPパケットのすべての内容、ルータのIPアドレスを含む)を送り返し、tracerouteはこのメッセージを受信すると、このルーティングがこの経路に存在することを知り、tracerouteはもう一つのTTLが2のdatagramであることを送り返し、2番目のルータを発見・・・tracerouteは、送信されるdatagramのTTLに1を加えるたびに別のルータを発見し、この繰り返しの動作はあるdatagramが目的地に到着するまで続く.Datagramが目的地に到着した後、ホストはICMP time exceededメッセージを返さない.それはすでに目的地であるため、tracerouteはどのように目的地が到着したことを知っているのだろうか.
Tracerouteは、UDP datagramsを宛先に送信する際に、選択された送信ポートnumberは、一般的なアプリケーションでは使用できない番号(30000以上)であるため、このUDP datagramが宛先に到着すると、ホストは「ICMP port unreachable」のメッセージを送り返し、tracerouteがこのメッセージを受信すると、宛先が到着したことを知る.したがってtracerouteはサーバ側でもいわゆるDaemonプログラムはありません.
Tracerouteは、ICMP TTLの期限切れメッセージを送信するデバイスのIPアドレスを抽出し、ドメイン名の解析を行う.毎回、Tracerouteは、ルーティングデバイスのドメイン名とIPアドレスを含む一連のデータを印刷し、3つのパケットが往復するたびに時間がかかる.
参照ドキュメント:
http://www.cnblogs.com/peida/archive/2013/03/06/2945407.html
http://www.cnblogs.com/peida/archive/2013/03/07/2947326.html
コマンド1 pingホスト1台
ping 192.168.120.205
コマンド2 pingゲートウェイ
ping -b 192.168.120.1
コマンド3指定パラメータ-iは送信時間が3 s、-sは送信パケットサイズが1024に設定されていることを示します(送信されたデータバイト数を指定し、プリセット値が56で、8バイトのICMPヘッダを加えて64 ICMPデータバイトです).tは設定TTL値255を示し、-cは送信10回を示す
ping -i 3 -c 10 -s 1024 -t 255 192.168.120.206
tracerouteでは、ホストが別のホストにどのようなパスを歩くかをテストできますが、パケットが進むたびにパスが異なる場合があります.windowsでコマンドtracertを使用します.
よく使われるパラメータは
-d Socket 。
-f TTL 。
-F 。
-g , 8 。
-i 。
-I ICMP UDP 。
-m TTL 。
-n IP 。
-p UDP 。
-r Routing Table, 。
-s IP 。
-t TOS 。
-v 。
-w 。
-x 。
コマンド1ホストから別のマシンへのパス
traceroute www.baidu.com
その戻り値は、各動作のシーケンス番号であり、ホップであり、ホップごとにゲートウェイを表し、ホップごとの時間はパケットの戻り時間を表し、-qでプローブパケットの個数を指定することができ、一部の行は*番号で表され、ファイアウォールがICMPの戻り情報を封印している可能性があるため、関連パケットのデータが取得されず、-nパラメータはdns解析を回避することができる.IP形式で直接出力します.
コマンド2ホップ数の設定
traceroute -m 10 www.baidu.com
コマンド3 UDPの転送ポートの設定
traceroute -p 6888 www.baidu.com
コマンド4-rは、ルーティングテーブルを無視して、対応するホストに直接接続できます.ネットワークが到達できない可能性があります
traceroute -r www.baidu.com
コマンド5-wは、s単位で待機時間を設定できます.
traceroute -w 3 www.baidu.com
tracerouteコマンドの原理:
Tracerouteプログラムの設計は,ICMPおよびIPヘッダを用いたTTL(Time To Live)カラム(field)である.まず、tracerouteは、1つのTTLが1のIP datagramである(実際には、ソースアドレス、宛先アドレス、およびパケット発行のタイムラベルを含む3つの40バイトのパケットを送信するたびに)宛先に送信し、経路上の最初のルータがこのdatagramを受信すると、TTLを1減少させる.このとき、TTLが0になるので、このルータはこのdatagramを破棄し、「ICMP time exceeded」メッセージ(IPパケットを送信するソースアドレス、IPパケットのすべての内容、ルータのIPアドレスを含む)を送り返し、tracerouteはこのメッセージを受信すると、このルーティングがこの経路に存在することを知り、tracerouteはもう一つのTTLが2のdatagramであることを送り返し、2番目のルータを発見・・・tracerouteは、送信されるdatagramのTTLに1を加えるたびに別のルータを発見し、この繰り返しの動作はあるdatagramが目的地に到着するまで続く.Datagramが目的地に到着した後、ホストはICMP time exceededメッセージを返さない.それはすでに目的地であるため、tracerouteはどのように目的地が到着したことを知っているのだろうか.
Tracerouteは、UDP datagramsを宛先に送信する際に、選択された送信ポートnumberは、一般的なアプリケーションでは使用できない番号(30000以上)であるため、このUDP datagramが宛先に到着すると、ホストは「ICMP port unreachable」のメッセージを送り返し、tracerouteがこのメッセージを受信すると、宛先が到着したことを知る.したがってtracerouteはサーバ側でもいわゆるDaemonプログラムはありません.
Tracerouteは、ICMP TTLの期限切れメッセージを送信するデバイスのIPアドレスを抽出し、ドメイン名の解析を行う.毎回、Tracerouteは、ルーティングデバイスのドメイン名とIPアドレスを含む一連のデータを印刷し、3つのパケットが往復するたびに時間がかかる.
参照ドキュメント:
http://www.cnblogs.com/peida/archive/2013/03/06/2945407.html
http://www.cnblogs.com/peida/archive/2013/03/07/2947326.html