iStoreOS安装Tailscale内网穿透,并通过VPS出口节点功能实现科学上网

iStoreOS安装Tailscale内网穿透,并通过VPS出口节点功能实现科学上网
MoshineTailscale是一款简单易用的VPN内网穿透工具,基于WireGuard协议,将不同网络环境的设备组成一个虚拟局域网,使其可以互相访问。无需复杂的设置就能轻松实现多平台设备(Windows、macOS、Linux、iOS、Android)互联,无论是远程访问家庭设备、协作办公,还是保护网络隐私,Tailscale都能提供便捷且高效的解决方案。通过身份认证系统(如 Google、Microsoft 登录),你可以轻松管理网络设备,确保连接安全可靠。
准备工作
在安装Tailscale之前,需要做一些准备工作:
需要准备一个邮箱(支持:谷歌Gmail邮箱、微软outlook邮箱、微软hotmail邮箱、苹果Apple邮箱)或者一个账号(支持:github账号、passkey账号)。
安装好iStoreOS软路由系统,并设置好网络环境,保证能正常运行和访问。
内网穿透设置
[!info]
iStoreOS固件版本24.10.x带应用商店的全功能版,主路由版、旁路由版均可。如果iStoreOS固件版本低于该版本的建议升级到此版本或者升级到最新的版本。
安装Tailscale
1、在左边菜单点击iStore — 全部软件,搜索栏输入tailscale回车,在下图位置显示的Tailscale标签卡内点 安装。

2、安装完成后点右上角的绿色按钮关闭本窗口。
3、在左边菜单 服务 就可以看到Tailscale选项,如果没有就刷新一下页面应该就会出现了。

配置Tailscale
1、在左边菜单依次点击 服务 — Tailscale,此时右边显示的服务状态为 未运行;由于直接在图形界面设置,会出现一些奇奇怪怪的问题,所以需要到命令行去设置。
2、点击左边菜单的 服务 — 终端 ,输入iStoreOS的超级管理员账号root以及密码,进入root状态下(也可以在电脑上使用Finalshell、Xshell、Putty之类的软件登录到iStoreOS的root状态)
[!caution]
在终端中输入密码时,是不会有任何显示的,这是正常的,只要确认密码输入是正确的,直接回车即可。
3、输入以下命令回车,启动Tailscale。
1 | /etc/init.d/tailscale start |
4、设置本设备的局域网网段并将设备设置为Exit-Node出口节点,在终端中输入下面的命令。
1 | tailscale up --accept-dns=false --advertise-routes=192.168.100.0/24 --advertise-exit-node |

[!warning]
如果iStoreOS内网IP不是192.168.100.X网段,需要将命令中的IP修改成局域网实际的网段;例如:iStoreOS的内网IP是10.10.10.222,那么命令应该写成tailscale up --accept-dns=false --advertise-routes=10.10.10.0/24 --advertise-exit-node,注意命令行中的空格!
5、运行后会弹出一个链接地址,提示我们登录。
6、点击或在浏览器中输入链接地址后,会弹出需要登录的窗口,输入准备好的E-Mail点击Sign in。

7、首次登陆会出现一个安装向导页面,按图下图所示填写后点击Next:Add your first device,然后关闭页面,重新点击或在浏览器中输入链接地址登陆。
8、登录账号后,点Connect连接设备。
9、登录成功,耐心等待一会,会自动进入Tailscale的管理后台;如果没有自动进入后台,可以点击页面中visit the console进入Tailscale的管理后台后台。
[!tip]
如果此处再次出现添加设备的安装向导,直接点击页面下方的Skip this introduction即可跳过向导页,进入管理后台页面。
8、在Tailscale的管理后台,可以看到当前组网的设备清单,其中名称为iStoreos的就是刚刚添加进入的软路由,并列出了Tailscale给设备在虚拟内网中分配的内网IPv4地址;右侧显示绿色圆点和Connected就表示该设备正常联网了。
9、点···图标,选择Disable key expiry,设置该设备的密钥为永不过期。看到该设备下方有显示Expiry disabled说明设置成功。
10、再次点···图标,选择Edit route settings,设置该设备的内网路由。
11、在192.168.100.0/24(在步骤4的命令中你写的网段是什么,这里就显示什么)和Use as exit node这两处打勾,再点Save。
12、回到iStoreOS的终端页面,输入下面的命令回车,设置Tailscale开机自动启动。
1 | /etc/init.d/tailscale enable |

13、输入下面的命令回车,查看Tailscale是否已经生成开机自动启动的服务,看到有/etc/rc.d/S**tailscale字样(S后面的数字不一定跟我的一样)就表示设置成功。
1 | ls /etc/rc.d/S*tailscale* |
配置iStoreOS网络接口
1、添加网络接口
通过iStoreOS创建一个新的非托管接口:网络 — 接口 — 添加新接口,

按下面的内容配置对应参数后点击 创建接口。
- 名称:tailscale
- 协议:静态地址
- 设备:tailscale0
在接口 — tailscale 页面下补充填写下列参数后点击 保存;
- IIPv4地址:100.68.14.112(tailscale分配给软路由设备的内网地址)
- IPv4子网掩码:255.0.0.0
最后点击 保存并应用
2、创建防火墙
在iStoreOS创建新的防火墙区域:网络 — 防火墙 — 常规设置 — 区域 列表中点击 添加。

- 按下面的内容在常规设置标签页中配置对应参数,具体参数参考下图。
- 名称:tailscale
- 入站数据: 接受 (ACCEPT)
- 出站数据: 接受 (ACCEPT)
- 区域内转发: 接受 (ACCEPT)
- IP动态伪装:勾选
- MSS钳制:勾选
- 涵盖的网络:tailscale
- 允许转发到目标区域:选择您的LAN(以及其他内部区域,如果计划使用此设备作为出口节点则还需要添加WAN)
- 允许源区域转发:选择您的LAN(以及其他内部区域或如果不想将LAN流量路由到其它Tailscale主机,则留空)
- 参考下图在连接跟踪设置标签页中配置允许“无效”流量:
on(只有开启这个开关,Tailscale才能从外部访问) ;然后单击保存。
3、编辑Lan区域转发防火墙
在iStoreOS中创建新的防火墙区域:网络 — 防火墙 — 区域 — “lan” 编辑。
按下面的内容在常规设置标签页中配置对应参数,具体参数参考下图。
- 入站数据: 接受 (ACCEPT)
- 出站数据: 接受 (ACCEPT)
- 区域内转发: 接受 (ACCEPT)
- 允许转发到目标区域:包含Tailscale
- 允许源区域转发:包含Tailscale
最后点击 保存并应用。
此时,iStoreOS软路由下所有子网设备,就都接入了Tailscale的虚拟局域网,并能从外网直接通过设备的子网IPv4地址访问了。
[!caution]
要从外网访问iStoreOS软路由及其所有子网设备,外网的设备必须要安装Tailscale客户端,并登陆同一个Tailscale账户!
开启Exit-Node科学上网功能
要开启科学上网能能,需要一台在外网环境下的VPS服务器;在VPS上安装Tailscale并开启Exit-Node出口节点,让流量都从VPS上的Tailscale Exit-Node出口节点走,从而实现科学上网。
添加Tailscale仓库与GPG密钥
1、Tailscale仓库使用GPG签名确保包完整性,需先导入密钥;用SSH工具连接登陆VPS主机,依次添加Tailscale的包签名密钥和仓库。
密钥
1 | curl -fsSL https://pkgs.tailscale.com/stable/debian/bookworm.noarmor.gpg | tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null |
仓库
1 | curl -fsSL https://pkgs.tailscale.com/stable/debian/bookworm.tailscale-keyring.list | tee /etc/apt/sources.list.d/tailscale.list |
2、在VPS主机上更新包索引并安装Tailscale客户端。
1 | apt update && apt install tailscale -y |
登录Tailscale并配置Exit-Node出口节点
1、Tailscale 依赖 tailscaled 后台服务,需确保其运行并开机自启。
1 | systemctl enable --now tailscaled |
2、登录并加入Tailscale网络
1 | tailscale up |
此时会输出一个登录链接(如 https://login.tailscale.com/a/xxxxxx ),需在浏览器中打开并完成身份验证(支持 Google、GitHub、Microsoft 等账号);验证通过后,终端会显示成功信息。

[!caution]
若设备无图形界面(如VPS服务器),可将链接复制到本地浏览器登录。所有要组网的设备必须登录同一个账号才可以组网;登录后设备会自动加入网络。
3、在VPS主机上打开终端会话并启用IP转发。
如果Linux系统有目录/etc/sysctl.d,使用下面的命令:
1 | echo 'net.ipv4.ip_forward = 1' | tee -a /etc/sysctl.d/99-tailscale.conf |
否则,则使用如下命令:
1 | echo 'net.ipv4.ip_forward = 1' | tee -a /etc/sysctl.conf |
4、将设备设置为Exit-Node出口节点。
1 | tailscale set --advertise-exit-node |
5、在控制台管理的页面的列表中找到VPS设备。此时设备会显示Exit-Node出口节点标识。
6、点击···图标,然后选择 编辑路线设置。
7、勾选Exit-Node出口节点的选项框,然后选择保存。
8、再次点击···图标,然后选择Disable key expiry,设置该设备的密钥为永不过期。
现在,所有Tailscale虚拟局域网内的设备将Exit Node设置为VPS的机器名称并点击Enable,就可以实现数据流量从VPS走了。








