虽然 192.168/16 甚至 10/8 之间有各种各样的私有不可路由网络,但有时在考虑到潜在冲突时,它仍然会发生。例如,我在 192.168.27 上使用内部 VPN 网络设置了一次安装 OpenVPN。这一切都很好而且很花哨,直到一家酒店在他们的 wifi 上使用该子网作为 27 楼。
我将 VPN 网络重新 IP 化为 172.16 网络,因为酒店和网吧似乎几乎没有使用它。但这是解决问题的适当方法吗?
当我提到 OpenVPN 时,我很想听听其他 VPN 部署中关于这个问题的想法,包括普通的 IPSEC。
我认为无论你使用什么,你都会冒着冲突的风险。我会说很少有网络使用低于 172.16 的范围,但我没有证据支持这一点;只是一种没有人记得的直觉。您可以使用公共 IP 地址,但这有点浪费,而且您可能没有足够的余地。
另一种方法是为您的 VPN 使用 IPv6。这需要为您想要访问的每台主机设置 IPv6,但您肯定会使用唯一的范围,特别是如果您将 /48 分配给您的组织。
我们与合作伙伴和客户有几个 IPSec VPN,偶尔会遇到与他们的网络发生 IP 冲突。在我们的案例中,解决方案是通过 VPN执行源 NAT或目标 NAT 。我们正在使用 Juniper Netscreen 和 SSG 产品,但我认为大多数高端 IPSec VPN 设备都可以处理。
不幸的是,保证您的地址不会与其他地址重叠的唯一方法是购买一块可路由的公共 IP 地址空间。
话虽如此,您可以尝试查找 RFC 1918 地址空间中不太受欢迎的部分。例如,192.168.x 地址空间通常用于住宅和小型企业网络,可能是因为它是许多低端网络设备的默认设置。我猜想,使用 192.168.x 地址空间的人至少有 90% 的时间是在 C 类大小的块中使用它,并且通常从 192.168.0.x 开始他们的子网寻址。您可能不太可能找到使用 192.168.255.x 的人,因此这可能是一个不错的选择。
10.xxx空间也是常用的,我见过的大企业内网大部分都是10.x空间。但我很少看到有人使用 172.16-31.x 空间。我敢打赌,例如,您很少会找到已经在使用 172.31.255.x 的人。
最后,如果您打算使用非 RFC1918 空间,至少要尝试找到不属于其他人且在未来任何时候都不太可能分配给公共使用的空间。etherealmind.com 上有一篇有趣的文章,作者在其中谈论使用为基准测试保留的 RFC 3330 192.18.x 地址空间。这对于您的 VPN 示例可能是可行的,除非您的 VPN 用户之一当然为制造或基准测试网络设备的公司工作。:-)
我们的公共类 C 的第三个八位字节是 0.67,所以我们在里面使用它,即 192.168.67.x
当我们设置我们的 DMZ 时,我们使用了 192.168.68.x
当我们需要另一个地址块时,我们使用 0.69。
如果我们需要更多(并且我们接近了几次),我们将重新编号并使用 10。这样我们就可以为公司的每个部门提供大量网络。
使用不太常见的子网,例如 192.168.254.0/24 而不是 192.168.1.0/24。家庭用户通常使用 192.168.xx 块,企业使用 10.xxx,因此您可以使用 172.16.0.0/12 几乎没有问题。
使用更小的 IP 块;例如,如果您有 10 个 VPN 用户,请使用 14 个 IP 地址池;/28。如果有两条路由到同一个子网,路由器将首先使用最具体的路由。最具体 = 最小子网。
使用点对点链接,使用 /30 或 /31 块,因此该 VPN 连接上只有两个节点,并且不涉及路由。这需要为每个 VPN 连接设置一个单独的块。我使用 Astaro 的 openVPN 版本,这就是我从其他位置连接回我的家庭网络的方式。
就其他 VPN 部署而言,IPsec 在站点到站点的基础上运行良好,但在旅行的 Windows 笔记本电脑上配置起来很痛苦。PPTP 是最容易配置的,但很少在 NAT 连接之后工作,并且被认为是最不安全的。
使用类似 10.254.231.x/24 或类似的东西也可能会让你在酒店的雷达下溜走,因为他们很少有足够大的 10.x 网络来吃掉你的子网。