Pingずそのパラメヌタヌの䞀郚







「PingチヌムがLoose、Strict、Record、Timestamp、Verboseのオプションを䜿甚する理由」 -最近、ベンダヌ詊隓でそのような質問に答えたした。 ICMPパケットのルヌティングに圱響を䞎え、トランゞットL3デバむスに関する情報を収集できたす。 しかし、かなり長い間ネットワヌクテクノロゞヌに関䞎しおいたため、私はそれらをほずんど䜿甚したせんでした。



なぜこのような質問がテストに存圚するのか、たったく理解できたせんでした。 家に垰っお、私は芋぀けようず決めたした、突然、私は本圓に重芁な䜕かを芋倱いたしたか



pingナヌティリティは私たちすべおに銎染みのあるものです。 暙準の "ping 8.8.8.8"に加えお、さたざたなオプションを䜿甚できたすが、その䞭には興味深いものがありたす。 それらの名前ず説明はベンダヌにずっおほが同じです。



最も䞀般的に䜿甚されるもののうち、次のこずに泚意しおください。
  • 送信したパケットの数

    デフォルトで指定された数のパケットの代わりにたずえば、Windowsでは4、Cisco機噚では5、適切なパケットを送信できたす。 これには、Windowsのお気に入りの「-t」オプションの倚くも含たれおおり、パケットの送信を無限に開始したす。
  • ゜ヌスむンタヌフェヌス

    䞻にネットワヌク機噚に関連したす。 デフォルトでは、pingコマンドを䜿甚するず、デバむスは宛先に最も近いむンタヌフェむスのアドレスを含むパケットを送信したす。 NAT機胜をテストしたり、VPNをチェックしたりする堎合、別のむンタヌフェむスからICMPパケットを送信する必芁が生じたす。 別の兞型的な䟋同僚に、ネットワヌクではなくホストでファむアりォヌルが有効になっおいるこずを同僚に蚌明する方法。 むンタヌフェむスを指定せずにネットワヌクコアからpingを開始したす-応答したす。 最も近いむンタヌフェむスの指瀺で-応答したせん。
  • DFビット蚭定

    DFビットが蚭定された= 1パケットはフラグメント化できたせん。 このオプションは、2぀のポむント間の最倧蚱容フレヌムサむズMTUを決定するのに䟿利です。 䞀般的に以䞋のオプションの束で䜿甚されたす。
  • パッケヌゞサむズ

    パッケヌゞのサむズを倉えるこずができたす。 DFビットの蚭定ずずもに、MTUの決定に圹立ちたす。 1500バむトの倧きなパケットを送信したす。 合栌したせん。 私たちは少し少ない-1300を送信したす。 1400などを送信したす。 䞀般に、二分法ずMTUが定矩されおいたす。

    Windowsでは、ICMPパケットのデヌタセグメントのサむズを指定したす。 Ciscoデバむスでは、ヘッダヌ付きのIPパケットサむズ。
  • 指定された範囲内のパケットサむズの倉動

    二分法を奜たない人には、このモヌドが䟿利です。 パケットサむズの初期倀、最終およびステップを瀺したす。 次に、デバむスはパケットを送信し、埐々にサむズを増やしたす。 䞻なこずは、DFビットを蚭定するこずを忘れないこずです。そうしないず、すべおが無駄になりたす。


船倖には、他の倚くのオプションタむムアりト、ToSなどがありたしたが、個人的には実際には䜿甚しおいたせん。



オプションLoose、Strict、Record、Timestamp、Verboseは、倚くのネットワヌクデバむスのpingナヌティリティに含たれおいたす。 Windowsにサポヌトがありたす。



蚘録蚘録ルヌト



Recordオプション付きのICMPパケットは、L3デバむスを通過するずきに、発信むンタヌフェむスのIPアドレスを蚘録したす。 これは、宛先ずその逆の䞡方で行われたす。 これは、たずえば、非同期ルヌティングに関連する問題を蚺断するずきに圹立ちたす。 それはtracerouteのようになりたすが、より良いだけです。



「オプション」
「オプション」ずいう蚀葉は、pingコマンドのオプションずICMPパケットのオプションずいう2぀のコンテキストで䜿甚したす。 ICMPの堎合、オプションは、[オプション]フィヌルドのIPv4ヘッダヌ以降、単にIPず衚蚘したすに蚭定される远加パラメヌタヌです。 したがっお、もちろん、IPオプションに぀いお話す方がより正確です。 ICMPは、その䜜業でそれらを䜿甚したす。


しかし、それを喜ぶには時期尚早です。゚ントリの最倧数は9です。 さらに、䞡方向のデバむスのIPアドレスに関するデヌタが含たれたす。 これは、IPアドレスに関する情報がパケットの本䜓ではなくヘッダヌに保存されるずいう制限によるものです。 オプションフィヌルドは倧きすぎおはいけたせん。 40バむトに制限されおいたす。 最終的には、ヘッダヌではなくネットワヌク䞊で有甚なデヌタを駆動する必芁がありたす。 このボリュヌムには、9぀の゚ントリのみが配眮されたすIPv4アドレスごずに4バむト。 残りの40-4 * 9= 4バむトは、オプションのタむプ、長さなどの属性のマヌクに移動したす。 IPv4ヘッダヌ党䜓の最倧サむズは60バむトです。







Windows pingを実行しおいるPCから、アドレス192.168.36.2ぞのオプションRecord Route-rを䜿甚しお開始したす。



C\ナヌザヌ\ナヌザヌ> ping -n 1 -r 9 192.168.36.2
   192.168.36.2   32  :   192.168.36.2:  =32 =12 TTL=252 : 192.168.31.2 -> 192.168.32.2 -> 192.168.34.2 -> 192.168.35.2 -> 192.168.36.2 -> 192.168.35.1 -> 192.168.33.1 -> 192.168.31.1 -> 192.168.20.1  Ping  192.168.36.2: :  = 1,  = 1,  = 0 (0% )   -  :  = 12,  = 12 ,  = 12 
      
      





IPヘッダヌにRecord Routeオプションが蚭定されたType = 7ICMP ICMP゚コヌ芁求パケット







ICMP゚コヌ芁求が受信者に到達したす。 途䞭で、トランゞットデバむスのアドレスが远加されたす。 受信者は、完成したIPヘッダヌオプションフィヌルドを取埗し、それらをICMP゚コヌ応答にコピヌしお、送り返したす。 ICMP Echo応答がpingむニシ゚ヌタヌに到達する限り、リバヌスルヌト゚ントリで増加したす。



PCが受信するICMP Echo Reply応答パケットでは、Record Routeオプションがすでに満たされおいたす。







ネットワヌクで非察称ルヌティングが行われおいるこずに気付くかもしれたせん。



Ciscoネットワヌク機噚でのRecordオプションを䜿甚したpingの䟋。
 R1#ping Protocol [ip]: Target IP address: 192.168.36.2 Repeat count [5]: 1 Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: Type of service [0]: Set DF bit in IP header? [no]: Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose[none]: R Number of hops [ 9 ]: Loose, Strict, Record, Timestamp, Verbose[RV]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 1, 100-byte ICMP Echos to 192.168.36.2, timeout is 2 seconds: Packet sent with a source address of 192.168.20.1 Packet has IP options: Total option bytes= 39, padded length=40 Record route: <*> (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) Reply to request 0 (3 ms). Received packet has options Total option bytes= 40, padded length=40 Record route: (192.168.31.2) (192.168.32.2) (192.168.34.2) (192.168.35.2) (192.168.36.2) (192.168.35.1) (192.168.33.1) (192.168.31.1) (192.168.31.2) <*> End of list Success rate is 100 percent (1/1), round-trip min/avg/max = 3/3/3 ms
      
      





タむムスタンプ



タむムスタンプオプション付きのICMPパケットがL3デバむスを通過するず、珟圚の時間を瀺すラベルが曞き蟌たれたす。 操䜜スキヌムは、蚘録オプションに䌌おいたす。アドレスの代わりに時間のみが蚭定されたす。 前のケヌスず同様に、パッケヌゞには9぀のタむム゚ントリのみを含めるこずができたすWindowsの堎合、タむムスタンプに加えおデバむスのIPアドレスが远加されるため、4぀。







パッケヌゞ内の時間はUNIX時間圢匏です。 すべおのデバむスが時間内に同期されおいる堎合、デヌタ分析は少なくずもある皋床意味がありたすこの䟋ではそうではありたせん。



Windows PCでタむムスタンプ-sオプションを䜿甚したpingの䟋。
 C:\Users\user>ping -n 1 -s 4 192.168.36.2    192.168.36.2   32  :   192.168.36.2:  =32 =4 TTL=252  : 192.168.31.2 : 43990397 -> 192.168.32.2 : 43990389 -> 192.168.34.2 : 2187294073 -> 192.168.35.2 : 2190888543  Ping  192.168.36.2: :  = 1,  = 1,  = 0 (0% )   -  :  = 4,  = 4 ,  = 4 
      
      





厳密厳密な゜ヌスルヌト



このオプションを䜿甚する堎合、ICMPパケットが通過する必芁があるL3デバむスのIPアドレスのリストを指定する必芁がありたす。 さらに、私たちが瀺したのはその順序です。 蚘録によれば、䌝統によれば、最倧9぀です。



このオプションは単玔に機胜したす。各ホップで、宛先IPアドレスがpingナヌティリティの起動時に指定したアドレスに倉曎されたす。







すべおのアドレスは、ICMPパケットのIPヘッダヌに保存されたす。 したがっお、各䞭継デバむスはそれらをスパむできたす。 このスキヌムを䜿甚するず、実際には隣接デバむスにパケットを転送しおいるため、各デバむスの珟圚のルヌティングルヌルをバむパスできたす。



このスキヌムでは、R2にはR3を介しおネットワヌク192.168.36.0/24ぞのルヌトがありたす。 ただし、ICMPパケットオプションにデバむスをハヌドコヌディングしおいるため、R2はデバむスを盎接R4に転送したす。



Windowsで-kオプション厳密な゜ヌスルヌトを䜿甚しおpingナヌティリティを起動し、デバむスアドレスを指定したす。



C\ナヌザヌ\ナヌザヌ> ping –n 1 -k 192.168.20.1 192.168.31.1 192.168.33.1 192.168.35.1 192.168.36.2
    192.168.36.2   32  :   192.168.36.2:  =32 =5 TTL=252 : 192.168.35.1 -> 192.168.33.1 -> 192.168.31.1 -> 192.168.20.1  Ping  192.168.36.2: :  = 1,  = 1,  = 0 (0% )   -  :  = 5,  = 5 ,  = 5 
      
      





PCのIPヘッダヌにStrict Source RouteオプションセットType = 137を持぀ICMP Echo Requestパケットは次のようになりたす。







PCは、宛先アドレスずしお192.168.20.1を眮き換えたした。 䞭継デバむスの残りのアドレスは、IPオプションフィヌルド゜ヌスルヌト゚ントリに安党にパックされおいたす。 宛先デバむスのアドレスが宛先゚ントリに远加されたす。



R1を通過した埌の同じパッケヌゞ







送信者のIPアドレスは倉曎されおいたせん。 受信者のIPアドレスが新しいもの-192.168.31.1に倉曎されたした。 この倀は、ICMPパケットがR1にちょうど到着したずきに、゜ヌスルヌトフィヌルドから取埗されたす。



R1がオプションフィヌルドに新しい゚ントリ-Recorded Routeを入力したこずに泚意するこずが重芁です。 R1むンタヌフェヌスのIPアドレスがそこで眮き換えられたす。 このフィヌルドは、応答パケットICMP゚コヌ応答がICMP゚コヌ芁求ず同じルヌトに沿っお戻るために必芁です。 他のデバむスでも同じこずが行われたす。 したがっお、ICMPパケットがR5に到着するず、Strict Source Routeオプションには、応答パケットが通過する察象のIPアドレスのリストが含たれたす。



PCが受信したICMP゚コヌ応答







ICMP Echo応答パケットが通過するず、蚘録されたルヌトフィヌルドが曞き換えられたす。これは、珟圚のパケットの発信むンタヌフェむスのアドレスが垞に衚瀺されるためです。 したがっお、R1はICMP Echo応答を受信するず、192.168.31.2を192.168.20.1に眮き換えたす。



pingコマンドでアドレスの1぀、たずえば最埌のアドレス192.168.35.1-R5を省略するず、R4はアドレス192.168.36.2のデバむスにすぐにパケットを送信する必芁がありたす。 しかし、このネットワヌクは圌にずっおロヌカルではないため、R4は指定されたノヌドに到達できないこずを報告したす。 通垞のルヌルに埓っおパケットをルヌティングしたせん。



ネットワヌク機噚で録音オプションを凊理するには、゜ヌスルヌティングを有効にする必芁がありたす。 たずえば、シスコの機噚では、デフォルトで有効になっおいたす。



ルヌスルヌス゜ヌスルヌト



このオプションは、基本的にStrictオプションず非垞によく䌌おいたす。 ただし、Strictずは異なり、LooseオプションはICMPパケットのハヌドルヌトを指定せず、遞択デバむスのみを指定したす。 ぀たり パケットは他のデバむスでもルヌティングできたす。 アドレスの最倧数は9です。



操䜜スキヌムは前のケヌスに䌌おいたす。 違いは、Looseオプションが蚭定されたパケットは、通垞のルヌルで転送䞭にルヌティングできるこずです。







Windowsで-jオプションLoose Source Routeを䜿甚しおpingナヌティリティを起動し、デバむスアドレスを指定したす。



C\ナヌザヌ\ナヌザヌ> ping -n 1 -j 192.168.32.1 192.168.36.2
    192.168.36.2   32  :   192.168.36.2:  =32 =4 TTL=250 : 192.168.32.1  Ping  192.168.36.2: :  = 1,  = 1,  = 0 (0% )   -  :  = 4,  = 4 ,  = 4 
      
      





PCのIPヘッダヌにLoose Source RouteオプションセットType = 131を持぀ICMP Echo Requestパケットは次のようになりたす。







PCは、アドレスR3192.168.32.1を受信者に眮き換えたした。 同時に、゚ンドデバむスR5のアドレス192.168.36.2がIPオプション宛先レコヌドで指定されたした。 次に、パケットはR3に到達するたで通垞のルヌルに埓っおネットワヌクにルヌティングされたす。 R3は宛先アドレスずしおアドレスR5を眮換し、オプションで応答パケットが返されるアドレスを蚘録したす蚘録されたルヌトレコヌド。 次に、ネットワヌクに送信したす。



ICMP Echo応答応答パケットは、以前に怜蚎されたものず類䌌しおいるため、特に重芁ではありたせん。 オプションは、パケットが通過した発信R3むンタヌフェむス蚘録されたルヌトレコヌドのアドレスを瀺したす。



冗長



このオプションは、前述のいずれかを遞択するず自動的にアクティブになりたす。 画面䞊の情報のより詳现な衚瀺を提䟛したす。 ICMPパケット自䜓には圱響したせん。 Windowsでは、pingコマンドにはこのオプションがありたせん。






これらのオプションを掻甚するためには、䞭間装眮がそれらをサポヌトする必芁がありたす。 これで問題はありたせん。 このすべおの「ロケット科孊」をITの䞖界の革新に垰する必芁はありたせん。 結論はそれ自䜓を瀺唆しおいたす。「9」の制限を考慮に入れおも、Loose、Strict、Record、Timestampオプションは有甚です。 次の安党䞊のニュアンスがない堎合。



最初のもの。 RecordおよびTimestampオプションは、ネットワヌク䞊で偵察を行うために安党に䜿甚できたす。 圌らの助けを借りお、ネットワヌクトポロゞを探玢し、フィンガヌプリントを取埗しお、これらのオプションを持぀パケットが通過したOSずデバむスのタむプを決定できたす。



二番目。 緩いオプションず厳密なオプションを䜿甚するず、暙準のルヌティングルヌルを無芖しお、パケットの移動を制埡できたす。 これは、ネットワヌクのさたざたなセグメントに䟵入しようずする十分な機䌚を提䟛したすが、埓来のルヌティングアクセスの堎合はそうすべきではありたせん。 ネットワヌクトポロゞを分析するためのむンテリゞェンスを実斜するこずもできたす。 特定のネットワヌクセグメントで垯域幅利甚攻撃を実行したす。 倚くのオプションがありたす。



䞉番目。 ネットワヌク機噚の䞀郚は、むンストヌルされたオプションを䜿甚しお、コントロヌルプレヌンレベルでプログラムでパケットを凊理しさたざたなトラフィックルヌティング最適化スキヌムを䜿甚せずに、CPUを確実にロヌドしたす。 そのため、そのようなデバむスでDoS攻撃が行われる可胜性がありたす。



倚くのベンダヌ別個のRFC 7126もありたす は、これらのオプションを持぀パッケヌゞを凊理しないこずを掚奚しおいたす。 オプションの提䟛は異なりたす。 そのようなパケットが砎棄されるたで。 確かに、䞀郚のメヌカヌには䞍協和音がありたす。䞀方では、そのようなパッケヌゞをドロップするこずをお勧めしたす。 他方では、「レコヌドは非垞に䟿利なオプションです」。



2、3のむンタヌネットプロバむダヌによるこれらの掚奚事項ぞの準拠をすばやく怜蚌しようずするず、䞀郚のオプションが匕き続き機胜するこずが瀺されたした。 ただし、゜ヌスルヌティングはどこでも無効になりたす。



興味深い結論になりたす。 オプションLoose、Strict、Timestamp、Recordは、ネットワヌクの問題の蚺断に圹立ちたす。 しかし、セキュリティの問題はこれを排陀したす。



その結果、私はただ誀解を感じおいたす。 テストの最初に質問があったのはなぜですか 比范的有甚なオプションRecordを䜿甚しおから、ネットワヌクの小さな深さで。 残りのオプションは問題です。



最埌に、小さな調査。 みなさん、良い䞀日を



All Articles