type
status
date
slug
summary
tags
category
icon
password
经常需要从局域网外面的设备访问家里的NAS,以前都是通过公网来访问的,但是搬家换了网络后不再有公网了,庆幸的是网络是NAT1,仍然可以通过tailscale打洞回家,实现跨网组成局域网。

网络拓扑图

notion image

释义

  1. 网络需要公网、NAT1、IPV6,如果都没有走tailsever的中转服务器会非常的慢,需要自建drep。
  1. 设置旁路由为DMZ主机,正常端口转发应该也可以。
  1. 家庭局域网内所有设备均在同一子网内,例如:192.168.0.0/24

配置旁路由Openwrt下的Tailscale服务

  1. 下载Tailscale on Openwrt
    1. 项目地址:GitHub - adyanth/openwrt-tailscale-enabler: Brings Tailscale to low powered OpenWRT devices
  1. 解压:
    1. tar x -zvC / -f openwrt-tailscale-enabler-<tag>.tgz
  1. 安装需要的库:
    1. opkg update && opkg install libustream-openssl ca-bundle kmod-tun
  1. 配置开机自启动:
    1. /etc/init.d/tailscale enable
  1. 启动测试
    1. /etc/init.d/tailscale start
  1. 登录tailscale服务,并开启子网路由
    1. tailscale up --advertise-routes=192.168.0.0/24 --accept-dns=false
    2. 192.168.0.0/24:这是我局域网的网段
    3. 启动后获取登录地址注册账号后登录进去即可
  1. 配置Tailscale服务
    1. 禁用密钥到期,默认6个月会要求重置,我们可以禁用这个
    2. Edit route settings of xxx:开启子网路由
  1. (可选项) 配置出口
    1. 如果你想让局域网内的所有设备都走旁路由,那么可以配置这一项。注意这样有好有坏。
    2. 只需要启动时添加--advertise-exit-node 参数即可
    3. tailscale up --advertise-routes=192.168.0.0/24 --accept-dns=false --advertise-exit-node
    4. 打开管理页面Edit route settings of xxx,勾选 Exit node即可

配置网络接口

  1. 添加一个新的网络接口
  1. 协议:静态
  1. IPV4地址:tailscale网页端看到的ip地址,也可以命令行输入tailscale ip 查看
  1. 子网掩码:255.0.0.0
  1. 物理设置->接口:选择tailscale0接口
  1. 防火墙:lan
  1. 保存应用重启
  1. 旁路由模式无需设置防火墙规则

使用

其他设备下载对应的tailscale应用登录同一个账号即可完成组网,非常的方便,路由下的设备可以直接用内网的ip地址访问,例如路由器的IP:192.168.0.1,真的是非常的NICE。

Enjoy!

总所周知,电信网络下除了专线外没有好的线路,但是家里宽带是联通的呀,那我手机或者其他设备先回家不就好了呀。