NATTing 一个服务器地址

网络工程 思科 纳特
2022-03-04 22:34:43

我需要帮助为这个用例编写 NAT 规则:我希望能够连接到本地 IP,就好像它是远程服务器 IP 一样。例如端口转发。

我无权访问远程网络上的防火墙,而服务器位于另一端。查看地图

在此处输入图像描述

因此,理想情况下,如果 10.99.0.0/24 上的客户端访问 10.100.0.129,它将转换为 192.168.50.129 并再次返回。192.168.50.129 不直接访问客户端。VPN 隧道已启动并正常运行。

我已经尝试过(使用子网和主机对象,但我不想将这个示例与一堆不必要的行混为一谈)

nat (inside,outside) 源静态 10.99.0.0/24 10.100.0.129 目标静态 192.168.50.129 192.168.50.129

但那是不行的。

在供应商防火墙上,规则可能是(无论帕洛阿尔托版本是什么):

nat(内部,外部)源静态 192.168.50.128/25 192.168.50.128/25 目标静态 10.100.0.0/24 10.100.0.0/24

我究竟做错了什么?

- - 编辑 - -

弄清楚了。

  1. 将服务器 IP (192.168.50.129) 添加到 Spoke A <-> Hub 隧道的有趣流量中。

  2. 将此 NAT 规则添加到我的集线器:

object network LocalServerIP
host 10.100.0.129
object network RemoteServerIP
host 192.168.50.129
nat (outside,outside) source dynamic any LocalServerIP destination static RemoteServerIP RemoteServerIP
2个回答

通常,您只在需要时才使用 NAT:

  1. 源 NAT,将私有地址转换为公共地址,例如 Internet 访问
  2. 目标 NAT,也就是从公共地址转换为私有地址。反向 NAT、端口转发、虚拟 IP
  3. 源 NAT 和目标 NAT,将私有地址转换为私有地址以消除重叠地址空间的歧义(应该修复 = 重新编号,而不是使用 NAT)

NAT 打破了 TCP/IP 的端到端范式,这是一种丑陋的 hack,应尽可能避免。

在您的情况下,具有连续私有寻址的 VPN 上的 NAT 是多余的,甚至是破坏性的 - 跨位置访问的服务器无法区分远程客户端,破坏子网分区和有用的日志记录。此外,使用 NAT 没有任何好处,只会造成伤害。

弄清楚了。

  1. 将服务器 IP (192.168.50.129) 添加到 Spoke A <-> Hub 隧道的有趣流量中。

  2. 将此 NAT 规则添加到我的集线器:

object network LocalServerIP
host 10.100.0.129
object network RemoteServerIP
host 192.168.50.129
nat (outside,outside) source dynamic any LocalServerIP destination static RemoteServerIP RemoteServerIP