PPP (Point to Point Protocol)

PPPは、電話回線を介したダイヤルアップ接続や 専用線などを使った広域ネットワーク(WAN)接続において、 「送信側」と「受信側」を一対一で接続するためのプロトコルです。

PPP

自宅や会社からインターネットに接続する形態はさまざまです。
インターネット接続専用の回線を持たないほとんどの場合は、 なんらかの通信媒体を通してISP(インターネットのプロバイダ)の ルータに接続し、 そこからインターネットに接続します。(この領域をアクセスポイントと呼びます。)

このルータは特別にアクセスサーバーAccess Serverとよばれ、 PPPプロトコルで(Point to Point Protocol)通信します。

電話やISDNなどで使われるPPPは、ダイヤルアップ PPPと呼ばれます。
PPPは、認証機能や圧縮機能をがあり次の手順で通信を開始します。

【1】PPP-LCP(Link Control Protocol)で構成情報を交換
【2】PPP-PAP(Password Authentication Protocol)/CHAP(Challenge Handshake Authentication Protocol) でユーザー名、パスワードの認証の情報交換
【3】PPP-IPCP(Internet Protocol Control Protocol) IPアドレス割り当てなどの情報交換
【4】PPP-CCP(Compression Control Protocol)圧縮機能の情報交換
【5】PPP-接続状態

PPP(Point to Point Protocol:RFC1661)などで利用される認証方式に次の方法があります。

上記のIPCP(Internet Protocol Control Protocol)は、PPPで接続された2つの間で、 IPによる通信を開始するために設定情報の送受信などを行うための制御プロトコルで、 これによりIPアドレスの割り当てを行います。
このようにPPPの上位で動作するネットワーク層プロトコルの設定を行うプロトコルは、 Network Control Protocol (ネットワーク・コントロール・プロトコル、NCP) と呼ばれます。
( IPCP以外のNCPとして、IPXプロトコル用の Internetwork Packet Exchange Control Protocol 、 AppleTalkプロトコル用の AppleTalk Control Protocol などがあります。)

このPPPには、幾つかの発展形態があります。
PPPoA (PPP over ATM)や、PPPoE(Point-to-point protocol over Ethernet )です。
PPPoAは、ATM(Asynchronous Transfer Mode)上で、PPP接続を使います。 加入者宅のADSLモデムとNTT局内のDSLAMの間における通信でPPPoAで行なうことがあります。
PPPoEは、Ethernetを通してPPPを利用するもので、 これにより、ADSLやCATV、光ファイバーなどによる常時接続サービスにおいて ユーザー認証やIPアドレスの割り当てなどが可能になります。

PPPフレームにPPPoEのヘッダーを追加し, それをLAN(イーサネット)のフレームに入れたイメージです。

<-------------------------------  イーサネット・フレーム  --------------------------------->
イーサネット・ヘッダー PPPoEのヘッダー <--- PPP・フレーム ---> イーサーネットフッター
PPPのヘッダー データ

PPTP(Point-to-Point Tunneling Protocol)

上記PPPでは、認証の機能を持っていますが、暗号化や機能がありません。
対して、PPPに暗号化とカプセル化の機能を付加したものがPPTPです。
(これはMicrosoft社によって提案された暗号通信のためのプロトコルです。)
次のステップで通信を始めます。

  1. 認証
    アクセスユーザーが正しいかを確認する処理で、PAP(Password Authenication Protocol) または、CHAP(Challenge Handshake Authenication Protocol)が使われます。 PAPは、パスワードが盗聴される恐れがあります。対してCHAPはパスワードを ネットワークに流さないので、安全性が高い方式です。

  2. 暗号化
    盗聴されることを防ぐため、元のIPヘッダーとデータをCR4(Rivest Cipher 4)で暗号化します。 これは、共通鍵ですが、上記の認証でCHAPで取り決めます。

  3. カプセル化
    元のIPヘッダーやデータを暗号化するわけですが、それを送るために新しいヘッダーが使われます。