Answers:
我最近在我的家庭网络上实现了类似的东西,在Tomato(shibby)v138上。这是一个图表:
在进入VPN设置之前,我最初在相同的SSID上同时拥有2.4GHz和5GHz网络,我们称之为“公共”。内部网络将设备分配给192.168.1.2-254范围内的地址。这是您在图的上半部分看到的内容。
这些是我为添加通过VPN路由的新子网所做的更改:
此时,我可以启动VPN客户端,然后选择无线设备,连接到“私有”网络并确认我的面向互联网的IP是在VPN后面,并连接到“公共”并流式传输Netflix / Amazon Prime视频没有出现地理限制错误。
现在,您可以根据需要设置每个设备以连接到SSID。在我们家里,为电视机提供Netflix流媒体的媒体流媒体仍停留在公共网络上。我的手机和笔记本电脑连接到专用网络。在大多数情况下,您应该选择其中一种 - 您不希望设备自动连接到任意一个。
可选附加功能
接通电话 :如果您希望物理以太网端口通过VPN连接,则可以在其下添加新VLAN 高级/ VLAN 并将其分配给新桥(br1)。此时,您可以根据需要将路由器上的一个或多个物理以太网端口移动到安全VLAN。我没有,所以只有无线客户端才能加入我的私有子网。
内部路由 :执行上述步骤后,您可能会发现公共和专用网络上的客户端无法相互通信。如上所述设置VPN客户端的路由策略会添加以下规则:
iptables -t mangle -A PREROUTING -s 192.168.2.0/24 -j MARK --set-mark 311
到番茄的防火墙脚本。这标志着每个数据包都来自192.168.2.0/24网络,带有标记311的所有数据包都通过VPN路由。这意味着“公共”子网(192.168.1.0/24)上的任何设备都无法通过内部网络与“私有”子网上的设备通信,因为虽然请求将通过,但响应将转移到VPN丢失了。在我的情况下,我希望能够从专用网络上的服务器访问文件共享,因此我决定清除应该发送到公共网络的任何内容的标记。我通过添加以下行来做到这一点:
iptables -t mangle -A PREROUTING -s 192.168.2.0/24 -d 192.168.1.0/24 -j MARK --set-mark 0
至 管理/脚本/防火墙 。您可以为要从专用网络转发到路由器的任何端口添加类似的规则。
故障安全 :也称为“杀戮开关”,我添加了一些额外的规则 管理/脚本/防火墙 这是为了防止私有网络进入无保护的WAN(vlan2)。这意味着如果VPN由于某种原因而关闭,连接到专用网络的客户端不会意外地通过未受保护的WAN接口进行通信。
iptables -I FORWARD -s 192.168.2.0/24 -o vlan2 -m state --state NEW -j REJECT --reject-with icmp-host-prohibited
iptables -I FORWARD -p tcp -s 192.168.2.0/24 -o vlan2 -m state --state NEW -j REJECT --reject-with tcp-reset
iptables
命令行。例如,调用此命令将删除将来自辅助网络(192.168.2.xxx上的所有流量)的所有流量转发到隧道的规则 tun11 这是我的openvpn ...但我需要添加伪装的界面somewhre ...iptables -t nat -D POSTROUTING -s 192.168.2.0/24 -o tun11 -j MASQUERADE