PPPoE
PPPoE(Point-to-Point Protocol over Ethernet)
- ISPなどが接続時に認証をかけるために利用
- C/Sモデル
接続の流れ
- PPPoEクライアントがPPPoEサーバを探すためにブロードキャスト送信(PPPoE Active Discovery Initiation)
- サーバがクライアントに応答(PPPoE Active Discovery Offer)
- 特定のサーバに対してセッション開始を要求(PPPoE Active Discovery Request)
- サーバがクライアントにセッションIDを通知(PPPoE Active Discovery Session-confirmation)
- (以上がPPPoEセッション)
- (以下はPPPセッション)
- LCP(Link Control Protocol)ネゴシエーション
- 互いの通信条件などをネゴ
- 認証
- PAP(Password Authentication Protocol):単純なパスワード認証.平文でやりとり.リンク確立時に1度だけ認証する
- CHAP(Challenge-Handshake Authentication Protocol):MD5を用いたチャレンジレスポンスで定期的に認証する
- IPCP(IP Control Protocol)ネゴシエーション
- IPヘッダの圧縮やクライアントIPアドレスを割り当て
PPPoEパケット
- Ethernetヘッダ+PPPoEヘッダ+payloadの形
- PPPoEヘッダ
1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | VER | TYPE | CODE | SESSION_ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LENGTH | payload ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ※payloadはPPPoEセッションとPPPセッション時(PPPヘッダやIPデータが入る)で異なる