Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

IPCP(アイピーシーピー)とは | 意味や読み方など丁寧でわかりやすい用語解説

IPCP(アイピーシーピー)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

IPCP (アイピーシーピー)

英語表記

IPCP (アイピーシーピー)

用語解説

IPCPはIP Control Protocolの略称である。これは、PPP(Point-to-Point Protocol)という通信プロトコル群の一部として機能し、PPP接続上でIP(Internet Protocol)を用いた通信を行うための設定を自動化する役割を担う。PPPは、電話回線や専用線、ADSL、光ファイバー接続など、二つの機器(ポイント)間を一対一で接続する通信回線において、データを安定して送受信するための標準的な手続きを定めたルール群である。IPCPは、このPPPによって確立された通信路の上で、IPパケットをやり取りするための準備、すなわち合意形成(ネゴシエーション)を行うプロトコルである。具体的には、通信を行うクライアント側のコンピュータやルーターに対してIPアドレスを割り当てたり、名前解決に必要となるDNSサーバーのアドレスを通知したりといった、IP通信を開始するために不可欠な初期設定を動的に行う。例えば、家庭からインターネットサービスプロバイダに接続する際に利用されるPPPoE(PPP over Ethernet)では、ユーザーのルーターがプロバイダのサーバーとIPCPを用いて通信設定を交換し、インターネット上で通信可能となるグローバルIPアドレスを取得する。IPCPは、PPPにおけるNCP(Network Control Protocol)と呼ばれるプロトコルファミリーの一つに分類される。NCPは、PPPの上で動作させる様々なネットワーク層プロトコルそれぞれに対応した設定用プロトコルの総称であり、IPCPはIP通信に特化したNCPとして定義されている。

IPCPの動作を詳細に理解するには、PPP接続が確立されるまでのフェーズを把握することが重要である。PPP接続は、主にリンク確立フェーズ、認証フェーズ、ネットワーク層プロトコル設定フェーズという段階を経て確立される。まず、LCP(Link Control Protocol)を用いて物理的な回線の確立や、データ転送の最大サイズといった基本的な通信パラメータの交換が行われる。次に、PAPやCHAPといった認証プロトコルを用いて、ユーザーIDとパスワードによる認証が行われる。これらの手順が正常に完了すると、ネットワーク層プロトコル設定フェーズへと移行し、ここでIPCPが活動を開始する。IPCPの主な機能は、クライアントとサーバーとの間で、IP通信に必要なパラメータを交渉し、合意することである。この交渉は、特定のフォーマットを持つIPCPパケットを交換することで実現される。主要なパケットには、Configure-Request、Configure-Ack、Configure-Nak、Configure-Rejectの4種類が存在する。まず、クライアントはサーバーに対して「このような設定でIP通信を開始したい」という要求を、Configure-Requestパケットとして送信する。この要求には、IPアドレスの動的な割り当て要求や、特定の固定IPアドレスの使用希望、DNSサーバーアドレスの取得要求などが含まれる。サーバーがクライアントからの要求内容をすべて受け入れ可能な場合、Configure-Ackパケットを返信する。この応答をもって交渉は成功裏に完了し、PPPリンク上でIPパケットの送受信が可能となる。もしサーバーが、要求された設定値(例えばクライアントが希望したIPアドレス)を許可できないが、代替案を提示できる場合には、Configure-Nakパケットを返す。このパケットにはサーバーが推奨する設定値が含まれており、クライアントはそれに基づいて再度Configure-Requestを送信する。一方、クライアントが要求した設定項目そのものをサーバーがサポートしていない、または理解できない場合には、Configure-Rejectパケットが返信される。この応答を受け取ったクライアントは、拒否された設定項目を除外して交渉をやり直す必要がある。このようにして双方が合意に至るまでパケットの交換が繰り返される。IPCPによって設定される具体的な情報(オプション)には、クライアントが使用するIPアドレス、プライマリおよびセカンダリDNSサーバーのIPアドレス、IPヘッダ圧縮プロトコルの指定などがある。IPアドレスを割り当てるという点でIPCPはDHCPと似ているが、両者は動作する環境が根本的に異なる。IPCPはPPPという一対一のリンク上で動作するプロトコルであるのに対し、DHCPは主にイーサネットのようなLAN環境で、不特定多数の機器に対してIPアドレスを割り当てるために設計されている。現代においても、IPCPはPPPoE接続や、スマートフォンのデータ通信などで利用されるモバイルブロードバンド接続の内部など、PPPをベースとする通信方式において、IP通信を確立するための基盤技術として重要な役割を担い続けている。

関連コンテンツ