Radius

プロバイダへのPPPoE接続(CHAP認証+Radiusプロキシ)の例

プロバイダの 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クライアントへ払い出します。

コメント

タイトルとURLをコピーしました