Skip to content

通过 Tailscale 异地组网 实现远程访问局域网 ​

前言 ​

Tailscale 是一款基于 WireGuard 的异地组网工具,它可以将不同网络环境的设备组成一个虚拟局域网,使其可以互相访问。我们只需要在路由器或者 Nas 上安装 Tailscale 进行组网,就可以实现以下效果:

  • 连接到 Tailscale 的设备,可以直接使用内网 IP 访问家庭局域网
  • 内网设备可以直接使用 Tailscale 分配的 IP 来访问连接到 Tailscale 的设备
  • 支持多个局域网互相访问,每个局域网只需一台设备安装 Tailscale (每个局域网的网段不能相同)

安装步骤 ​

  1. 打开 Tailscale 官网,点击右上角的 Log in,可以直接选择 Google 或者 Microsoft 授权登录
  2. 根据提示下载对应平台的客户端,更多平台下载请参考官方文档
    • Windows
    • Android (国区 Play Store 无法直接下载,可以在 APKMirror 下载)
    • Linux 一键安装脚本 curl -fsSL https://tailscale.com/install.sh | sh
    • 卸载:apt-get remove tailscale rm -rf /var/lib/tailscale/tailscaled.state
  3. 有图形化界面的平台,直接登录账号即可;而在无图形化界面的平台上,需要输入 tailscale up
Linux
Linux
  1. 打开出现的链接,进行登录即可
  2. 默认情况下,会开启 Key Expiry,设备一段时间后会自动失效,可以在设备列表中选择 Disable Key Expiry
关闭 Key 到期时间
关闭 Key 到期时间
  1. 完成以上步骤后,启动客户端,即可使用列表中的 IP 进行直接访问

访问局域网 ​

此时,只有连接到 Tailscale 的设备可以互相访问,并不能直接使用内网 IP 来访问整个局域网,我们还需要进行以下配置

开启 IP 转发 ​

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

  2. 将以下代码取消注释

txt
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
  1. 加载内核参数 sysctl -p

添加子网路由 ​

  1. 例如我的路由器地址为 10.0.0.1,光猫地址为 192.168.1.1,则需要配置的网段为 10.0.0.0/24 与 192.168.1.0/24
sh
tailscale up --advertise-routes=10.0.0.0/24,192.168.1.0/24 --accept-routes
  1. 在 Tailscale 控制面板中,将刚才添加的子网路由进行开启
编辑路由设置
编辑路由设置
开启子网路由
开启子网路由

访问 Tailscale 设备 ​

通过上面的设置,已经实现了连接到 Tailscale 的设备使用内网 IP 访问局域网,但是局域网内的设备仍然无法使用 Tailscale 分配的 IP 来访问那些连接到 Tailscale 的设备,我们还需要在路由器中配置静态路由

  • 网络 / 主机 IP: Tailscale 的网段 100.64.0.0
  • 网络掩码: 255.192.0.0
  • 网关: 安装 Tailscale 设备的内网 IP
静态路由
静态路由

无法打开网页 ​

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

MagicDNS
MagicDNS

Last updated:

Evoxt:Evoxt:
最便宜的亚太优化线路 —— 马来西亚 电信 GIA / 联通 9929 仅需 $3.32 起!
95 折优惠码AFF2377-DEV
🎉银河录像局:
Netflix / Spotify/ ChatGPT / Claude 等 AI 流媒体一站式合租平台!
95 折优惠码zhichao
关注微信公众号
优化线路
Evoxt

Evoxt

最便宜的亚太优化线路

马来西亚 电信 GIA / 联通 9929
优惠码:AFF2377-DEV

1C / 512MB / 5GB SSD / 150GB 流量

$3.32/月
优化线路
搬瓦工

搬瓦工

15 个机房自由切换

洛杉矶 DC6 机房
电信 / 联通 GIA + 移动 CMIN2

2C / 2GB / 40GB SSD / 1TB 流量

$49.99/季