らくがきちょう

なんとなく ~所属組織/団体とは無関係であり、個人の見解です~

Cisco ACI での「Enforce EPG VLAN Validation」設定

Cisco ACI では VLAN ID の重複する Domain を同一に Epg に設定するとトラフィック処理上、問題が発生しますが、設定自体は出来てしまいます。 Enforce EPG VLAN Validation という設定を有効化することで、そもそもこういった「問題のある構成」を設定出来なくすることが可能です。 この設定については Validating Overlapping VLANs に説明があります。 今回はこの設定についてメモします。

マニュアル上の説明

Validating Overlapping VLANs には以下のように記載されています。

This global feature prevents association of overlapping VLAN pools on a single EPG. If there are any overlapping pools allocated with any EPG in APIC, then this feature cannot be enabled (an error is displayed if there is an attempt to enable it). If no existing overlapping pools are present, then this feature can be enabled. Once enabled, when an attempt to allocate a domain on an EPG is performed, and the domain contains a VLAN pool with a range overlapping with another domain already associate to the EPG, then the configuration is blocked.

When overlapping VLAN pools exist under an EPG, then the FD VNID allocated for the EPG by each switch is non-deterministic and different switches may allocate different VNIDs. This can cause EPM sync failures between leafs within a vPC domain (causing intermittent connectivity for all endpoints within the EPG). It can also cause bridging loops if user is extending STP between the EPG, as the BPDUs will be dropped between switches due to FD VNID mismatch.

設定箇所

Enforce EPG VLAN Validation 設定は SystemSystem SettingsFabric-Wide Settings にあります。

f:id:sig9:20201010231334p:plain

効果を発揮するシチュエーション

Enforce EPG VLAN Validation 設定が効果を発揮するのは「同一 EPG に Domains 設定を行う場合」です。 例えば以下のように「ひとつの Domain を、ひとつの Epg へ関連付ける場合」です。 別の表現をすると Epg : Domain の関係が「1 : N」になる場合です。

f:id:sig9:20201010231337p:plain

以下のように Epg : Domain の関係が「1 : 1」になる場合、Enforce EPG VLAN Validation 設定は効果を発揮しません。

f:id:sig9:20201010231340p:plain

Enforce EPG VLAN Validation 設定の意味

Enforce EPG VLAN Validation が有効な場合、ひとつの Epg に対して 同じ VLAN ID を持った VLAN Pool (Domain) が関連付けられている場合、設定時にエラーを表示される 為、設定を行うことが出来ません。 具体的には以下のようなケースです。 下記のケースでは Epg1 に対して Domain1 と Domain2 という複数の Domain が関連付けられており、しかも Domain1 と Domain2 で VLAN ID が重複しています

f:id:sig9:20201010233623p:plain

Enforce EPG VLAN Validation が無効な場合、同じ VLAN ID を持った VLAN Pool (Domain) を関連付けても設定が出来、Fault も出ないものの、トラフィック処理上は問題が発生する場合があります。

Enforce EPG VLAN Validation 有効時の挙動

Enforce EPG VLAN Validation が有効な場合、ひとつに EPG に VLAN ID の重複した複数の Domains を設定しようとすると以下のようなエラーが発生し、設定を行うことが出来ません (上述の通り、Enforce EPG VLAN Validation が無効だと設定自体は出来てしまいます)。

f:id:sig9:20201010232700p:plain

参考

Enforce EPG VLAN Validation のヘルプ表示

When checked, the system globally prevents overlapping VLAN pools from being assigned to EPGs.

Note: If overlapping VLAN pools already exist and this parameter is checked, the system returns an error. You must assign VLAN pools that are not overlapping to the EPGs before choosing this feature.

If this parameter is checked and an attempt is made to add an overlapping VLAN pool to an EPG, the system returns an error.