将具有相同 IP 范围的多个子网 NAT 到单个接口

将具有相同 IP 范围的多个子网 NAT 到单个接口

我遇到以下问题:客户有多个 LAN,例如 LAN1 和 LAN2,它们具有相同的私有 IP 范围(192.168.10.x),我需要监控所有网络。

我将路由器的三个接口命名为:LAN1、LAN2 和 MONITOR

我需要做的是从 LAN1 到 MONITOR 进行一对一 NAT,从 LAN2 到 MONITOR 进行一对一 NAT。NAT 配置应如下所示:

我需要能够从 MONITOR 访问 LAN1,以及从 MONITOR 访问 LAN2。在监视器中,我可以使用我想要的任何范围。为了使示例易于阅读,假设我在 MONITOR LAN 中有 10.0.0.0/16。因此,我需要做的是隐藏 LAN1 和 LAN2 的私有地址,如下所示:

  • LAN1 ip 地址 192.168.10.0/24 隐藏为 10.0.1.0/24
  • LAN2 ip 地址 192.168.10.0/24 隐藏为 10.0.2.0/24

这样,我可以使用地址 10.0.1.23 访问 LAN1 上的机器 192.168.10.23,使用地址 10.0.2.23 访问 LAN2 上的机器 192.168.10.23(相同的 IP)(请注意 LAN1 的映射 10.0.1.x,LAN2 的映射 10.0.2.x)

我需要像这样为 LAN1 定义一个 NAT

/ip firewall nat add chain=dstnat dst-address=10.0.1.0/24 \
  action=netmap to-addresses=192.168.10.0/24

/ip firewall nat add chain=srcnat src-address=192.168.10.0/24 \
  action=netmap to-addresses=10.0.1.0/24

(显然对于 LAN2,我使用了类似的 NAT 定义)

到目前为止一切顺利。如果我对 LAN1 使用此 NAT 定义,则一切都按预期运行。

问题在于我为第二个 LAN 定义 NAT 时。我尝试过桥接、使用损坏的数据包路由、使用 VLAN……但我的所有配置都没有给我预期的结果。例如,如果我 ping 192.168.1.23,ping 有时会到达 LAN1 上的机器 19.168.10.23,而其他时候我会从 LAN2 上具有相同 IP 的机器获得 ping。在其他情况下,路由会失败(它们存在一些问题)。

我并不介意必须使用路由或桥接。我并不介意在 MONITOR LAN 上使用什么 IP,但我无法更改 LAN1 和 LAN2 上的 IPS。

简而言之,我需要分配一个从 MONITOR 接口到 LAN1 接口的 NAT,将 10.0.1.0/24 分配到 192.168.10.0/24,以及另一个从 MONITOR 接口到 LAN2 的 NAT,将 10.0.2.0/24 分配到 192.168.10.0/24。由于 LAN1 和 LAN2 上的 IP 重复,我无法分离两个“通道”的流量。

你知道我该如何实现这个目标吗?

答案1

让我们来一个简单的解决方案:我知道您的路由器是 192.168.10.0/24,所以:

/ip firewall nat add chain=srcnat src-address=10.0.2.0/24 dst-address=10.0.1.0/24 action=src-nat to-addresses="router-IP-192.168.10.x/24" /ip firewall nat add chain=srcnat src-address=10.0.1.0/24 dst-address=10.0.2.0/24 action=dst-natp to-addresses="router-IP-192.168.10.x/24"

确保所有 PC/服务器都已设置 Router-ip 默认网关

相关内容