GBP処理
GBP処理には、タグ割り当て、パケット分類、ポリシー適用が含まれます。
タグの割り当て
GBPタグは、CLIを使用して静的に割り当てるか、RADIUS認証を使用して動的に割り当てます。
タグ割り当てとは、ユーザーとそのグループ間のマッピングを設定し、このマッピングをMACアドレステーブルと内部データ構造にプログラミングすることを指します。グループメンバーシップ自体は設定しないことに注意してください。同じタグ割り当てを持つ異なるユーザーは、暗黙的に同じグループに属します。
タグ割り当ては、CLIを介して静的に設定することも、RADIUS認証を介して動的に設定することもできます。RADIUS 認証によるタグ割り当ては、最大の柔軟性が得られるため、推奨されるアプローチです。
-
CLIを使用してタグ割り当てを静的に設定する場合、ユーザーとGBPタグの間、より正確には、そのユーザーのプロキシ(MACアドレスやIPアドレスなど)とGBPタグ間のマッピングが作成されます。特にユーザー数が多い場合に、このアプローチの手間を軽減するために、インターフェイスから個々のMACアドレスまで、さまざまなレベルでタグ割り当てを柔軟に設定できます。例えば、同じインターフェイスに接続しているすべてのユーザーに同じタグを割り当てたい場合、そのインターフェイスのタグが直接接続されているすべてのユーザーに適用されるように設定します。一方、特定のユーザーに特定のタグを割り当てたい場合は、MACまたはIPアドレスに基づいてタグの割り当てを設定します。
静的 CLI 構成の欠点は、ユーザーに関する先験的な知識 (ユーザーの接続場所、MAC または IP アドレスなど) が必要になることです。また、ユーザーが将来場所やデバイスを変更した場合に備えて、このマッピングを再設定する必要があります。
例えば、John という名前のユーザーに GBP タグ 10 を設定し、そのユーザーのプロキシとしてその MACアドレスを使用したいとします。この場合、GBPタグ10にマッピングする前に、JohnのMACアドレスを知る必要があります。このマッピングを設定すると、GBP対応スイッチは、データプレーン処理用のMACアドレステーブルと内部データ構造にそれをプログラムできます。ジョンがデバイスを別のMACアドレスに変更した場合、このマッピングを手動で再設定する必要があります。
使い慣れたファイアウォールCLIステートメントを活用してタグ割り当てを設定します。具体的には、特定の基準(例えば、MACアドレスが一致する)が満たされた場合に特定のGBPタグを設定するファイアウォールフィルターを作成します。通常のファイアウォールフィルターとタグ割り当てファイアウォールフィルターを区別するために、マイクロセグメンテーションに特化した新しいタイプのフィルターを導入します。
-
RADIUS 認証を使用してタグ割り当てを動的に設定する場合、ユーザーのネットワーク設定に関する事前の知識は必要ありません。ユーザーを認証する際に、目的のGBPタグを提供するようにRADIUSを設定するだけです。
上記の例では、ジョンがRADIUSサーバーで認証を行うと、GBPタグ10が提供されます。ジョンのMACアドレスを特定する必要はまったくありません。GBP対応スイッチは認証として機能し、ジョンのMACアドレスと提供されたGBPタグの両方を認証交換の一部として認識します。したがって、スイッチは、CLIの介入を必要とせずに、このマッピングをMACアドレステーブルと内部データ構造に直接プログラムできます。ジョンがデバイスを変更した場合、ジョンはRADIUSサーバーで再認証を行い、GBP対応スイッチは、新しい関連付けでMACアドレステーブルと内部データ構造を自動的に再プログラムします。
Mist APに接続する際の無線ユーザーでも、RADIUSを使用したタグ割り当てがサポートされています。この場合、Mist APが認証として機能し、ユーザーのMACアドレスとGBPタグ間のマッピングを認識します。この情報を利用して、Mist APは、独自のメッセージングを使用して、アップストリームのGBP対応スイッチにこのマッピングを通知します。この通知を受信すると、GBP対応スイッチは、新しいマッピングでMACアドレステーブルと内部データ構造をプログラムします。
RADIUSを使用して、直接接続された有線ユーザーに対してタグ割り当てを動的に設定する場合、GBP対応スイッチは、RADIUSの設定方法に応じてMACまたはインターフェイスベースの割り当てを作成します。
RADIUSを使用して、Mist APに接続された無線ユーザーのタグ割り当てを動的に設定すると、GBP対応スイッチがMACベースの割り当てを作成します。
CLIを使用してタグ割り当てを静的に設定する場合、要件に合わせてさまざまなタイプの割り当てを設定できます。これにより、状況によっては必要な設定の量が減る可能性があります。
CLI を使用したタグの割り当て
CLIを使用してGBPタグを割り当てるには、マイクロセグメンテーションフィルターと呼ばれる特殊なタイプのファイアウォールフィルターを使用します。通常のファイアウォールフィルターと同様に、一致条件と後続のアクションを指定します。
set firewall family any filter <filter-name> micro-segmentation set firewall family any filter <filter-name> term <term-name> from <match-condition> set firewall family any filter <filter-name> term <term-name> then gbp-tag <tag>
マイクロセグメンテーションフィルターでは、サポートされている一致条件を 表1 に示し、サポートされている唯一のアクションはGBPタグの割り当てです。
| 一致条件の | 説明 |
|---|---|
|
|
IPv4/IPv6アドレス/プレフィックスリストに一致します。この一致は、接続されたクライアントからアクセス リンクに到着するパケットの送信元 IP アドレスに適用されます。
注:
Junos OS リリース 24.4R1 以降、IP アドレスの用語を用語順で評価するか、最長プレフィックス一致で評価するかを指定できます。デフォルトでは、IPアドレス用語は、Junos OSリリース24.4R1以降の最長プレフィックスマッチによって評価されます。Junos OSリリース24.4R1より前のリリースでは、IPアドレスの用語は用語順でのみ評価されます。最 長プレフィックス一致と厳密なファイアウォール条件順序を参照してください。 |
|
|
一致する MACアドレス。この一致は、接続されたクライアントからアクセスリンクに到着するパケットの送信元MACアドレスに適用されます。 |
|
|
インターフェイス名に一致します。
注:
Junos OSリリース23.4R1以降では、1つのファイアウォールフィルター条件内で複数の set firewall family any filter test term t1 from interface ge-0/0/0 set firewall family any filter test term t1 from interface ge-0/0/1 set firewall family any filter test term t1 from interface ge-0/0/2
注:
Junos OSリリース23.4R1以降では、サポートされているEX4400、EX4650、およびQFX5120スイッチでサービスプロバイダスタイル設定を使用する場合、単一のファイアウォールフィルター条件で set firewall family any filter f1 term t1 from interface ge-0/0/0.1 set firewall family any filter f1 term t1 from vlan-id 2000 VLAN 2000は、サービスプロバイダスタイルの設定を使用して作成されたVLANです。これは、エンタープライズスタイルの設定を使用している場合、サポートされていません。 サービスプロバイダスタイルおよびエンタープライズスタイルの設定の詳細については、 フレキシブルイーサネットサービスのカプセル化を参照してください。 |
|
|
VLAN IDを一致させます。
注:
EX4100スイッチではサポートされていません
注:
Junos OSリリース23.4R1以降では、 <vlan_list> および <vlan_range> オプションがサポートされています。例えば: set firewall family any filter test term t1 from vlan-id 2000-2100 set firewall family any filter test term t1 from vlan-id [3000 3010 3020]
注:
Junos OSリリース23.4R1以降では、サポートされているEX4400、EX4650、およびQFX5120スイッチでサービスプロバイダスタイル設定を使用する場合、単一のファイアウォールフィルター条件で サービスプロバイダスタイルおよびエンタープライズスタイルの設定の詳細については、 フレキシブルイーサネットサービスのカプセル化を参照してください。 |
ポリシーを一貫して適用するために、どこでも(ingressとegressの両方で)同じGBPタグ割り当てを設定することをお勧めします。
MACアドレスでのマッチングの例
以下に、MACアドレスを使用したGBPタグ割り当ての例を示します。
set firewall family any filter f1 micro-segmentation set firewall family any filter f1 term tag100 from mac-address 00:00:5E:00:53:10 set firewall family any filter f1 term tag100 then gbp-tag 100 set firewall family any filter f1 term tag200 from mac-address 00:00:5E:00:53:20 set firewall family any filter f1 term tag200 then gbp-tag 200 set firewall family any filter f1 term tag300 from mac-address 00:00:5E:00:53:30 set firewall family any filter f1 term tag300 then gbp-tag 300
上記の例のイングレスでは、MACアドレス 00:00:5E:00:53:10 からのパケットにはタグ100、MACアドレス 00:00:5E:00:53:20 からのパケットにはタグ200、MACアドレス 00:00:5E:00:53:30 からのパケットにはタグ300が割り当てられています。
IPアドレスでの照合例
以下に、IP アドレスを使用した GBP タグ割り当ての例を示します。
set firewall family any filter f2 micro-segmentation set firewall family any filter f2 term t1 from ip-version ipv4 172.16.1.0/24 set firewall family any filter f2 term t1 then gbp-tag 400
マイクロセグメンテーションフィルターは、IPv4とIPv6の両方を同じフィルターの一部として一緒に持つことはできません。
VLANとインターフェイスでのマッチングの例
VLAN IDでの照合例を次に示します(EX4100スイッチではサポートされていません)。
set firewall family any filter f1 micro-segmentation set firewall family any filter f1 term t1 from vlan-id 100 set firewall family any filter f1 term t1 then gbp-tag 1
Junos OSリリース23.4R1以降:
-
サポートされているプラットフォームのEX4400、EX4650、QFX5120スイッチは、以下をサポートします。
-
GBPフィルターのVLANリストと範囲
-
GBPフィルター内の1つの条件内の複数のVLANエントリー
-
GBPフィルターの単一条件内の複数のインターフェイスエントリー
-
サービスプロバイダスタイル設定を使用する場合のGBPフィルター内の1つの条件内のインターフェイスとVLANの組み合わせ。サービスプロバイダスタイルおよびエンタープライズスタイルの設定の詳細については、 フレキシブルイーサネットサービスのカプセル化を参照してください。
-
-
サポートされているプラットフォームのEX4100スイッチは、GBPフィルターの1つの条件で複数のインターフェイスエントリーをサポートします。
VLAN範囲(EX4100スイッチではサポートされていません)での照合例を次に示します。
set firewall family any filter f1 micro-segmentation set firewall family any filter f1 term t1 from vlan-id [10-30] set firewall family any filter f1 term t1 then gbp-tag 100
インターフェイスでのマッチングの例を次に示します。
set firewall family any filter f2 micro-segmentation set firewall family any filter f2 term t1 from interface xe-0/0/1 set firewall family any filter f2 term t1 from interface xe-0/0/2 set firewall family any filter f2 term t1 from interface xe-0/0/3 set firewall family any filter f2 term t1 from interface xe-0/0/4 set firewall family any filter f2 term t1 then gbp-tag 200
RADIUS を使用したタグの割り当て
認証中にユーザーにGBPタグを割り当てるように、RADIUSサーバーを設定できます。RADIUSサーバーは、アクセス制御やVLANの割り当てなどの機能のためにキャンパス環境で一般的に使用されています。
RADIUS を使用する場合は、MAC およびインターフェイスベースの GBP タグ割り当てのみがサポートされます。
-
シングルセキュアまたはマルチサプリカントモードでRADIUS認証を設定した場合、GBPタグはMACベースになります。
-
シングル サプリカント モードで RADIUS 認証を設定した場合、GBP タグはインターフェイスベースになります。
認証中にGBPタグを配布できるように、AAAサービスフレームワークでサポートされているVSA(ベンダー固有属性)の使用を活用しています。これらのVSAは、標準のRADIUSリクエスト応答メッセージの一部として伝送され、GBPタグなどの実装固有の情報を処理するための組み込み拡張機能を提供します。RADIUSサーバー上の正確な構文は、認証スキームがMACベースかEAPベースのかによって異なります。
MAC ベースのクライアントの場合、設定は次のようになります。
001094001199 Cleartext-Password := "001094001199" Juniper-Switching-Filter = "apply action gbp-tag 100"
EAPベースのクライアントの場合、認証時にGBPタグがRADIUSサーバーからプッシュされます。設定は次のようになります。
PermEmp01 Auth-Type = EAP, Cleartext-Password := "gbp" Juniper-Switching-Filter = "apply action gbp-tag 100"
Junos OSリリース23.4R1以降、既存の Juniper-Switching-Filterに加えて、EX4100、EX4400、EX4650、QFX5120スイッチで Juniper-Group-Based-Policy-Id と呼ばれる新しいVSAをサポートします。
同じクライアントに対して、ジュニパーグループベースポリシーID VSAとジュニパースイッチングフィルターVSAの両方を一緒に使用しないでください。
両方のVSAが存在し、異なるGBPタグ値が含まれている場合、クライアントは認証されません。
GBPタグは、次のいずれかのVSAを介して、RADIUSから動的に割り当てることができます。
-
Juniper-Switching-FilterGBPフィルターおよびその他のフィルターの一致およびアクション条件を伝送します。 -
Juniper-Group-Based-Policy-Idは、GBPタグのみを伝送します(EX4100、EX4400、EX4650、QFX5120スイッチでのみ使用可能)。
MACおよびインターフェイスベースのGBPタグフィルター用の Juniper-Group-Based-Policy-Id VSAは次のようになります。
PermEmp01 Auth-Type = EAP, Cleartext-Password := "gbp"
Juniper-Group-Based-Policy-Id = “100”
設定されたGBPタグは、RADIUSサーバーからのVSA(ベンダー固有属性)で指定されたGBPタグの範囲(1〜65535)のゼロ以外の正の値です。
Junos OSリリース23.4R1以降以降、GBP機能のサポートは、EX4100、EX4400、EX4650、QFX5120スイッチの以下のdot1x設定ステートメントにも追加されます。
| CLI |
説明 |
|---|---|
set protocols dot1x authenticator interface [interface-names] server-fail gbp-tag gbp-tag |
サーバーにアクセスできない場合にインターフェイスに適用するGBPタグを指定します。 このオプションは、 |
set protocols dot1x authenticator interface [interface-names] server-reject-vlan gbp-tag gbp-tag |
RADIUSがクライアント認証を拒否した場合に適用するGBPタグを指定します。
|
|
|
インターフェイスをゲストVLANに移動するときに適用するGBPタグを指定します。
ゲストVLANの詳細については、 802.1X認証を参照してください。 |
show dot1x interface detailまたはshow ethernet-switching tableコマンドを使用して、どのGBPタグがRADIUSから受信されているかを確認できます。
以下に、 show dot1x interface detail コマンドの出力例を示します。
root@access1> show dot1x interface mge-0/0/3 detail
mge-0/0/3.0
Role: Authenticator
Administrative state: Auto
Supplicant mode: Single
Number of retries: 3
Quiet period: 60 seconds
Transmit period: 30 seconds
Mac Radius: Enabled
Mac Radius Restrict: Enabled
Mac Radius Authentication Protocol: PAP
Reauthentication: Enabled
Reauthentication interval: 3600 seconds
Supplicant timeout: 30 seconds
Server timeout: 30 seconds
Maximum EAPOL requests: 2
Guest VLAN member: not configured
Number of connected supplicants: 1
Supplicant: 525400cb93dd, 52:54:00:CB:93:DD
Operational state: Authenticated
Backend Authentication state: Idle
Authentication method: Mac Radius
Authenticated VLAN: vlan1099
Dynamic Filter: apply action gbp-tag 300
Session Reauth interval: 3600 seconds
Reauthentication due in 2595 seconds
Session Accounting Interim Interval: 36000 seconds
Accounting Update due in 34995 seconds
Eapol-Block: Not In Effect
Domain: Data
以下に、 show ethernet-switching table コマンドの出力例を示します。
root@access2> show ethernet-switching table
MAC flags (S - static MAC, D - dynamic MAC, L - locally learned, P - Persistent static
SE - statistics enabled, NM - non configured MAC, R - remote PE MAC, O - ovsdb MAC,
B - Blocked MAC)
Ethernet switching table : 2 entries, 2 learned
Routing instance : default-switch
Vlan MAC MAC GBP Logical SVLBNH/ Active
name address flags tag interface VENH Index source
vlan200 00:10:94:00:00:05 D 100 xe-0/2/2.0
vlan200 00:10:94:00:00:06 DR 100 vtep.32769 21.2.0.1
タグ割り当ての優先度
このセクションでは、あいまいな可能性のある一致条件を作成する場合の動作を明確にします。
CLIとRADIUSの両方を使用した割り当て
通常、タグの割り当ては、CLIまたはRADIUSのいずれかを使用して設定しますが、両方を設定することはできません。両方を使用した場合、割り当てに矛盾がある場合(例えば、CLIがGBPタグ10をユーザーに割り当て、RADIUSがGBPタグ20を同じユーザーに割り当てる場合)、RADIUS割り当てが優先されます。
一致条件の競合
競合する一致条件の例を次に示します。
set firewall family any filter f4 micro-segmentation set firewall family any filter f4 term t1 from ip-version ipv4 address 172.16.0.0/24 set firewall family any filter f4 term t1 then gbp-tag 10 set firewall family any filter f4 term t2 from ip-version ipv4 address 172.16.0.0/24 set firewall family any filter f4 term t2 then gbp-tag 20
上記の例では、t1とt2の両方がIPアドレス172.16.0.0/24で一致しますが、異なるGBPタグを割り当てています。この状況では、最初に一致する項のみが評価されます。2番目以降に一致する用語は無視されます。これは、最長プレフィックス一致のフィルターを設定しているかどうかに関係なく当てはまります。条件t1が有効になり、一致するパケットにはGBPタグ10が割り当てられます。
同時一致
着信パケットが複数の条件に一致すると、 表3 に示す一致優先度が有効になります。
| 優先度 | 一致条件 |
|---|---|
| 1(最高) |
|
| 2 |
|
| 3 |
|
| 4 |
|
| 5 |
|
| 6(最低) |
|
|
注:MAC/IPインタータグを有効にし、着信パケットがMACアドレスとIPアドレスの両方で一致する場合、結果は不確定です。その状況では、IPアドレスの一致が必ずしもMACアドレスの一致よりも優先されるわけではありません。
GBP MAC/IPインタータグを参照してください。
|
|
最長プレフィックス一致と厳密なファイアウォール条件順序
最長プレフィックス一致か、厳密なファイアウォール条件順序かを選択できます。たとえば、重複するIPアドレスを含むマイクロセグメンテーションフィルターを次に示します。
set firewall family any filter f3 micro-segmentation set firewall family any filter f3 term t1 from ip-version ipv4 address 10.0.0.0/22 set firewall family any filter f3 term t1 then gbp-tag 10 set firewall family any filter f3 term t2 from ip-version ipv4 address 10.0.0.0/24 set firewall family any filter f3 term t2 then gbp-tag 20
Junos OS リリース 24.4R1 以前では、例えば、IP アドレス 10.0.0.231 の着信パケットには、受信パケットがフィルターの最初の条件(t1)と一致するため、GBP タグ 10 が割り当てられていました。
ただし、Junos OS リリース 24.4R1 以降では、2 番目の条件(t2)がより具体的な一致を提供するため、同じ受信パケットに GBP タグ 20 が割り当てられます。
ファイアウォールの用語順序に厳密に従う従来の動作を維持したい場合は、フィルターを次のように設定します。
set firewall family any filter f3 no-longest-prefix-match
マイクロセグメンテーションフィルターを初めて作成するときに no-longest-prefix-match パラメーターを設定します。既存のマイクロセグメンテーションフィルターでこのパラメーターを切り替えないでください。
パケット分類
GBPのコンテキストにおけるパケット分類とは、受信パケットのデータプレーン処理中に設定されたGBPタグを取得することを指します。
パケット分類は、イングレススイッチとエグレススイッチの両方で行われます。イングレス時に、スイッチはアクセスリンクからの着信パケットを分類し、送信者(ソース)のGBPタグを取得します。エグレス時に、スイッチはネットワークからの着信パケットを分類して、受信者(宛先)のGBPタグを取得します。
送信元タグと宛先タグを取得すると、ポリシーを適用できます。
ポリシーの適用
GBPタグを使用してマイクロセグメンテーションポリシーを作成します。
GBP 対応スイッチは、割り当てられた GBP タグに対して作成したルールに基づいてポリシーを適用します。GBPポリシーの適用をサポートするために、通常のファイアウォールフィルター機能を拡張して、GBPタグの照合とアクションを含めました。acceptやdenyなどの通常のファイアウォールアクションがサポートされています。
EVPN-VXLANで実行する場合、ポリシーの適用は通常、送信元と宛先の両方のGBPタグを使用してエグレスで行われます。イングレスの適用もサポートされていますが( EVPN-VXLANのイングレスとタグの伝播におけるポリシーの適用を参照)、大規模なネットワークではエグレスの適用を使用することをお勧めします。egressの適用は、デフォルトの動作です。
EVPN-VXLANなしで実行している場合、ポリシーの適用は通常、ネットワークに応じて送信元GBPタグと宛先IPアドレスのいずれか、または送信元と宛先の両方のGBPタグを使用してイングレスで行われます。詳細については、 統合アクセスポリシー を参照してください。
認証にRADIUSを使用する場合、GBPポリシーは802.1Xパケットにも適用されることに注意してください。特定のMACアドレスに対してCLIタグの割り当てを作成し、そのタグのパケットを破棄するポリシーを作成した場合、そのMACアドレスからの認証に対する802.1Xリクエストは破棄されます。エンドユーザーの観点からは、認証がタイムアウトしています。
実装上の違いにより、EX4100シリーズのスイッチの動作は若干異なります。EX4100スイッチファミリーは、802.1X認証以前のポリシーを適用しません。上記のシナリオでは、エンドユーザーは認証されますが、それ以降のすべてのトラフィックはブロックされます。
- GBPタグを使用した適用
- 宛先IPアドレスを使用した適用
- L4フィールドを使用した適用
- 明示的なデフォルト破棄
- EVPN-VXLANのingressおよびタグ伝搬でのポリシー適用
- フィルターベースのフォワーディング
- GBP MAC/IP インタータギング
GBPタグを使用した適用
デフォルトでは、ポリシーの適用はegressで行われます。ingressでポリシーを適用する場合は、「 EVPN-VXLANのingressでのポリシー適用とタグ伝播」を参照してください。
GBPポリシー適用の例を次に示します。
set firewall family any filter gbp-policy term t100-200 from gbp-src-tag 100 set firewall family any filter gbp-policy term t100-200 from gbp-dst-tag 200 set firewall family any filter gbp-policy term t100-200 then accept set firewall family any filter gbp-policy term t100-300 from gbp-src-tag 100 set firewall family any filter gbp-policy term t100-300 from gbp-dst-tag 300 set firewall family any filter gbp-policy term t100-300 then discard
GBP送信元タグ100とGBP宛先タグ200のパケットは、条件 t100-200 に一致し、受け入れられます。GBP送信元タグ100とGBP宛先タグ300のパケットは、条件 t100-300 に一致し、破棄されます。
宛先IPアドレスを使用した適用
Junos OSリリース25.4R1以降、 gbp-pure-l2-profileを使用する際に宛先IPアドレスに基づくポリシーを適用できるようになりました。
純粋なL2導入では、アクセススイッチは通常、レイヤー3ゲートウェイとしてWANルーターに接続します。WAN ルーターは GBP を認識していないため、GBP タグを渡すことができません。そのため、ポリシーは、送信元GBPタグに基づいてのみイングレスアクセススイッチで適用できます。このような状況では、宛先IPアドレスを含めるようにポリシーを拡張することができます。例えば:
set chassis forwarding-options gbp-pure-l2-profile set firewall family any filter gbp-policy term t1 from gbp-src-tag 100 set firewall family any filter gbp-policy term t1 from ip-version ipv4 ip-destination-address 10.1.45.0/24 set firewall family any filter gbp-policy term t1 then accept
このユースケースの詳細については、 GBPピュアL2プロファイルの使用を参照してください。
L4フィールドを使用した適用
Junos OSリリース23.2R1以降、GBPフィルターの一致条件を拡張して、L4一致を含めました(表4.これにより、アプリケーションのトラフィックをより細かく制御できます。
| MACおよびIP GBPタグ付きパケットに対するポリシー適用の一致 | の説明 |
|---|---|
ip-version ipv4 destination-port dst_port |
TCP/UDP宛先ポートに一致します。 |
ip-version ipv4 source-port src_port |
TCP/UDP送信元ポートに一致します。 |
ip-version ipv4 ip-protocol ip-protocol |
IPプロトコルタイプに一致します。 |
ip-version ipv4 is-fragment |
パケットがフラグメントである場合に一致します。 |
ip-version ipv4 fragment-flags flags |
フラグメントフラグに一致します(シンボリック形式または16進形式)。 |
ip-version ipv4 ttl value |
MPLS/IP TTL値に一致します。 |
ip-version ipv4 tcp-flags flags |
TCPフラグに一致します(シンボリックまたは16進形式)-(イングレスのみ)。 |
ip-version ipv4 tcp-initial |
TCP接続の最初のパケットに一致します-(イングレスのみ)。 |
ip-version ipv4 tcp-established |
確立されたTCP接続のパケットに一致します。 |
ip-version ipv6 destination-port dst_port |
TCP/UDP 宛先ポートに一致します。 |
ip-version ipv6 source-port src_port |
TCP/UDP 送信元ポートに一致します。 |
ip-version ipv6 next-header protocol |
次のヘッダープロトコルタイプに一致します。 |
ip-version ipv6 tcp-flags flags |
TCPフラグに一致します(シンボリックまたは16進形式)イングレスのみ。 |
ip-version ipv6 tcp-initial |
TCP接続の最初のパケットに一致します。 |
ip-version ipv6 tcp-established |
確立されたTCP接続のパケットに一致します。 |
|
注:
L4フィルターは、 サポートされているプラットフォームに示されているEX4100、EX4400、EX4650、QFX5120シリーズスイッチでサポートされています。これらの一致条件は、EX92xxスイッチではサポートされていません。 |
|
|
注:
L4フィルターはデフォルトでサポートされていますが、サポートされているGBPスケールを縮小することができます。EX4650、QFX5120-32C、および QFX5120-48Y スイッチで L4 フィルターを無効にするには、次の手順に従います。 この設定(および対応する削除)コマンドを使用すると、パケット転送エンジン(PFE)が再起動します。 |
|
明示的なデフォルト破棄
条件に一致しない場合、デフォルトのアクションはパケットを受け入れることです。Junos OSリリース24.2R1以降、条件に一致しないパケットに対して明示的なデフォルトの破棄アクションを指定できるようになりました。 表5をご覧ください。
| 明示的なデフォルト破棄 |
説明 |
|---|---|
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then accept set firewall family any filter f1 term t2 then discard |
破棄アクションは含まれますが、一致条件は含まれないフィルター条件(例:t2)を作成できます。これは、シーケンスの前の項の条件のいずれにも一致しないパケットのキャッチオールとして有用です。 この明示的なデフォルトの破棄アクションは、ブロードキャスト、マルチキャスト、ホスト発信、または不明なユニキャストパケットには適用されません。これらのタイプのトラフィックは常に受け入れられます。 明示的な破棄アクションを設定しない場合、デフォルトのアクションは以前のリリースの場合と同様にパケットを受け入れることです。 |
|
注:
明示的なデフォルト破棄は、 サポートされているプラットフォームに示されているEX4100、EX4400、EX4650、QFX5120シリーズスイッチでサポートされています。明示的なデフォルト破棄は、EX92xxスイッチまたはMXシリーズルーターではサポートされていません |
|
EVPN-VXLANのingressおよびタグ伝搬でのポリシー適用
Junosリリース22.4R1以降、ingressに近い場所でポリシーの適用を実行できるようになりました。ingressの適用は、egressで破棄されるはずのタグ付きパケットをingressで破棄することで、ネットワーク帯域幅を節約します。イングレス時またはそれに近い位置でのポリシー適用をサポートするため、EVPNタイプ2およびタイプ5ルート内の拡張BGPコミュニティを使用して、MACおよびIP-MACベースのタグをネットワーク全体に伝播します。これらのタイプのルートについては、「 EVPN タイプ 2 およびタイプ 5 ルートと EVPN-VXLAN との共存 」を参照してください。
EVPNルートアドバタイズメントは、新しいホストからパケットを受信したときのMAC-IP学習などによる、EVPNルートのインストール(または変更)によってトリガーされます。この場合、送信元 IP ルートが evpn.0 データベースにインストールされ、EVPN タイプ 2 アドバタイズメント(割り当てられている場合は GBP タグを含む)がすべての eBGP ピアに送信されます。
これらのアドバタイズメントがネットワークを介してリモートエンドポイントに伝播された後、リモートエンドポイントは、リモートingressで受信したパケットに対してGBPファイアウォールフィルターを決定するのに十分な情報を持っています。受信時にパケットを受信すると、リモートエンドポイントは宛先ルートを検索し、EVPNタイプ2アドバタイズメントを通じて以前に受信した宛先GBPタグを取得できます。宛先GBPタグを使用することで、リモートエンドポイントはその後、ingressパケットに対してGBPポリシー適用の決定を下すことができます。
GBPタグはEVPNタイプ2のルートアドバタイズメントを使用して伝送されるため、タグ伝送は必ずMACまたはIPアドレス単位で実行されます。ただし、これはタグの割り当てには関係なく、VLANやインターフェイスなどのサポートされている方法のいずれかであり続けることができます。
例えば、インターフェイスに基づいてタグ割り当てを設定し、新しいホストからのパケットがそのインターフェイスで受信された場合、そのインターフェイスに割り当てられたタグは、受信パケットの送信元MACおよびIPアドレスとともに、タイプ2ルートアドバタイズメントに伝送されます。その後、別のホストからのパケットが同じインターフェイスで受信された場合、同じタグが、この異なるホストの送信元 MAC および IP アドレスとともに、別のタイプ 2 ルート アドバタイズメントに伝送されます。
ボーダーリーフスイッチがGBPタグ付きのEVPNタイプ2アドバタイズメントを受信した場合、スイッチはタイプ2ルートをインストールし、他のデータセンターのボーダーリーフスイッチなどのeBGPピアに、そのGBPタグを持つEVPNタイプ5アドバタイズメントを生成します(DC間トラフィックの場合)。このタイプ 5 ルートには、/32 IP アドレスと GBP タグが含まれています。
このタイプ2からタイプ5へのGBPタグ伝播はサポートされていますが、タイプ5からタイプ2へのGBPタグ伝播はサポートされていません。
マルチホーミングトポロジーの場合、マルチホーミングメンバー間で設定を同一に保ちます。
ingressノードでポリシーの適用を実行するには、以下のステートメントを有効にする必要があります。イングレスの適用が有効または無効になっている場合、パケット転送エンジン(PFE)が再起動します。
set forwarding-options evpn-vxlan gbp ingress-enforcement
EVPNタイプ5アドバタイズメントを使用したIPプレフィックスルートのタグ伝搬
Junos OSリリース24.2R1以降、EVPNタイプ5アドバタイズメントを使用したIPプレフィックスルートのGBPタグ伝搬がサポートされています。このリリース以前は、GBPタグの伝播はデータプレーンでのMAC-IP学習によってのみトリガーされていたため、タグの伝播は/32 IPルートに対してのみ発生していました。
IPプレフィックスルートのサポートにより、例えば、インターフェイスを作成して直接EVPNルート(set routing-instances <instance> protocols evpn ip-prefix-routes advertise direct-nexthop)のアドバタイズメントを有効にした場合に、タグ伝播が可能になりました。そのIPプレフィックスにGBPタグも割り当てた場合、後続のEVPNタイプ5アドバタイズメントにはGBPタグが含まれ、MAC-IP学習が行われる前でもタグが伝播します。
一般に、EVPN タイプ 5 アドバタイズメント内での GBP タグ伝播は、IP プレフィックスにタグを割り当てる GBP フィルターを作成し、その IP プレフィックス ルートが evpn.0 ルーティング データベースにインストールされるたびに発生します。(GBPフィルターは、ルートをインストールする前または後に作成できます。
スイッチがタイプ5アドバタイズメントを生成しても、スイッチが新しいホストを学習した場合(例えば、データプレーンでのMAC-IP学習を通じて)、スイッチはタイプ2アドバタイズも生成します。多くの場合、これらの冗長な/32アドバタイズメントを抑制して、EVPNトラフィックを削減することが望ましい場合があります。そのためには、/32ルートを拒否するBGPポリシーを作成します。
例えば、以下は、IPv4ホストからの/32ルートを拒否するfm_v4_hostという用語を持つT5_EXPORTというポリシーを作成します。
set policy-options policy-statement T5_EXPORT term fm_v4_host from route-filter 0.0.0.0/0 prefix-length-range /32-/32 set policy-options policy-statement T5_EXPORT term fm_v4_host then reject
スイッチがIPプレフィックスルートと関連するGBPタグのEVPNアドバタイズメントを受信し、同じIPプレフィックスルートに異なるタグを割り当てるGBPフィルターを設定している場合、ローカルに設定されたGBPフィルターのGBPタグが優先されます。スイッチは、EVPNルートを再アドバタイズする前に、受信したEVPNアドバタイズメント内のGBPタグをローカルに割り当てられたGBPタグに置き換えます。
IPプレフィックス用のGBPフィルターを作成し、GBPフィルターをルーティングインスタンスに関連付けると、IPプレフィックスタグの伝播が自動的に有効になります。例えば:
set firewall family any filter f1 micro-segmentation set firewall family any filter f1 term tag300 from ip-version ipv4 172.16.1.0/24 set firewall family any filter f1 term tag300 then gbp-tag 300 set routing-instances <routing-instance> forwarding-options evpn-vxlan gbp ingress-src-tag filter f1
ここで、 <routing-instance> は、フィルターを適用するルーティングインスタンスの名前です。
IPプレフィックスルートがGBPタグに関連付けられると、そのIPプレフィックスルートの show route コマンドの出力にGBPタグが表示されます。例えば:
show route match-prefix 5:* extensive
bgp.evpn.0: 6 destinations, 6 routes (6 active, 0 holddown, 0 hidden)
Restart Complete
5:10.255.1.1 (1 entry, 1 announced)
<trimmed>
gbp-tag:0L:53 router-mac:52:54:00:00:92:f0
Import Accepted
Route Label: 9100
Overlay gateway address: 0.0.0.0
ESI 00:00:00:00:00:00:00:00:00:00
Localpref: 100
Router ID: 10.255.1.1
Secondary Tables: VRF-100.evpn.0
Thread: junos-main
Indirect next hops: 1
<trimmed>
show route table VRF-100.inet.0 match-prefix 10.1.1* extensive
VRF-100.inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
Restart Complete
10.1.1.3/32 (1 entry, 1 announced)
TSI:
KRT in-kernel 10.1.1.3/32 -> {indirect(1048574)}
Opaque data client: EVPN-Type5
Opaque data: tlv_type :32820
Type5 gbp_tag 53.
Address: 0xa15f928
Opaque-data reference count: 2
Page 0 idx 0, (group DC2_TORS type External) Type 1 val 0xa32fd40 (adv_entry)
Advertised metrics:
Nexthop: Self
AS path: [65201] 65200 I
Communities: gbp-tag:0L:53
Advertise: 00000001
Path 10.1.1.3
<trimmed>
ルーティングインスタンスとGBPフィルター間のバインディングを確認するには、 show evpn gbp-src-tag filter-bind routing-instance コマンドを使用します。
GBPタグマッピングへのIPプレフィックスルートを確認するには、 show evpn gbp-src-tag ip-prefix inet コマンドを使用します。
この機能には、以下の制限があります。
-
GBPフィルターは1つのルーティングインスタンスにのみ関連付けることができます。同じGBPフィルターを複数のルーティングインスタンスに関連付けることはできません。
-
同じルーティングインスタンスに、同じIPプレフィックス一致条件を持つ2つの異なるGBPフィルターを関連付けることはできません。
-
IPベースのGBPフィルターは、ルーティングインスタンスにのみ関連付けることができます。他のタイプのGBPフィルターを関連付けても効果はありません。
フィルターベースのフォワーディング
フィルターベースフォワーディングとは、トラフィックに割り当てられたGBPタグがフィルターで指定されたGBPタグと一致する場合に、指定されたネクストホップにトラフィックを転送する機能を指します。この機能を使用して、指定されたタグ付きトラフィックと通常のトラフィックに異なるルーティング処理を適用できます。
転送フィルターを作成するには、一致させる送信元タグと宛先タグ、および一致したトラフィックを転送するネクストホップを指定します。
フィルターベースの転送に関するCLIステートメントは、製品によって異なります。
-
サポートされているプラットフォームのEX4xxxシリーズおよびQFXシリーズスイッチでのGBPタグ付きトラフィックのフィルターベースの転送は、Junos OSリリース24.4R1以降でサポートされます。CLIの設定例については、表6を参照してください。
-
サポートされているプラットフォームのEX92xxシリーズスイッチとMXシリーズルーターでのGBPタグ付きトラフィックのフィルターベースの転送は、Junos OSリリース25.2R1以降でサポートされます。表7 CLIの設定例を参照してください。
| フィルターベースのフォワーディング設定例(EX4xxxシリーズおよびQFXシリーズスイッチ) |
説明 |
|---|---|
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip 10.10.1.1 |
デフォルトのルーティングインスタンスを使用して、GBP送信元タグ100と宛先タグ200のトラフィックを10.10.1.1ルートのネクストホップに転送します。 |
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip 10.10.1.0/24 |
デフォルトのルーティングインスタンスを使用して、GBP送信元タグ100と宛先タグ200のトラフィックを10.10.1.0/24ルートのネクストホップに転送します。 |
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip 10.10.1.1 routing-instance VRF-100 |
VRF-100ルーティングインスタンスを使用して、GBP送信元タグ100と宛先タグ200のトラフィックを10.10.1.1ルートのネクストホップに転送します。 |
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip6 2001:db8:4136:e378:8000:63bf:3fff:fdd2 |
デフォルトのルーティングインスタンスを使用して、GBP送信元タグ100と宛先タグ200のトラフィックを2001:db8:4136:e378:8000:63bf:3fff:fdd2ルートのネクストホップに転送します。 |
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip6 2001:db8:4136::/48 |
デフォルトのルーティングインスタンスを使用して、GBP送信元タグ100と宛先タグ200のトラフィックを2001:db8:4136::/48ルートのネクストホップに転送します。 |
set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip6 2001:db8:4136:e378:8000:63bf:3fff:fdd2 routing-instance VRF-100 |
VRF-100ルーティングインスタンスを使用して、GBP送信元タグ100と宛先タグ200のトラフィックを2001:db8:4136:e378:8000:63bf:3fff:fdd2ルートのネクストホップに転送します。 |
| 制限事項:
|
|
| フィルターベースの転送設定例(EX92xxシリーズスイッチとMXシリーズルーター) |
説明 |
|---|---|
set firewall family any filter f1 term t1 from ip-version ipv4 set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip 10.10.1.1/32 |
GBP送信元タグ100と宛先タグ200のトラフィックを10.10.1.1/32ルートのネクストホップに転送します。 |
set firewall family any filter f1 term t1 from ip-version ipv6 set firewall family any filter f1 term t1 from gbp-src-tag 100 set firewall family any filter f1 term t1 from gbp-dst-tag 200 set firewall family any filter f1 term t1 then next-ip6 2001:db8:4136:e378:8000:63bf:3fff:fdd2/128 |
GBP送信元タグ100と宛先タグ200のトラフィックを2001:db8:4136:e378:8000:63bf:3fff:fdd2/128ルートのネクストホップに転送します。 |
| 制限事項:
|
|
EX92xxシリーズスイッチとMXシリーズルーターの場合、フィルターでルーティングテーブルを直接指定しないため、転送フィルターを明示的にルーティングテーブルにアタッチする必要があります。CLIの設定例については 、表8 を参照してください。
| フォワーディングフィルターの取り付け 設定例(EX92xxシリーズスイッチとMXシリーズルーター) | 説明 |
|---|---|
set routing-instances VRF-100 forwarding-options family inet filter output f1 |
VRF-100 IPv4 ルーティングテーブルでルートを検索した後に、f1転送フィルターを適用します。 |
set routing-instances VRF-100 forwarding-options family inet6 filter output f1 |
VRF-100 IPv6 ルーティングテーブルでルートを検索した後、f1 転送フィルターを適用します。 |
|
注:転送フィルターは、タイプ
vrfまたは
virtual-routerのルーティングインスタンスにのみアタッチできます。転送フィルターを他のルーティングインスタンスや他の接続ポイントにアタッチすることはできません。
|
|
表9は 、ご使用のプラットフォームにおけるフィルターベースのフォワーディングプラットフォーム固有の動作をまとめたものです。
| プラットフォーム |
違い |
|---|---|
| EX4xxxシリーズ |
|
| EX92xxシリーズ |
|
| MXシリーズ |
|
| QFXシリーズ |
|
GBP MAC/IP インタータギング
Junos OSリリース24.2R1以前は、MACベースのGBPフィルターはスイッチされたトラフィックにのみ適用され、IPベースのGBPフィルターはルーティングされたトラフィックにのみ適用されていました。
Junos OSリリース24.2R1以降、MACベースのGBPフィルターはルーティングされたトラフィックにも適用でき、IPベースのGBPフィルターはスイッチドトラフィックにも適用できます。これはMAC/IPインタータグと呼ばれ、 サポートされているプラットフォームに示されている特定のEX4100、EX4400、EX4650、およびQFX5120シリーズスイッチで有効にできます。
Junos OSリリース25.4R1以降、MAC/IPインタータグがデフォルトで有効になります。明示的に設定する必要はありません。
有効にすると、スイッチは次のように対応するエントリーを自動的に追加します。
-
MAC ベースの GBP フィルターを作成した場合、その MACアドレスに一致する最初のパケットが到着すると、スイッチは対応する IP ベースの GBP 割り当てを自動的に作成します。この割り当ては、元のMACベースのGBPフィルターと同じタグを適用しますが、MACアドレスではなく送信元IPアドレスに一致します。
-
IPベースGBPフィルターを作成した場合、そのIPアドレスに一致する最初のパケットが到着すると、スイッチは対応するMACベースGBP割り当てを自動的に作成します。この割り当ては、元のIPベースのGBPフィルターと同じタグを適用しますが、IPアドレスではなく送信元MACアドレスで一致します。
対応するエントリーを作成することで、その後のフローがスイッチングされるかルーティングされるかに関係なく、目的のGBPタグが割り当てられます。
-
フィルター1:GBPタグ100をMACアドレス52:54:00:00:00:11のトラフィックに割り当てます
-
フィルター2:IPアドレス172.16.0.11のトラフィックにGBPタグ200を割り当てます
次に、
MAC/IPインタータグを有効にするには:
set forwarding-options evpn-vxlan gbp mac-ip-inter-tagging
mac-ip-inter-taggingオプションを設定または削除すると、パケット転送エンジン(PFE)が自動的に再起動します。
オンライン シャーシでmac-ip-inter-taggingオプションを設定または削除した場合は、オンライン シャーシのすべてのメンバーを再起動する必要があります。 request system reboot all-members
以下は、MAC/IPインタータグを有効にすると、MACテーブルとIPテーブルの両方に同じGBPタグ100が表示されることです。
show ethernet-switching table
MAC flags (S - static MAC, D - dynamic MAC, L - locally learned, P - Persistent static, C - Control MAC
SE - statistics enabled, NM - non configured MAC, R - remote PE MAC, O - ovsdb MAC,
B - Blocked MAC)
Ethernet switching table : 2 entries, 2 learned
Routing instance : default-switch
Vlan MAC MAC GBP Logical SVLBNH/ Active
name address flags tag interface VENH Index source
vlan100 52:54:00:22:22:22 D 100 xe-0/0/8.0
vlan200 52:54:00:44:44:44 D xe-0/0/9.0
show ethernet-switching mac-ip-table
MAC IP flags (S - Static, D - Dynamic, L - Local , R - Remote, Lp - Local Proxy,
Rp - Remote Proxy, K - Kernel, RT - Dest Route, (N)AD - (Not) Advt to remote,
RE - Re-ARP/ND, RO - Router, OV - Override, Ur - Unresolved, B - Blocked,
RTS - Dest Route Skipped, RGw - Remote Gateway, GBP - Group Based Policy,
RTF - Dest Route Forced, SC - Static Config, P - Probe, NLC - No Local Config,
LD - Local Down)
Routing instance : default-switch
Bridging domain : vlan100
IP MAC Flags GBP Logical Active
address address Tag Interface source
10.100.100.100 52:54:00:22:22:22 DL,K,RT,AD 100 xe-0/0/8.0
10.100.100.101 52:54:00:63:0e:40 S,K irb.100
2001:db8::9300:6463:e40 52:54:00:63:0e:40 S,K irb.100