通过 VPN 将多个远程网络连接到一个主网络

网络工程 虚拟专用网 子网 偏僻的
2022-02-24 18:14:50

在我正在进行的一个项目中,我需要将几个小型网络连接到一个主网络,通过主机提供全面的可见性。简而言之,我需要通过几个远程网络连接到一个主网络。

详细地说,我有以下设置:

_ 许多 3G 工业路由器直接连接到 2 或 3 个以太网设备(路由器有多个 LAN 端口)。这些都是可以根据需要配置的专用网络。_ 一个带有 VPN 服务器的办公室,它必须能够看到每个路由器网络中的所有设备。

例如,假设我们有一个设备“ H ”连接到一个 3G 路由器“ R ”。路由器必须通过 VPN 连接到办公室。从办公室我必须能够看到H来检索数据和H来配置它。H必须能够看到办公网络内的至少一台设备才能发送一些看门狗和一些监控数据。

总局网络为192.168.168.0/24。 我可以完全控制如何配置HR,使用哪个网络掩码。如果需要,我可以R上使用端口转发将只需要的端口转发到设备。

我的想法是为每个远程路由器创建几个不同的子网(即 192.168.1.0、192.168.2.0 等),并使用 VPN 服务器使这些网络从办公室可见。我的问题是:

  1. 这种网络布局是一种好方法还是有更好的方法来满足我的要求?
  2. 我可以用 PPTP VPN 建立这个网络吗?如果不是,应该使用哪种其他类型的 VPN?

附加信息:

我安排了以下方案以更好地代表我的实际逻辑设置:

网络方案

我的目标是获得从192.168.168.180192.168.2.10的可见性,反之亦然。

由于网络工程不是我的工作,而且我当然不是这方面的专家,我可能忘记了一些重要的细节,或者 VPN 根本不是我需要的。如果是这种情况,请告诉我。

2个回答

永远不要桥接远程网络,而是路由它们。

您需要在路由器之间建立 VPN 链接,并确保每个路由器都有通往远程网络的路由(动态路由或静态路由)。如果您不想弄得一团糟,请不要使用 NAT 或端口转发。

  1. 您可能需要提前计划在主办公室进行潜在的网络扩展。我将 192.168.16.0/24, 192.168.17.0/24, ... 用于远程网络。
  2. 我会使用 IPsec VPN。PPTP 不加密。

我为遥测网络做了几乎完全一样的事情。数据以各种方式收集,例如 syslog、SNMP 和一些通过 UDP 和 Modbus/TCP 的讨厌的专有协议;还有用于管理的 SSH 和 HTTP。

  • 站点路由器(“R”)是通往中央的隧道客户端
  • 有些是ADSL,有些是以太网,有些是3G
  • 我们将中心放在 AWS 以确保地址稳定性,因此总部“只是另一个站点”
  • 但如果你愿意,当然可以把中心放在总部
  • 如果您需要加密,如其他人所说,请使用 IPSec
  • 如果你不这样做,考虑 L2TP 而不是 PPTP

我的理解是 PPTP 确实进行了加密(与其他答案相反),但这并不好。路线也很差。 参考我也相信这是唯一仍然可耻地使用分类寻址的东西。

对于寻址方案,我们基本上是这样的:

站点 N 有一个带 NAT的路由器 R N

  • 局域网:192.168。N .1
  • WAN:无论 ISP 给你什么
  • 隧道:10.10.10。ñ

路由在站点上静态完成,并通过/etc/ppp/ip-up.d集线器机器上的 20 行 shell 脚本完成。如果中心是路由器,我会用一堆静态路由来做。

  • 站点很好很简单:192.168.0.0/16 -> Tunnel
  • 中心都是:192.168。N .0/24 -> 10.10.10。ñ

可扩展性的一个很好的技巧是为每个站点设置 DNS,以便 hq-N.vpn.example.com 为该站点提供适当的外部地址以连接到。然后,您可以使用 DNS 重新配置/平衡集线器,而不是重新配置路由器。

您通常无法使用端口重定向做您想做的事情,因为如果没有特殊的“固定 IP 地址 SIM 卡”,您通常无法将数据包发送到路由器外部。我设计了我们的网络,以便我们对我们的站点如何连接非常不感兴趣,因为它通常是我们无法控制的。

我们在站点路由器接口上设置了一个最小公分母 MTU:我们的目标是维护的通用性和简单性,而不是性能。

希望这会有所帮助。