OpenWRT+Wireguard打通异地局域网
背景:
稿主自己家的宽带是上海电信129融合套餐,网龄升级到1000m下行100m上行的速度。早年申请了一个公网IP,配合DDNS可以做各种远程操作。
老爸家的宽带是上海电信的一个维系套餐,100m下行20m上行,价格太便宜了不好意思去申请公网IP。所以本文的目的就是把两个内网通过wireguard vpn打通,这样可以远程操作老爸家的设备。
题外话1:Wireguard速度是openvpn的3倍以上。
题外话2:freshtomato和ddwrt也可以配Wireguard,但是都没openwrt好用。因为openwrt可以直接把隧道接口拉到lan的防火墙区域里,而那两个都要命令行配置路由表和iptables转发。
题外话3:网上看到的教程都是早年wireguard刚集成的时候通过命令行配置的,现在openwrt 23的版本可以全部在luci里完成配置。
先上一张拓扑图。配置完成后图里的所有设备都可以通过内网IP直接互访
自己家的路由器是现在最火的RAX3000M,下面简称主路由器。上面还挂了一个500G usb ssd做bt下载用。
老爸家的路由器是小米R3G,下面简称副路由器。
刷机过程略过,网上教程很多。两个路由器现在都是openwrt/immortalwrt 23版本。
首先两个路由器都需要安装wireguard支持,在软件包页面更新列表,然后搜索wireguard,安装它的luci组件,其他需要的东西都会作为依赖自动安装。安装完需要重启路由器
主路由器配置:
首先设置DDNS,我用的是freedns。这不是本文重点,所以细节略过。
然后在网络->接口里面,点击添加新接口。给它取个名字,协议选wireguard vpn。
然后编辑这个新接口。在常规设置里点击"生成新的密钥对"来生成密钥,端口填一个非常规的数字,wireguard默认是51820。IP地址选一个私有网段,我填的是11.10.0.1/24。
高级设置和DHCP服务端都不需要动。在防火墙设置里,把这个接口放进lan区域
在对端里面,添加一个新的对端。点击"生成新的密钥对"和"生成预共享密钥"。
允许的IP第一行是副路由器的wireguard隧道IP,第二行是副路由器的内网网段。
路由允许的IP要勾上,否则主路由器的内网网段无法访问副路由器的内网网段。
因为副路由器没有公网IP,端点主机和端点端口都留空,keep-alive填25。
主路由器配置已完成,保存。然后再编辑进来,点击生成配置。
这个配置里面默认是全流量走隧道,我们只希望访问主路由器内网的时候走隧道,internet访问还是走原有的路由。所以把允许的IP改成wireguard隧道网段和主路由器内网网段。
把DNS服务器去掉。地址也只留副路由器的隧道IP。连接端点选最开始配的DDNS地址。
右下角会生成一段配置脚本,拷贝下来,等会儿副路由器配置用。
最后在防火墙的通信规则里,要添加一条,允许wireguard连接入站。
副路由器配置:
跟主路由器一样的添加一个wireguard接口,然后不需要配置,只需要点击这个加载配置
然后在这个窗口里,把前面拷贝下来的配置贴进去,导入
最后设一下防火墙区域,就ok了。
现在在主路由的器的wireguard状态里面,应该能看到副路由器过来的连接握手了。
现在两个内网已经完全打通,可以直接互访。在老爸家从主路由器上挂的ssd上拷贝东西,跑满了100m上行带宽。
老爸家的电视机,在kodi里面可以直接播放我自己家的nas里的内容
手机设置
我的手机是安卓机,需要翻墙去play store下载wireguard客户端。
果机的话,我看了一眼我同事的,中国appstore里面也没有wireguard,可能需要特殊手段上外面的appstore下载。
首先在主路由器里面再添加一个对端,为它生成新的密钥,分配一个新的ip地址。也把配置生成出来。
然后要在防火墙添加一条nat规则,所有从wireguard隧道访问副路由器内网的请求,都由主路由器做SNAT转发。
最后在手机客户端里导入这个配置,注意路由的IP段要把两个内网的网段都填上。
好了,现在随时随地都可以访问两个家庭的内网了。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
LAL824
校验提示文案
tuutoo
校验提示文案
然然不吃草
校验提示文案
gecao
校验提示文案
neuro
校验提示文案
改个名好认些
校验提示文案
拯救牛头人
校验提示文案
查-无此人
校验提示文案
zzzdev
校验提示文案
神奇萝卜
校验提示文案
值友9077023267
校验提示文案
值友3014077281
校验提示文案
xchx
校验提示文案
gghost
校验提示文案
小小小tiny
校验提示文案
值友9077023267
校验提示文案
神奇萝卜
校验提示文案
小小小tiny
校验提示文案
tuutoo
校验提示文案
gghost
校验提示文案
LAL824
校验提示文案
xchx
校验提示文案
zzzdev
校验提示文案
查-无此人
校验提示文案
拯救牛头人
校验提示文案
改个名好认些
校验提示文案
neuro
校验提示文案
gecao
校验提示文案
值友3014077281
校验提示文案
然然不吃草
校验提示文案