ICMPメッセージを識別できるヘッダー情報|情報処理安全確保支援士 平成30年 春期午前Ⅱ試験 問18

出典:平成30年春期 午前Ⅱ 問18 分野:ネットワーク / 通信プロトコル
IPv4において,IPパケットで送られているデータが,ICMPメッセージであることを識別できるヘッダー情報はどれか。
  • ア:IPヘッダーのプロトコル番号
  • イ:MACヘッダーのイーサタイプ値
  • ウ:TCPヘッダーのコントロールフラグ
  • エ:UDPヘッダーの宛先ポート番号
解説

IPv4のIPヘッダーには、IPパケットのデータ部に格納されている上位プロトコルの種類を示すプロトコル番号があります。

ICMPにはプロトコル番号1が割り当てられているため、IPヘッダーのプロトコル番号を確認することで、データ部がICMPメッセージであることを識別できます。

したがって、が適切です。

❌他選択肢が誤りの理由
イ:MACヘッダーのイーサタイプ値
⇒イーサタイプ値は、MACフレームのデータ部に格納されている上位プロトコルを識別する情報です。例えば、IPv4やIPv6であることは識別できますが、IPv4パケット内のデータがICMPであることまでは判別できません。
ウ:TCPヘッダーのコントロールフラグ
⇒TCPヘッダーのコントロールフラグは、SYN、ACK、FINなど、TCP通信の状態や制御を示す情報です。ICMPはTCPとは別のプロトコルなので、ICMPの識別には使用しません。
エ:UDPヘッダーの宛先ポート番号
⇒UDPの宛先ポート番号は、UDPを利用するアプリケーションを識別する情報です。ICMPはUDPを利用しないため、ICMPメッセージの識別には使用できません。
TSUNAGARU-ADVICE

まず押さえたいこと

IPv4では、IPパケットの中に入っている上位プロトコルを、IPヘッダーのプロトコル番号で識別します。ICMPであればプロトコル番号を見れば判別できるため、ポイントはIPヘッダーが上位プロトコルを示すという関係です。

迷ったときの判断軸

MACヘッダーのイーサタイプ値は、上位にIPv4やIPv6など何を載せているかを示します。TCPヘッダーのコントロールフラグはSYNやACKなどTCPの制御情報、UDPヘッダーの宛先ポート番号はUDP通信でどのアプリケーションに渡すかを示す情報です。ICMPかどうかは、IPv4パケット内の上位プロトコル識別なのでIPヘッダーを見ると判断しましょう。

科目Bにつなげるために

科目Bでは、パケットキャプチャ・FWルール・ICMP Echo・traceroute?到達性確認などと絡めて問われることがあります。通信を読むときは、MACヘッダー・IPヘッダー・TCP/UDPヘッダーの役割を分け、どの層のヘッダーに何の識別情報があるかを整理しましょう。