我正在尝试在家中设置一个 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 服务器)。