物理層では下記のような仕様が規定されています。簡単にいうと「決めごと」です。

ICMPを説明する前に、まずはフレームについてご紹介します。
ひとつの通信データはフレームの中に格納されています。
フレームにはMACアドレスの情報が記載されており、フレームの中にデータ(ICMP情報)情報が格納されています。
実際のLANケーブルを流れるデータは0と1のデジタル信号です。
1010からはじまり011で終わるプリアンブルが「ここからフレームがはじまるよ!」という目印の役割をもちます。

フレームを受け取ったパソコンは、まず宛先MACアドレスを確認し、自分宛であれば受け取り、そうでなければ破棄します。

フレーム部分を確認するだけで自分宛ということが判るので、データ部分まで見る必要がありません。LAN内は大量のフレームが流れているので、この処理はパソコンにとってかなり効率的です。
自分宛のフレームを見つけたらデータ部分を確認します。
データ部(ICMP)に「08 00」が入っていたらping要求でしたね。


「タイプ0、コード0」が記載されています。
成功の場合、ping応答には「タイプ0、コード0」が記載されています。
pingはICMPプロトコルでリクエストを送信し、応答(リプライ)内容によって成功、失敗を判断します。
pingリクエスト送信後、全く応答(リプライ)が返ってこない場合はタイムアウトを表示します。
pingにてICMPリクエストを送信後、応答(リプライ)を受信し、結果を表示しています。
「宛先ホストに到達できません」の場合、ping応答には「タイプ3、コード0-15」が記載されています。
★:ARP要求でMACアドレス応答がない。この場合pingリクエストはL1レイヤーで送出されず、内部でICMPリプライを応答。タイプ3、コード1(自IP宛)「宛先ホストに到達できません。」表示となる。