はじめに Raw Socket (生ソケット) を利用すると Ping のようなプログラムを書くことも容易にできる。本稿では、単純な ping のサンプルコードを示す。通常の ping にはいろいろなオプションがあるが、ここでは最も単純なコードにした。 ICMP ヘッダ Ping の実体は ICMP の Echo 要求である。 ここでは ICMP プロトコルの詳細は説明しない。今回のサンプルコードを読むにあたり、必要な程度のヘッダ情報を書き記すにとどめる。 詳細は RFC 792, 950, 1256 及び 1122 を参照のこと +---------------+--------------+----------------------+ | 8 bit ICMP | 8 bit ICMP | 16 bit ICMP Checksum | | Type | Code |