Skip to content

Tailscale 异地组网

INFO

与 ZeroTier 类似,Tailscale 可以将不同网络环境的设备组成一个虚拟局域网,使其可以互相访问

安装步骤

  1. 打开 Tailscale 官网,点击右上角的 Log in,可以直接选择 Google 或者 Microsoft 授权登录

  2. 根据提示下载对应平台的客户端,更多平台下载请参考 官方文档

    • Windows
    • Android (国区 Google Play 无法直接下载,可以在 APKMirror 下载)
    • Linux 一键安装脚本 curl -fsSL https://tailscale.com/install.sh | sh
    • 卸载apt-get remove tailscale rm -rf /var/lib/tailscale/tailscaled.state
  3. 有图形化界面的平台,直接登录账号即可;而在无图形化界面的平台上,需要输入 tailscale up

    tailscale1

  4. 打开出现的链接,进行登录即可

  5. 默认情况下,会开启 Key Expiry,设备一段时间后会自动失效,可以在设备列表中选择 Disable Key Expiry

    tailscale2

  6. 完成以上步骤后,启动客户端,即使用列表中的 IP 进行直接访问

局域网访问

有些时候,我们不单单希望加入 Tailscale 的设备可以相互访问,而是需要访问设备所在的整个局域网,对此我们还需要更多的配置。

开启 IP 转发

  1. 编辑 /etc/sysctl.conf 文件

    bash
    vi /etc/sysctl.conf
  2. 将以下代码取消注释

    ini
    net.ipv4.ip_forward=1
    net.ipv6.conf.all.forwarding=1
  3. 加载内核参数

    bash
    sysctl -p

添加子网路由

例如我的路由器地址为 10.0.0.1,光猫地址为 192.168.1.1,则需要配置的网段为 10.0.0.0/24192.168.1.0/24

bash
tailscale up --advertise-routes=10.0.0.0/24,192.168.1.0/24

开启子网路由

需要在 Tailscale 控制面板中,将刚才添加的子网路由进行开启

tailscale3

tailscale4

无法打开网页

部分设备在连接 Tailscale 后,可能存在无法打开网页的问题,只需要在 Tailscale 控制面板中的 DNS 设置中,将 MagicDNS 进行关闭即可

tailscale5

经过以上设置,即可在连接 Tailscale 后,直接使用局域网 IP 对整个局域网的设备进行访问

参考资料