Cisco ASA 和 BVI 接口

网络工程 VLAN 思科 防火墙 irb
2021-07-21 04:31:57

我正在进行设备迁移,设置有点类似于 Mike 的(在透明模式下配置 Cisco ASA:第 2 层 DMZ w/ Vlan 转换),但不同之处在于我需要内部和外部 VLAN 不同。

我们有X 个“外部”VLAN(ID 为 600-699)和X 个“内部”VLAN(ID 为 700 到 799)。我的想法与 Mike 的帖子相同:两个子接口(一个在外面,一个在里面)和一个桥接组。设置看起来不错......在纸上。

我发现的第一件事是您需要有一个 BVI 接口才能使网桥组工作,因此无缘无故地刻录一个(在我们的例子中是公共的)IP。第二件事,你们中的一些人可能知道但我什至不认为我应该检查,ASA 允许最多 8 个 BVI 接口(如果在多模式下,每个上下文 8 个)。

我的问题

我最想知道为什么 ASA 有这样的要求。

  1. 如果我们只想桥接两个接口,为什么需要具有有效 IP 地址的 BVI 接口?文档模糊地说明 BVI 用于管理和源自 ASA(ARP 等)的数据包,但为什么透明 L2 防火墙需要这些?我理解当我们谈论路由器上的 IRB 时的需要,但我真的不知道基本上应该只是丢弃或传递帧的设备。
  2. 限制 8 个桥组的原因是什么?是否有任何技术原因,或者这只是因为如果您想做这样的事情,您需要购买更多的上下文许可证。
  3. 当然,您对这个问题有什么不同的解决方案吗?

我知道他们的想法可能是为每个 VLAN(或上下文和网桥组的混合)设置不同的上下文。我关心的是管理,例如您可以在上下文之间共享对象吗?我们在“外部”有很多网络设备和服务器,并且无法为每个上下文为它们创建对象。

1个回答
  1. 在透明模式下,ASA 执行某些第 2 层验证。它验证的一件事是飞过的数据包的 MAC 地址和 IP 地址正确关联。也就是说,ASA 需要相信 MAC 和 IP 属于一起(就像一个 ARP 表),以便它传递一个数据包,其中所述 MAC 和 IP 被发现在一起。如果防火墙认为数据包对给定 IP 地址使用了错误的 MAC 地址,则会丢弃该数据包。如果 ASA 不知道给定 IP 地址的正确 MAC,它将触发 ARP 请求以进行查找。它是如何做到的?通过使用您分配的 BVI 地址。虽然软件开发人员可以编写代码来简单地不触发 ARP,但出于安全原因,此功能非常重要(它是防火墙,你知道!) 并使事情正常工作。因此,我认为软件开发人员只是简单地决定,而不是编写一堆逻辑来在不同的场景中做不同的事情,他们只是决定您必须在防火墙发挥作用之前配置 BVI IP。这使得软件代码更容易开发和维护。
  2. 由于单个网桥组松散地等同于单个防火墙,我只是猜测货币收入可能与它有关。如果他们允许您创建任意数量的防火墙,那么您可能不需要购买尽可能多的防火墙。然而,这里可能还有软件开发的一个方面,即桥组编号如何保存在内存中,以及连接表如何与桥组编号相关,等等。他们允许的桥组数量越多您创建,那么当所有这些连接都存储在 RAM 中且桥组编号占用更多位时,它将占用更多 RAM。
  3. 不,我不知道有任何其他解决方案可以将 100 个内部 vlan 独立映射到 100 个外部 vlan,并对所有 100 对具有第 3 层过滤能力。
  4. 不,配置不在上下文之间共享。因此,任何object, object-group,access-list配置都受限于配置它们的设备上下文。