当本地和远程网络使用相同的地址范围时通过 VPN 连接

当本地和远程网络使用相同的地址范围时通过 VPN 连接

作为工作的一部分,我连接到使用远程网络上的 192.168.1.* 地址范围的 VPN。我经常从公共 WiFi 热点连接,而我很少能控制它们的配置。这些热点不在组织内。它们是公共热点,位于咖啡店、酒店等处。

我遇到的问题是,有时 WiFi 热点使用相同的 192.168.1.* 地址范围。

通常我的解决方案是拿出手机并使用其便携式热点,但这可能会很昂贵,特别是在我漫游时。

为了避免使用手机,我买了一个旅行路由器,并将其配置为提供 IP 地址范围为 192.168.2.* 的私有子网,这样即使更大的 WiFi 热点是 192.168.1.*,我也可以避免冲突。

即使我将路由器的 IP 地址范围更改为 192.168.2.*,冲突似乎仍然存在。也许我的子网所属的网络 (192.168.1.*) 仍然以某种方式与 VPN 发生冲突?我不确定。而且我在互联网上找不到任何资源来帮助我解决这个特定问题。

我已经丢失了那个路由器,我想更换它。但在更换之前,我想确保能够解决我的 VPN 地址冲突问题。

如何连接到使用与我所连接的本地网络相同 IP 地址范围的 VPN

编辑:

  • 我正在使用 Mac。
  • 我正在使用组织提供的 VPN 客户端 SonicWall Mobile Client。
  • 我不确定到底是哪个 IP 地址导致了冲突。组织中有很多 192.168.1.* 地址。我该如何找出这些地址?
  • 我无法要求我的组织将其 VPN 范围更改为更模糊的范围。
  • VPN 子网掩码为 255.255.255.0
  • 我没有通过 VPN 访问互联网。
  • 在冲突期间,我无法访问 VPN 网络上我需要的任何资源,但可能存在一些我不知道或没有测试过的可访问的资源。

答案1

总结

使用旅行路由器。配置它以在 IP 子网中为您的笔记本电脑分配一个 IP 地址10.15.15.0/24。此外,确保它发出的 DHCP 租约将自己指定为 DNS 服务器。


当设备有两个网络接口连接到重叠的 IP 子网时,Nothing Works™

当连接到 VPN 时,您的计算机有两个网络接口:

  1. Wi-Fi 适配器
  2. VPN 适配器

您遇到的问题是由于这两个接口都声称它们是192.168.1.0/24IP 子网的正确目的地。在典型配置中,接口度量最低的接口(通常是带宽最高的接口)将赢得平局并获得流量。这意味着您希望通过 VPN 适配器发送的流量实际上被发送到 Wi-Fi 适配器。

在某些情况下,两个接口指向同一个网络是没问题的。例如,通过有线和无线接口连接到某个网络的笔记本电脑就是这样一种配置。但是,在这种情况下,无论使用哪个网络适配器访问目标网络,目标网络都是相同的……所以一切正常。

旅行路由器是个好主意

如果你能够将 Wi-Fi 适配器连接到任何 IP 子网以外您的 VPN 远程网络所使用的 IP 地址,您将避免上述问题。请注意,此新网络不能以任何方式与 VPN 网络重叠,即192.168.0.0/16无法工作,因为这包括192.168.1.0/24范围。幸运的是,您可以通过将旅行路由器的本地 IP 子网设置配置为类似 来控制这一点10.15.15.0/24。这应该是不言而喻的,但重要的是旅行路由器的 WAN 接口必须连接到 Wi-Fi 热点,否则您的笔记本电脑最终仍将直接与子网通信192.168.1.0/24

当连接到旅行路由器时,您的 Wi-Fi 接口应该有一个 IP,例如10.15.15.2/24。因此,与网络中 IP 地址的连接192.168.1.0/24将直接转到 VPN 适配器,因为您的笔记本电脑不知道旅行路由器的 WAN 接口侧存在什么网络范围。

最后一个要求是,您的旅行路由器应将您的笔记本电脑配置为使用其自身作为 DNS 服务器。路由器应将 DNS 请求传递给 Wi-Fi 热点的 DNS 服务器。如果您不这样做,您的笔记本电脑可能会获得类似 的 DNS 服务器192.168.1.1。如前所述,在 VPN 上,您的笔记本电脑会期望在 VPN 的网络中找到它,从而导致 DNS 请求无法正确解析。

答案2

如果您可以缩小 192.168.1.x 中想要通过 VPN 访问的 IP 地址范围,则可以在笔记本电脑上添加主机路由以指向“进入隧道”。只要本地网关地址不与 VPN 中的地址冲突,这种方法就有效 - 例如,如果您的本地/Wifi 网关是 192.168.1.1,您将无法在 VPN 中访问具有相同地址的地址。

只要您不需要访问 Wifi 网络中的任何其他内容(包括本地 DNS 服务器),您的移动路由器就应该可以正常工作。下次使用时,请运行netstat -nr并检查 192.168.1.0 的网关和接口路由指向什么。

答案3

你没有告知你正在使用哪种类型的 VPN。如果你不是使用 OpenVPN,问题可能出在网络地址转换上。

您最好使用更模糊的子网 - 例如 172.18.0.0/24(这是在 172.16.0.0 - 172.31.255.255 范围内,这是一个不太知名的块),甚至可以通过使用 100.64.0.0/24(为运营商级 NAT 保留)稍微改变规则。

使用 192.168.2.x 时可能遇到的一个问题是,您的提供商可能正在使用 192.168.0.0/16,其中包括 192.168.2.x。还有一种可能(但可能性不大),您的旧设备将 192.168 视为 RFC1918 空间,并且不使用网络地址转换。

第三种可能性是热点将流量限制为网络流量或常用端口(可能是为了阻止种子下载?)如果是这种情况,您需要在端口 443 上运行 OpenVPN 服务器 [并且,当然,只有在需要时才在您登录 WIFI 后才打开它]。

相关内容