らくがきちょう

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

Cisco ACI における ESG 設定の基本

Cisco ACI 5.0 から ESG (EndpOint Security Groups) 機能がサポートされました。 従来の EPG では「異なる BD を跨った EPG」を設定することは出来ませんでした。 しかし、ESG を利用すると BD は無関係に、EPG を自由にグルーピングすることが出来るようになりました。

f:id:sig9:20200925234630p:plain

ESG は IP Secletor でしか設定出来ない

ESG を設定する場合、大前提として従来通り、BD / EPG が正しく設定されている必要があります。 その上で ESG は (uSeg 設定と似ていますが)「条件」を設定することで、「どの EndPoint を・どの ESG に所属させるか?」を定義します。 但し、現時点の最新バージョンである 5.0(2h) で指定可能な条件は以下のみ、です。

  • IP アドレス

今後は「VLAN ID」や「ポート番号」での分類が可能になるようですが、少なくても現状では上述の通り、「IP アドレスでしかグルーピング出来ない」という制限があります。

ESG の設定

ACI 5.0 系から設定メニューが拡張されており、ESG は TenantApplication ProfileEndpoint Security Groups から設定可能です。

f:id:sig9:20200925235820p:plain

ESG の設定画面は以下の通りです。 従来の EPG 同様、Preferred Group や Inheritance、Intra EPG の設定を行うことも可能です。 また、設定画面を見て分かる通り、現状で条件 (Selector) として指定可能なのは IP Selector のみ、です。

f:id:sig9:20200926000011p:plain

ESG 設定時の Policy CAM

複数の EPG をグルーピングしていたとしても、作成される ESG は「ひとつ」です。 従って、先に掲載した構成図 (EsgY が 2 つの EPG を含む) としても消費される Policy CAM はシンプルで、下記のようになります。

leaf# show zoning-rule scope 2326533
+---------+--------+--------+----------+----------------+---------+---------+-------------------+----------+----------------------+
| Rule ID | SrcEPG | DstEPG | FilterID |      Dir       |  operSt |  Scope  |        Name       |  Action  |       Priority       |
+---------+--------+--------+----------+----------------+---------+---------+-------------------+----------+----------------------+
|   4157  |   0    |   0    | implicit |    uni-dir     | enabled | 2326533 |                   | deny,log |   any_any_any(21)    |
|   4142  |   0    |   0    | implarp  |    uni-dir     | enabled | 2326533 |                   |  permit  |  any_any_filter(17)  |
|   4130  |   0    |   15   | implicit |    uni-dir     | enabled | 2326533 |                   | deny,log | any_vrf_any_deny(22) |
|   4138  |   0    | 49154  | implicit |    uni-dir     | enabled | 2326533 |                   |  permit  |   any_dest_any(16)   |
|   4140  |  5493  | 10949  | default  |     bi-dir     | enabled | 2326533 | Tenant1:Contract1 |  permit  |    src_dst_any(9)    |
|   4158  | 10949  |  5493  | default  | uni-dir-ignore | enabled | 2326533 | Tenant1:Contract1 |  permit  |    src_dst_any(9)    |
|   4128  |   0    | 32770  | implicit |    uni-dir     | enabled | 2326533 |                   |  permit  |   any_dest_any(16)   |
+---------+--------+--------+----------+----------------+---------+---------+-------------------+----------+----------------------+

VLAN 重複への配慮

上述の通り、ESG は「BD と無関係に、EPG をグルーピング出来る」という概念です。 ですが、「1BD : 複数 EPG」の場合は (ESG と無関係に) EPG 間で VLAN 重複が発生しないか、といったケアは必要だと思われます。 「VLAN 重複への配慮」は ESG に限った話ではありませんが、特に「1BD を複数 EPG に分割する」際などに VLAN 重複が発生しないか、発生するのであれば設定なり、設計で回避するのか、といった配慮が必要かも知れません。