brain-hole
brain-hole

Tailscale异地组网:实现远程访问内网设备

谢谢的·谢 本文共:1189 字 阅读需要:3 分钟 加载中...

在我们现在使用的网络中,远程访问家里的设备和公司内网已经成了常见需求,主流的方案有ipv4/ipv6方案,vpn隧道,vps中转等。Tailscale的组网方式相对简单,且不依赖公网。

对比

IPv4/IPv6 公网:IPv4 相对 IPv6 而言要简单得多,只需要配置动态 DDNS 解析和端口转发与放行即可。而 IPv6 则相对复杂许多,一般需要使用运营商的高级管理员账户自行开启 IPv6 功能,然后在光猫和主路由上进行相应的配置,才能获取到 IPv6 公网地址。接下来,还需要进行动态 DDNS 解析和端口转发与放行。

随着运营商逐步封锁高级管理员账户的权限,获取 IPv6 公网 IP 变得越来越复杂。

Tailscale:Tailscale 几乎不需要任何配置。只要安装客户端并登录账户,设备之间便能自动组网,无需担心 NAT 穿透、端口转发等问题。

双层保障:从安全性上讲,Tailscale 更加安全且简单,但在网速方面,公网 IP 通常要优于 Tailscale。

对我来说,小白才会做选择,而我选择全都要,哈哈!这种双重保障方式能够确保在某些场景下提供额外的可靠性。比如,当你不在家里时,可能需要对软路由进行升级或更新动态解析插件。如果此时 IPv6 解析出现问题,导致无法访问内网设备,Tailscale 就可以帮你顺利连接到内网,解决问题。

安装与配置

在主路由上安装Tailscale,如果使用的是我编译的插件是自带Tailscale。由于我编译的很精简并不适用所有人,只以x86架构的机器上测试为准。提前注册好Tailscale账号,ssh连接到主路由执行下面命令。

opkg update

wget -O /tmp/luci-app-tailscale_1.1.3_all.ipk https://github.com/asvow/luci-app-tailscale/releases/download/v1.1.3/luci-app-tailscale_1.1.3_all.ipk

wget -O /tmp/luci-i18n-tailscale-zh-cn_240923.10793_all.ipk https://github.com/asvow/luci-app-tailscale/releases/download/v1.1.3/luci-i18n-tailscale-zh-cn_240923.10793_all.ipk

opkg install /tmp/luci-*-tailscale*.ipk

执行完命令在服务里面即可看到Tailscale,如果没有重启检查,如果还是没有就需要检查兼容性问题了。下面启动服务。

启动相关配置后获取登录地址并绑定账号。

tailscale up

打开子网路由,网段需要填写自己的网段。

tailscale up --advertise-routes=10.10.10.0/24 --accept-dns=false

到网页端开启子网路由服务,并禁用密钥过期。

添加接口设置防火墙

创建一个网络接口名字tailscale协议是静态地址设备选择tailscale0,接下来在常规设置里面把ipv4改成网页控制台路由器分配的ip地址,子网掩码改成255.0.0.0保存就可以了。子网互通要不要打开取决于自己,子网互通可以帮助远程设备访问路由器网络,比如你的路由器安装了某知名不可描述软件,当在手机端打开vpn时,不仅能访问家里的设备,还可以使用它提供的服务。后期可能会加一篇另外一个插件加ipv6用这个的服务,不使用tailscale提供的子网互通是因为网络可能存在瓶颈,但是简单浏览网页应该不影响。

子网互通同时需要在主路由开启和网页端控制台开启。开启成功是不会显示感叹号提示的。先添加接口,子网互通才能开启。

添加设备并访问

直接在需要访问的设备上下载tailscale客户端并登录,登录需要使用与主路由上相同的账号,登录成功即可看到自己的设备在线,打开vpn,使用非局域网即可访问。内网如何访问,非局域网设备就如何访问就行。