<br />
<br />
基于Easytier开源方案实现免费内网穿透-虚拟局域网
方案简介:
这是一个简单、安全、去中心化的内网穿透 SD-WAN 异地组网方案,使用 Rust 语言和 Tokio 框架实现。支持各个系统平台构建使用,通过组建一种异地虚拟局域网的方式,实现使用外网访问无公网IP的NAS、公网SMB、游戏联机等目的,本教程仅涉及通过其组网功能实现飞牛NAS的内网穿透功能。
主要针对以下需求:多个设备分布在不同网络环境及系统环境,需要通过网页或APP在外网连接飞牛NAS,没有公网IP也没有域名,想简单、高速、免费的使用连接功能。
官网网址:简介 | EasyTier
特点及亮点:
操作简便省心:
一次配置成功后,基本无需调整。各设备具有固定的虚拟IP地址,好记忆、好管理。
跨平台支持:
MacOS/Linux/Windows/FreeBSD/Android,未来将支持 IOS(目前可以通过WireGuard实现接入)。可执行文件静态链接,部署简单。
无公网IP组网:
支持利用共享的公网节点组网(提供免费低带宽公共服务器搭桥,打洞成功后即为P2P高速连接)。同时也支持用自己的公网IP自建服务端,完全私有化部署。
IPV6支持:
支持利用 IPV6 组网。
去中心化:
无需依赖中心化服务,节点平等且独立。各节点可以互相通信。
安全:支持利用 WireGuard 加密通信,也支持 AES-GCM 加密保护中转流量。
高性能:全链路零拷贝,性能与主流组网软件相当,打洞成功后没有第三方带宽限制。
NAT穿透:支持基于 UDP 的 NAT 穿透,即使在复杂的网络环境下也能建立稳定的连接。
子网代理(点对网):节点可以将可访问的网段作为代理暴露给虚拟网,允许其他节点通过该节点访问这些子网,实现公网访问与飞牛在同一子网的其他设备。
智能路由:根据流量智能选择链路,减少延迟,提高吞吐量。
TCP支持:在 UDP 受限的情况下,通过并发 TCP 链接提供可靠的数据传输,优化性能。
高可用性:支持多路径和在检测到高丢包率或网络错误时切换到健康路径
安装方式:
1、飞牛端的安装配置:
打开飞牛桌面Docker,点击Compose,点击右上角新增项目,输入自定义项目名称,选择项目路径,点击创建.yml,粘贴代码,勾选创建项目后立即启动,点击完成。
services:
watchtower: #用于自动更新easytier镜像,若不需要请删除这部分
command: --interval 3600 --cleanup --label-enable
container_name: watchtower
environment:
- TZ=Asia/Shanghai
- WATCHTOWER_NO_STARTUP_MESSAGE
image: containrrr/watchtower
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
easytier:
restart: always
labels:
com.centu**inklabs.watchtower.enable: "true"
privileged: true
mem_limit: 0m
container_name: easytier
hostname: easytier #设备名,可自定义
network_mode: host
volumes:
- /etc/easytier:/root
environment:
- TZ=Asia/Shanghai
image: easytier/easytier:latest
command: -i <虚拟ipv4地址> --network-name <网络名称> --network-secret <网络密码> -e tcp://public.easytier.top:11010 -l 11010
代码解释:
< >及内容是需要自己替换掉的。
Watchtower服务用于创建自动更新easytier的项目,如果不需要可以删除这一段。
hostname后填写设备名,可自定义(大小写英文)。
虚拟ipv4地址:指定本节点(也就是本设备)在将组建的虚拟局域网中的地址,如10.114.114.1,预加入同虚拟局域网的其他节点地址需要在相同网段,如10.114.114.2,不可重复。
网络名称:仅限英文。
网络密码:仅限英文。各个节点使用相同的名称和密码加入同一虚拟局域网。
Tcp及后面的一段网址是easytier提供的免费公共服务器,方便没有公网IP组网。
下图即为构建项目完成
后期如何更改飞牛NAS中easytier连接的虚拟局域网配置:
停止容器后,在容器管理中点击项目的详情,在容器设置中最底部的命令中更改配置
2、安卓端的安装配置:
在Releases · EasyTier/EasyTier下载.apk安装包在手机上安装,打开软件后进行配置
点击添加新网络,按照之前在飞牛中的配置进行填写,点击运行网络即可运行
例:
在高级设置中可以更改设备名。
使用虚拟局域网IP连接飞牛APP:
在运行网络后,打开飞牛APP登录页面,第一栏填写飞牛配置easytier时设置的IP地址,输入飞牛用户名密码即可连接。
例:
3、Windows端的安装配置:
在Releases · EasyTier/EasyTier下载“*.windows.zip”文件解压安装,按照统一的配置进行填写并开启网络,即可在浏览器中使用虚拟局域网IP加飞牛端口号连接飞牛NAS。
配置效果:
下图为正常连接后的例图:
下图为在山东移动5G流量环境下使用安卓手机通过异地组网P2P实测飞牛APP下载文件的速度:
更多功能:
请在EasyTier查询使用手册探索更多功能。本帖仅供论坛分享功能使用。