OpenVPN 网络范围重叠问题

OpenVPN 网络范围重叠问题

我是网络新手。我在家庭网络中设置了一个 OpenVPN 服务器,这样我就可以使用公共 Wi-Fi 先连接到家庭网络,然后以一定程度的安全使用互联网。我按照本教程进行了设置:https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-14-04据我所知,这是一个非常简单的隧道类型 OpenVPN 设置。正常工作时,我可以通过此 OpenVPN 服务器访问互联网,也可以连接到我家庭网络中的服务器。

但是我注意到一个问题。我的家庭 IPv4 网络范围是10.0.1.0/24,这是我的 Mac AirPort Extreme 路由器自带的默认范围。当我去朋友家或其他公共场所时,如果路由器也使用 IPv410.0.1.0/24范围,我可以连接到我的家庭网络,但无法访问那里的任何内容。原因很明显:我所在的本地网络使用与我的家庭设置相同的范围和默认网关。

我可以更改我的网络范围,但每次某人的本地 IPv4 网络范围相同时,我都会遇到类似的问题。

我的问题是:我需要什么样的设置才能避免这个问题?这就是使用 TAP 设置而不是 TUN 的原因吗?我更想找一个可以开始的地方。这是我的服务器配置:

/etc/openvpn/server.conf

port 1194
proto udp
dev tun

ca ca.crt
cert server.crt
dh dh2048.pem

server 10.8.0.0 255.255.255.0    # IP range for connecting users
ifconfig-pool-persist ipp.txt

push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 10.0.1.13" # My local DNS server
push "dhcp-option DNS 10.0.1.1"  # My home router DNS
push "dhcp-option DNS 8.8.8.8"   # Google public DNS

keepalive 10 120
comp-lzo

user nobody
group nogroup

persist-key
persist-tun

status openvpn-status.log
verb 3

**** 编辑 1 ****

我找到了这些资源:

https://openvpn.net/index.php/open-source/documentation/howto.html#numbering

https://serverfault.com/questions/21399/how-do-you-avoid-network-conflict-with-vpn-internal-networks

除了选择使用较少的私有 IPv4 子网之外,真的没有办法解决这个问题吗?

答案1

正如@Ecnerwal 所说,你无法避免这个问题 - 只能缓解它 - 尽管有一些技巧可以使发生碰撞的可能性大大降低。

您可以使用 172.31.xx(人们很少意识到 172.16-32.xx 与 192.168.xx 和 10.xxx 一样被保留,因此几乎从未使用过),或者 - 如果您想稍微打破标准,100.64.0.x
100.64.0.x 不应在家庭网络中使用,因为它是“运营商级 NAT”。由于您正在封装端点,因此您可能可以逃脱违反规则的惩罚!

当指定您的范围时,您可能希望指定尽可能小的范围 - /30 子网(即范围中间的 4 个 IP 地址)不太可能干扰 nat 后面的特定机器,并且在实践中应该发挥良好的作用,因为它是一个非常具体的路由。

当然,另一个解决方案是将您的隧道转移到 IPV6。

相关内容