从 OpenVPN 子网中的节点到路由器子网中的节点的连接

从 OpenVPN 子网中的节点到路由器子网中的节点的连接

我正在尝试在家中设置一个 IP 摄像头,以便通过互联网远程访问。首先,我已经阻止了通过互联网直接访问摄像头的所有权限。并且我在一台 Ubuntu 笔记本电脑上创建了一个家庭 OpenVPN 服务器。因此,我可以完美地连接到家庭 OpenVPN 服务器。

但是,当我在外面通过家庭网络时,我不确定如何从我的手机或个人笔记本电脑以 OpenVPN 客户端加入后连接到摄像头。

OpenVPN 子网为 10.8.0.0 掩码 255.255.255.0。路由器子网为 10.0.1.0 掩码 255.255.255.0。摄像头的 IP 地址为 10.0.1.15。

所以我希望能够从 10.8.0.x IP 连接到 10.0.1.15。

route add -net 10.8.0.0/24 gw 10.0.1.2我尝试在运行 OpenVPN 服务器 (10.0.1.2) 的 Ubuntu 机器上添加路由,但我觉得这样做不太正确route add -net 10.0.1.0/24 gw 10.0.1.2

有人可以请教如何正确地使路由从 10.8.0.x 到 10.0.1.15 正常工作吗?

答案1

您将路由添加到了错误的位置。OpenVPN 服务器已经有了这两个目标网络的路由。需要它们的是端点:

  • VPN客户端需要发送数据包到10.0.1.15;
  • 摄像机需要向10.8.0.x/24发送数据包。

VPN 客户端需要一条到目的地10.0.1.15或的路由10.0.1.0/24,路由网关是 VPN 服务器10.8.0.1(网关必须是面向客户端的地址,而不是 LAN 地址)。由于它是dev tun0接口,如果您使用而不是网关,您也会得到相同的结果。

该路由可以使用 通过 OpenVPN 部署push "route 10.8.0.0 255.255.255.0"

相机可能不支持自定义路由,它只是将所有内容发送到其“默认网关”——这意味着LAN网关需要学习通向您的 VPN 的路由。(希望您的路由器允许添加路由?)但参数不会改变;目的地仍是10.8.0.0/24,路由网关仍是10.0.1.2(VPN 服务器)。

相关内容