プロトコル番号

プロトコル番号

 プロトコル番号は、インターネット・プロトコル・バージョン4(IPv4)のヘッダーに含まれる「プロトコル」フィールドで使用されます。このフィールドには、IPv4パケットが使用するプロトコルを示す数値が含まれます。例えば、ICMPはプロトコル番号1、TCPはプロトコル番号6、UDPはプロトコル番号17です。

 プロトコル番号は、IPv4パケットを処理するための情報を提供します。パケットが送信元から宛先に転送される際に、各ホップのルーターはパケットのヘッダーを解析して、どのプロトコルが使用されているかを確認します。次に、ルーターはそのプロトコルに基づいて、パケットを適切なポートまたはサービスに転送します。

 プロトコル番号は、IPv4以外のプロトコルでも使用されます。例えば、IPv6では、IPv4と同様にヘッダーの「次のヘッダー」フィールドにプロトコル番号が含まれます。また、TCPやUDPのポート番号は、そのプロトコルを特定するために使用されますが、プロトコル番号はTCPやUDPそのものを識別するために使用されます。

 プロトコル番号は、ネットワーク層で使用されるIPプロトコル、トランスポート層で使用されるTCP、UDP、ICMPなどのプロトコル、アプリケーション層で使用されるHTTP、FTP、SMTPなどのプロトコルに割り当てられた一意の番号です。これらの番号は、ネットワーク上の機器が通信を行う際に、どのプロトコルを使用するかを特定するために使用されます。

 たとえば、TCPはプロトコル番号6、UDPはプロトコル番号17、ICMPはプロトコル番号1に割り当てられています。プロトコル番号は、IPパケットのヘッダに含まれ、パケットの転送先の機器が正しいプロトコル処理を行えるようにします。

 また、プロトコル番号は、ファイアウォールなどのセキュリティデバイスで特定のプロトコルを制御するためにも使用されます。たとえば、特定のプロトコルをブロックすることで、ネットワーク上でのセキュリティリスクを低減することができます。

プロトコル番号の例

  • ICMP (Internet Control Message Protocol):1
  • IGMP (Internet Group Management Protocol):2
  • TCP (Transmission Control Protocol):6
  • UDP (User Datagram Protocol):17
  • SCTP (Stream Control Transmission Protocol):132
  • ICMPv6 (Internet Control Message Protocol version 6):58
  • OSPF (Open Shortest Path First):89
  • RSVP (Resource Reservation Protocol):46
  • EIGRP (Enhanced Interior Gateway Routing Protocol):88
  • SNMP (Simple Network Management Protocol):161, 162

 他にも、IPsecのESP (Encapsulating Security Payload) や AH (Authentication Header) など、様々なプロトコルがあります。また、各種アプリケーション層のプロトコルには、HTTP (Hypertext Transfer Protocol)、SMTP (Simple Mail Transfer Protocol)、FTP (File Transfer Protocol)、SSH (Secure Shell) などがあります。それぞれが異なるプロトコル番号を割り当てられています。