nat*_*ado 8 cisco nat dmz ip-address cisco-asa
我正在考虑在 Cisco ASA 后面设置一个 DMZ,该 DMZ 将包含大量 HTTP 前端负载平衡器和 SSL 卸载服务 - 超过 100 个 IP,集中在少数主机上。
过去,我将所有主机都保留在 RFC1918 私有 IP 上,并为我通常在 DMZ 中公开的每个服务添加了静态映射(IP-by-IP)。这变得很烦人,因为我们已经开始以足够快的速度添加额外的 DMZ IP,以至于单独设置每个 IP 变得很烦人。我想对其进行更改,以便将整个 DMZ 子网设置为允许来自外部的 HTTP 和 HTTPS --> dmz,以便负载均衡器可以根据需要获取新 IP,而无需每次都更新 ASA 配置。
我现在想知道的是,将 DMZ 放在 RFC1918 子网上并在整个子网中使用静态 NAT 是否有意义,或者我是否应该让 DMZ 直接分配外部 IP,并仅依赖于访问列表和身份 NAT/NAT 豁免。
一些粗略的 ASCII 艺术作品:
使用直接外部 IP 地址的示例: 互联网 ---> ASA ---> 内部 (10.1.0.0/16) | +-----> DMZ (1.2.3.0/24) 使用 NATed IP 地址的示例: 互联网 ---> ASA ---> 内部 (10.1.0.0/16) | (1.2.3.0/24) +-----> DMZ (10.99.0.0/24)
我看到的使用 NATed 地址的优势是可移植性 - 如果我的上游提供商和分配发生变化,我不需要重新编号我的内部 DMZ。缺点是复杂性 - 现在我必须处理我自己网络中的内部和外部 IP 地址,等等。根据您的经验,哪种设置效果更好?
有理由朝您和其他人提到的任一方向发展。
具有静态 1:1 NAT 形式的抽象层(一种双关语)是一种很好的方式,因为如果您的 WAN IP 块发生变化,您可能不必重新编号内部主机。然而,与简单的路由和 ACL 检查相比,NAT 引入到通过 ASA 的数据包流的复杂性和细微差别可能是有问题的。
我个人的观点是 NAT 与 IPv4 保持一致。对于主机上的 IPv4 堆栈,我对上游防火墙上的静态 NAT 没有任何疑虑。然而,对于主机上的 IPv6 堆栈,没有 NAT。在 ASA 上,IPv4 和 IPv6 可以并行运行,NAT 用于 IPv4,传统路由用于 IPv6。
您可能想要使用静态 NAT 并且它处理增长还有另一个原因。 ASA 不支持 secondary
接口上的 IP 地址。假设您的上游为您分配了一个直接路由到 ASA 外部接口的 /26。您使用 IP 子网中的第一个主机 IP 配置 ASA 的 dmz 接口,在子网中留下 64 - 2 - 1 = 61 个有效主机 IP 以供服务器使用。
如果您使用了所有剩余的 61 个主机 IP 并且需要更多,您可以到上游说嘿,我需要另一个 /26。他们将其提供给您并再次将其路由到您的 ASA 的外部 IP。您不能secondary
像使用 IOS 那样将第二个块中的第一个主机 IP 作为IP 地址分配给 ASA 的 dmz 接口。这给你留下了几个选择——
接下来采用相同的范例——这次从一开始就在 <-> dmz 之外使用 1:1 静态 NAT。我们在 1:1 静态 NAT 中的第一个 /26 中使用所有可用 IP。我们请求第二个 /26 --
secondary
上的IP 地址,即使你不需要它。请注意,大多数提供商将前 3 个主机 IP 地址作为 VRRP/HSRP 的一部分,从而减少您的可用性。教训:如果您的外部接口上已经有一个公共 IP 块,请始终请求将后续块直接路由到您的外部接口 IP。这将为您提供额外的可用 IP,并且您仍然可以使用静态 NAT。
无论是直接路由还是 ASA 代理 arp——使用 1:1 静态 NAT,您都可以开始使用第二个 /26,而不必在 dmz 子网中乱来。一旦您的 dmz 子网超出了您的范围,您将不得不做出一些调整——但同样有一个抽象层,您不必在 WAN 端四处游荡。
最终答案:这取决于,但对于 IPv4,我倾向于在您的情况下使用 NAT。
归档时间: |
|
查看次数: |
4518 次 |
最近记录: |