動的変数の概要
変数は、動的プロファイルの動的コンポーネントを構成します。動的プロファイルの変数は、動的に取得または動的に生成された値のプレースホルダーとして使用し、動的プロファイルが加入者インターフェイスの設定と加入者のプロビジョニングに使用するものです。
動的変数のしくみ
動的変数は、定義して動的プロファイルに配置するデータプレースホルダーです。インターフェイスで特定のイベントが発生すると(たとえば、DHCP クライアントがインターフェイスにアクセスする)、動的プロファイルは、3 つのソース(着信クライアント データ パケットを受信するインターフェイス、外部で設定されたサーバー(RADIUS など)、またはユーザー設定可能な各変数に関連付けられた値)のいずれかから、これらのプレースホルダーに入力するデータを取得します。
便宜上、Junos OS には、動的プロファイル内で使用できる定義済み変数が用意されています。これらの変数のほとんどは、着信クライアントデータパケットを受信するインターフェイスから直接取得されるインターフェイス固有のデータ(インターフェイス名、インターフェイスユニット値など)に関連しています。クライアントがインターフェイスにアクセスすると、ルーター ソフトウェアは必要なインターフェイス データを抽出し、このデータを動的プロファイルに伝播し、動的プロファイルを使用してアクセスするクライアントのインターフェイスを設定します。
ユーザー定義変数は、 [dynamic-profiles profile-name variables]
階層レベルで個々の動的プロファイルに対して定義できます。この階層レベルでは、動的プロファイルの本文に表示される変数値(例: $junos-igmp-version
)と、外部設定サーバ(RADIUS サーバで管理される RADIUS VSA など)で管理されている、または variables
スタンザの値として定義されているコール値に関連付けられたデータとの間に関連付けを作成します。インターフェイスでイベントが発生してインターフェイスの動的プロファイルのインスタンス化がトリガーされると、Junos OSは加入者の認証プロセス中に外部サーバーから(例えば、RADIUS認証および認可VSAから)各変数の値を取得します。実行時には、変数はこれらの実際の値に置き換えられ、加入者インターフェイスの設定に使用されます。
定義済み変数のデフォルト値
オプションで、多くの定義済み変数のデフォルト値を設定できます。Junos OS では、次の場合にデフォルト値を使用します。
外部RADIUSサーバーが利用できない場合
RADIUSサーバーから返されたVSAに、定義済みの変数の値が含まれていない場合
パラメーター化されたフィルターの一意の識別子 (UID)
パラメーター化されたフィルターは、サービス用に作成された動的プロファイルで一意の識別子 (UID) を使用します。生成された UID により、同じ変数名を持つフィルターの個別のパラメーター値を識別して設定できます。さらに、UIDを割り当てると、ルーターのパフォーマンスが向上します。
サービス プロファイルでは、[dynamic-profiles profile-name variables variable-name]
階層レベルで uid
ステートメントを含めることで、ユーザー定義変数の UID の生成を要求することができます。次に、フィルターで変数名を参照します。
同じパラメーターと基準タイプの複数の変数を含む動的プロファイルで特定のフィルターを選択できるようにするには、変数が UID を参照することを示す必要があります。設定するには、[dynamic-profiles profile-name variables variable-name]
階層レベルでuid-reference
ステートメントを含めます。たとえば、変数 $in-filter
が RADIUS から「filter1」の値を受け取る場合、$filter という名前のフィルター定義が使用されます。