双思科路由器状态防火墙

双思科路由器状态防火墙

在我的公司,我们有一个运行 BGP 的 Cisco 3925sec/k9 路由器,与 2 个 ISP 建立连接。现在我们想购买一个相同型号的冗余路由器,以消除单点故障。

我可以毫无问题地在路由器和 ISP 之间设置 BGP。我们计划通过 ISP A 发送所有流量,并通过 ISP B 接收所有流量(ISP 只向我们发送默认网关,我们可以尝试使用 as-prepends 和 local_pref 属性来实现这一点)。 在此处输入图片描述

所以我的问题是,最好的解决方案是什么,以确保我同时在两个路由器上保持静态 NAT 和状态防火墙规则(不是 ZBF)的状态?同样,我希望流量通过 ISP A 离开并通过 ISP B 返回。

这是否可能,或者您认为最好购买一对具有 Active/Active 支持的 ASA 5500 系列并在它们上进行 NAT 和检查?

答案1

我很好奇你为什么要故意强制使用这种非对称路由?大多数解决方案都是基于使用 HSRP 跟踪来确定哪个路由器正在主动处理 NAT/防火墙规则,并假设同一个路由器同时看到出站和入站流量。让我来试验一下你建议的路由,看看备用路由器是否真的会为活动路由器发起的请求提供服务。

与此同时,您想要的功能在 IOS 中肯定是可用的。ASA 对的设计更适合于执行您想要的操作,但根据您对规则的控制程度,IOS 可能符合要求。

某物像这样应该可以跟踪您的 NAT 状态。它来自 CCIE 学习供应商,但解释得相当清楚。

另请参阅 Cisco 的文档IOS 防火墙状态故障转移。神奇的命令是......

(config-if) ip inspect <cbac-name> {in | out} redundancy stateful <hsrp-name>

编辑:我在 GNS3 中对此进行了实验,结果好坏参半。简而言之,NAT 可以正常工作。但是 CBAC 不行。

您可以使用冗余 NAT 在两个路由器之间共享状态,从而允许在“出口”路由器上创建的状态在“入口”路由器上创建相同的状态。这些状态处于活动状态,可以正常工作。

ip nat Stateful id <unique-router-num>
redundancy <hsrp-name>
mapping-id <mapping-id>

ip nat inside source list <acl> pool <pool> mapping-id <mapping-id> overload

然而,CBAC 将会成为一个更大的问题。您可以在两个路由器之间设置 IPC,并让它们共享状态。

redundancy inter-device
scheme standby <hsrp-name>
<reboot required>

ipc zone default
association 1  //only 1 is supported
protocol sctp
 local-port <port-num>
  local-ip <my-ip>
 remote-port <port-num>
  remote-ip <my-ip>

interface <WAN interface>
ip access-group <acl> in
ip inspect <inspect-name> out redundancy stateful <hsrp-name>

但是这种方法也存在一些主要问题...

  • 这些状态在设备之间共享,但仅在 HSRP 活动设备上处于活动状态
  • 当发生故障转移时,旧的活动设备强制重新加载

所以是的,CBAC 确实支持一些冗余,但对于您的情况来说,它几乎没用。您确定不能使用 ZBF 吗?基于区域的策略防火墙高可用性@Cisco.com

我仍然很好奇为什么您需要这种强制非对称路由,因为这会阻止您使用 CBAC。

相关内容