MACアドレス認証の動作の詳細

MACアドレス認証の処理の流れ

  1. 端末が送信したフレームを本装置(SA)が受信する
  2. 本装置はフレームの送信元MACアドレスをUser/PasswordとしてRADIUSメッセージを生成し、RADIUSサーバへ認証を要求する(Access-Request)
  3. RADIUSサーバは登録されている認証情報を基に許可(Access-Accept)/拒否(Access-Reject)を判断し、本装置に応答する
  4. 本装置はRADIUSサーバからの応答に従って、当該端末(MACアドレス)からの通信をパスまたはブロックする

RADIUSメッセージのアトリビュート

本装置がRADIUSサーバへ送信するリクエストに付与するアトリビュートの値は下表のとおりです。
attribute 書式 ユーザーによる値の設定
User-Name 認証対象の端末のMACアドレス ハイフン区切り形式のMACアドレス 00-53-11-22-33-44 設定不可
User-Password 認証対象の端末のMACアドレス ハイフン区切り形式のMACアドレス 00-53-11-22-33-44 設定不可
Calling-Station-Id 認証対象の端末のMACアドレス ハイフン区切り形式のMACアドレス 00-53-11-22-33-44 設定不可
Called-Station-Id 認証対象のフレームを受信したインタフェースのMACアドレス ハイフン区切り形式のMACアドレス 00-53-11-22-33-44 設定不可
NAS-IP-Address ユーザが設定する値。デフォルトは "127.0.0.1" IPv4アドレス形式の文字列 127.0.0.1 設定可
NAS-Identifier ユーザが設定する値。デフォルトは "127.0.0.1" 1-253文字の文字列 127.0.0.1 設定可

RADIUSサーバの冗長化

冗長化を目的として、RADIUSサーバは4個まで設定できます。複数設定されている場合、あるRADIUSサーバへの認証要求が一定回数(4回)失敗すると、他のRADIUSサーバに切り替えて認証を要求します。

認証要求の失敗とみなす条件は、次の通りです。

  • RADIUSサーバへの要求の送信に失敗した
  • RADIUSサーバからの応答待ち(3秒)がタイムアウトした
  • RADIUSサーバから不正な応答を受信した
    • 共有鍵が一致する、かつ、Access-AcceptまたはAccess-Rejectであるメッセージ以外は不正な応答とみなします。
また、RADIUSサーバを選択する順序は次の通りです。
  • admission-control.mac-address.[].radius.server.[<index>].ipv4.address に設定される<index>の値を基準に昇順で選択する
  • <index>値が最大のRADIUSサーバの次は<index>値が最少のRADIUSサーバを選択する
  • MACアドレス認証機能の有効化時に選択状況をリセットする

認証状態のキャッシュ

RADIUSサーバへの認証要求及び認証結果の状態は、MACアドレスごとに規定された期間キャッシュとして保持し、キャッシュにマッチするフレームは、認証せずパス・ブロックを判断します。
キャッシュの保持数
機能全体で65536個まで
  • キャッシュの保持上限に達しているとき、未知のMACアドレスを送信元とするフレームは破棄します。

認証状態のキャッシュは下表のように分類されます。

キャッシュの種類 通信の可否 状態と該当ステート キャッシュの目的 有効期間(キャッシュのタイマも参照)
認証要求キャッシュ 不可 認証要求の応答を待つ状態
  • authenticating
認証結果を待っている状態のMACアドレスについて、重複して重複要求を送信しない 固定値(60秒)
Acceptキャッシュ 認証により許可された状態
  • re-authenticating
  • maybe-accepted
  • accepted
認証により許可されたMACアドレスを送信元とするフレームについて、認証を要求することなくパスする Acceptキャッシュ有効期間の設定値
  • キャッシュにマッチするフレームを受信すると有効期間が更新される
Rejectキャッシュ 不可 認証により拒否された状態
  • rejected
認証により拒否されたMACアドレスを送信元とするフレームについて、認証を要求することなくブロックする Rejectキャッシュ有効期間の設定値
認証要求失敗キャッシュ 不可 認証要求が失敗した状態
  • unknown
RADIUSサーバや通信経路等の障害の可能性を考慮し一時的に認証要求を抑止する 認証要求失敗時の再試行間隔の設定値

再認証

Acceptキャッシュは、キャッシュにマッチするフレームを受信すると有効期間が更新(延長)されますが、再認証間隔に設定された時間が経過するとRADIUSサーバに認証を要求します。

再認証の応答待ち及び再認証に失敗した状態はAcceptキャッシュの扱いとなります。

認証要求の応答待ち

RADIUSサーバへの認証要求は、同時に30個まで管理し応答を待ちます。応答待ちの認証要求が30個を超える場合は、最も古い要求の応答待ちを取りやめます。
  • Acceptキャッシュが存在するMACアドレスを再認証する認証要求は、この応答待ち上限に含まれません。

フィルタ

認証バイパス対象のMACアドレス及び未知のMACアドレスからのフレームを処理するため、認証により生成されるキャッシュと並び、固定的に設定されるフィルタを保持します。

フィルタは下表のように分類されます。

フィルタの種類 通信の可否 状態と該当ステート フィルタの対象
Staticフィルタ パス 静的に設定された状態
  • static
認証バイパス対象のMACアドレスにマッチする
Listeningフィルタ 認証結果に従う 他のフィルタやキャッシュにマッチしないMACアドレスを待ち受ける状態
  • listening
未知のアドレスにマッチする