openVPN打通两个局域网

1,559次阅读
没有评论
openVPN 打通两个局域网

前言

查找了两天资料,终于是把这个问题解决了

也算了却了一桩心事

记下来,供以后人们参考

未避免不必要的麻烦,建议大家第一次实验时,关闭防火墙干扰

配置

示意图 / 表

公司 ———- vpn-server ———- 家

地点 网段 设备系统
公司 (client) 192.168.0.0/24 win10
vpn-server 10.1.0.0/24 centos7
家 (client) 192.168.100.0/24 win10

目的是为了在公司访问家里的网络

同理,在家里访问公司网络也一样

服务端配置

首先在服务端配置中添加如下代码:

vim server.conf

client-config-dir ccd

然后在配置统计目录新建 ccd 文件夹

在文件夹下,新建与用户名同名的文件夹,比如我在这里使用 home 用户

则:

vim ccd/home
#家里的网段是多少,下面就填多少
iroute 192.168.100.0 255.255.255.0

添加完之后,继续回到 server.conf 配置文件

vim server.conf

client-to-client
push "route 192.168.100.0 255.255.255.0"
route 192.168.100.0 255.255.255.0

故障出现

明明配置完成了

但是却无法 ping 通

我在公司 192.168.0.0 网段里

ping 192.168.100.1

始终没有回应,这也是困扰我几天的问题

但是在客户端看 openvpn 里面的 input 中是有流量的,但是却没有回复

我一度以为是我配置上有所欠缺

直到中午吃饭的时候,终于想到了问题所在

那就是:

两个网卡不通!!!

解决问题

问题出现了,也就好解决了

openVPN 打通两个局域网

在当前可以联网的网络适配器中,点击属性 > 共享 > 允许共享 > 网络连接选择你当前设备的 openvpn 网卡即可

尾声

现在只打通了公司网络到家庭网络

同理可以继续配置家庭网络到公司网络

vim ccd/company
#公司的网段是多少,下面就填多少
iroute 192.168.0.0 255.255.255.0

这里回到 server.conf

client-to-client
push "route 192.168.0.0 255.255.255.0"
route 192.168.0.0 255.255.255.0

重启 vpn 即可,同理客户端需要配置网卡

相同道理,也可客户端配置访问服务端内网

2023 年 12 月 2 日补充

LINUX 系统中添加网卡的转发

iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE

2024 年 11 月 4 日补充

折腾了半天,最后发现是防火墙没关

ufw disable #大家注意把各种防火墙关掉

另外发现使用 linux 客户端作为网关时

务必让 PC 和 linux 客户端在同一网段

之后使用 route add 10.8.0.0 mask 255.255.255.0 192.168.0.11 -p #添加路由

今天折腾半天网络不通,最后发现是 PC 和 linux 客户端中间多了一层路由器。

两个网段,导致 ping 不同 10.8.0.1。具体原理还得思考下。

参考文献:

  • 官方文档 :Expanding the scope of the VPN to include additional machines on either the client or server subnet
正文完
 
评论(没有评论)
验证码