プロバイダの PPPoE 接続の例
プロバイダで利用するPPPoE接続をモデルとした例を考えます。回線業者の中でも、NTT東日本・西日本はISP事業ができないため、 他のプロバイダ業者の認証情報を取り次ぐ(Proxyする)構成を採っています。その際、回線業者はプロバイダ業者が管理している顧客のパスワード情報を知ってはいけないですし、知らずに対応できる必要があります。
- PC(PPPoEクライアント)が、回線業者ルータ(PPPoEサーバ)へPPPoE接続を試みます。
- 回線業者ルータはCHAP認証を行うため、「チャレンジ」を送信します。
- PC(PPPoEクライアント)は送られてきた「チャレンジ」と以下アカウント情報を使って認証情報を回線業者ルータへ投げます。
[ID = testuser@isp1.co.jp , PW = secret-password]
- 回線業者ルータはAccess-Requestを使って回線業者Radiusサーバへこの認証情報と「チャレンジ」を投げます。
- 回線業者RadiusサーバはIDの@以降を見て、「isp1.co.jp」のRadiusサーバへ向けて情報を転送します。
その際、Radius属性「Proxy State(属性番号33)」の属性値として16ByteをRandomで生成し、どのRequestに対する応答かを識別できるようにします。
- 「isp1.co.jp」のRadiusサーバは送られてきた認証情報が正しいものかどうかを確認し、結果を回線業者Radiusサーバへ返答します。
ここでは正しい情報だったと仮定します。その際、例えば固定IP1のサービスであれば、Radius属性「Framed-IP-Address(属性番号8)」の属性値として 払いだすGlobal IPアドレス、Radius属性「Framed-IP-Netmask(属性番号9)」の属性値として/32という情報を加えることで、PPPoEサーバはIPCPとしてこのIPアドレスをPC(PPPoEクライアント)へ払い出すことができます。
- 回線業者Radiusサーバは、「isp1.co.jp」Radiusサーバから来たAccess-Acceptの結果を回線業者ルータへ伝えます。
その際、Proxy-Stateの情報を見て、どのRequestに対する応答かを確認し、この属性を削除した後に適した回線業者ルータへ応答します。
- 回線業者ルータはRadiusの結果を受けて、PPPoE接続の許可をします。
その際、PPPのIPCP等により、IPアドレスやサブネットマスクをPPPoEクライアントへ払い出します。
コメント