TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

前言:
之前的贴文分享了[ZeroTier 实现远端访问局域网](https://kingtam.win/archives/zerotier-route.html) ,最近发现一款软件`TailScale`(数码小树人的貼文-让你可以随时随地用NAS和家里的电脑)感觉设定上更简单一点,仅仅透过帐号登入就可以接入`TailScale`网络内。

`TailScale`是以[Wireguard](https://www.wireguard.com/)的协议加密,所以安全性更高,而且是P2P连线,流量不经伺服器,延迟更低、私密性更高。
目录内容:
  1. 安装及加入到TailScale网络

  2. 透过设定其中1部TailScale装置为网关「Subnet Router」,可以访问整个内网网段

1. 安装及加入到「TailScale」网络

如果是Windows用户可以到官网下载安装Tailscale,或者透过Chocolatey软件包安装。

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

choco install tailscale -y

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

双击桌面右下角的图示

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

使用谷歌或者微软账号进行登录

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

成功授权后可以查看分配到的IP地址

Linux用户可以到Download · Tailscale找到相对应的CPU平台及架构安装.

我以Ubuntu 20.04为范例

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

  • 添加 Tailscale 的金钥和软件仓库地址

curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.gpg | sudo apt-key add -

curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.list | sudo tee /etc/apt/sources.list.d/tailscale.list

  • 安装Tailscale

sudo apt update
sudo apt install tailscale

  • 启用Tailscale 及透过网址验证登入到Tailscale 网络

sudo tailscale up

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

此页面显示成功授权

返回到Linux 终端查看分配到的IP地址

tailscale ip

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

Tailscale 网络内的装置可以互通

2. 透过设定其中1部「TailScale」的装置为网关「Subnet Router」,可以访问整个内网网段

因为不是每一部设备都可以安装到Tailscale , 所以这样设定「Subnet Route」的好处是家里内网只要1部Linux装置接入到Tailscale 网络,其他所有的外网的Tailscale装置都可以透过这部Linux装置作为网关访问家里内网所有的设备,如: 印表机,路由器,伺服器等等。

  • 启用 Linux 上的 IP 转发(IP Forwarding)

因为「Subnet Route」的设定需要用到 IP 转发(IP Forwarding)特性

使用以下指命启用

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p /etc/sysctl.conf

  • 以Linux作为「Subnet Route」(子网路由网关)连接到Tailscale

Tailscale 不需要防火墙配置,会自动管理规则,以允许转发。设定过程也没涉及到iptable,一条指令可以完成。

sudo tailscale up --advertise-routes=20.13.3.0/24

20.13.3.0/24替换为自己的网段,可以是IPV4或者IPV6。

  • 登入到网页控制台 > Machines

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

Enable All允许转发所有

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

基于安全特性,Tailscale每隔6个月需要重新授权装置,作为「Subnet Router」(子网路由网关),建议停用。

  • 外网的Tailscale装置线路测试

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

可以看到是经节点「Subnet Router」IP 100.101.41.50 接入到内网 20.13.3.1,延迟也很理想。

以下是使用内网IP连入家里的各服务及装置

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

测速

TailScale 实现远端访问整段局域网(ZeroTier另一选择)

结语:

TailSaleZeroTier的使用场景上非常相近,没有那个占优,根据自身网络环境的连线质量较佳去选取。

透过ZeroTier 实现远端访问局域网的设定不是对所有自定网段有效,如今次的20.13.3.0/24的网段失效,Zerotier误判为外网网段而不能访问。而使用TailSale的设定可以实现远端访问网段为20.13.3.0/24的局域网。

参考资料:

来源:https://post.smzdm.com/p/ad2kw7xx/

评论

此博客中的热门博文

远离你身边的煤气灯人

高可用用户中心设计

斐讯N1小钢炮Docker安装OpenWrt/LEDE做旁路由

小程序框架全面测评

如何去做code review

Sniper 一个轻量级 go 业务框架的思考

php照样可以用领域驱动设计DDD四层架构

大项目解决方法:代码解耦与团队解耦

N1 PT下载小钢炮固件下载及安装说明