PPPとPPPoEの仕組み基礎

ネットワーク

PPPoEについて

PPPoEとは、Point to Point Protocol over Ethernetの略であり、
PPPをイーサネット上でつかえるように拡張されたプロトコル。

PPP
前提となるPPPとは、ポイントとポイント同士を直接つなぐデータリンク層(L2)のプロトコル。
昔に電話線を利用してインターネットを利用していた時代に「ダイヤルアップ接続」として利用されていたらしい。
※私は使ったこと有りません。CATV→光

PPPはLCPNCPPAP or CHAPというマルチプロトコルで構成されている。
LCPはリンクの確立等L2の機能を提供し、
NCPはIP情報の配布などL3の機能を提供する。※L3がIPの場合IPCPが利用されるらしい。
PAP、CHAPはリンク確立後の認証を担当する。
PAPはユーザIDパスワードが平文で流れるため利用されておらず、
チャレンジレスポンス認証であるCHAPを覚えておけばよさそう。

ISPなどでは認証するユーザーが多いため、RADIUSなどを利用する。

NCPについては認証サーバとやりとりするのかもしれない。
ここはまた機会がある時に勉強しようと思う。

PPPoE
PPPoEとは上に書いた通り、PPPをイーサネット上で利用するためのプロトコル。
PPPはポイント同士をつなぐ1:1のプロトコルであるため、イーサネット上では利用できない。
というのもPPPはシリアルインターフェースなどで利用され、1:1が前提となっているので、
ARPなどを行わない。=MACアドレスが必要ない。

余談
シリアル等のインターフェースがデフォルトルートの場合は、デフォルトルートとしてネクストホップアドレスの指定が必要なく、インターフェースで指定すれば良いらしい。

このような理由から、マルチポイントであるイーサネットではイーサネットによるカプセル化が必要。

PPPoEのフレームフォーマット。カプセル化されている。

上の図にあるように、PPPoEを利用するにはPPPをイーサネットでカプセル化するだけでなく、
PPPoEヘッダも必要になる。
PPPoEを確立するためには2つのステップが必要で、
1. Discovery Stage
2. PPP Session Stage

となる。

Discovery Stage
まずはPPPoEクライントとPPPoEサーバ(BAS)でセッションを確立する。
セッションを確立手順は以下のように行われる。

  1. PADI(PPPoE Active Discovery Initiation)
    PPPoEサーバを探索するためのブロードキャスト
  2. PADO(PPPoE Active Discovery Offer)
    クライアントにユニキャスト応答
  3. PADR(PPPoE Active Discovery Request)
    PPPoEセッションの開始要求
  4. PADS(PPPoE Active Discovery Session-confirmation)
    要求を受け入れ、セッションIDを通知。拒否する場合はエラーを返す

PPP Session Stage
次に通常通り、PPPを確立する。
PPPの確立手段は以下の通り。

  1. LCP(Link Control Protocol)
    リンク確立のため、ネゴシエーションを行う。
    Configure-RequestとConfigure-Ackが行われる。
  2. CHAP(Challenge Handshake Authentication Protocol)
    認証フェーズ。PAPもしくはCHAP、認証がない場合はスキップされる。
    セキュアなCHAPが採用される。
  3. NCP(IPCP)
    IPではIPCP、IPXではIPXCPが使われる。
    ここでIPアドレスが払い出されることでIPによる通信ができる。

これでようやくPPPoE接続が完了し、IPによる通信が可能となる。
次はCiscoにコンフィグを入れて試して見る予定。


↓2021/01/05 試しました

PPPoE 基本設定例 端末型払い出し-固定IP【cisco】
構成図 要件 CiscoのIOSで設定端末型払い出し(一つのIPが割り当てられる)IPは固定で指定する認証はPPPoEサーバ側でローカル認証で行う userpasswordIPアドレスRouter-A (PPPoEクライアント)user-a...
タイトルとURLをコピーしました