WSL2增强,内网穿透方案:FRP与ZeroTier
1. FRP:直接对外暴露IP和端口
FRP的原理基本就是端口转发,将外部的流量经过中间服务器转发至本地机器
- 优点
开启frp后,相当于有了公网IP,任意设备均可任意访问
- 缺点
由于寻址多中转了两次中间服务器,就增加了丢包的可能性,并且也增大了单次访问的延迟
1.1. 配置服务端
在Linux服务器上以root用户输入:
1 | cd /root |
运行一下
1 | ./frps --help |
编辑配置:
1 | vim frps.ini |
输入:
1 | [common] |
编辑配置以开机自启:
1 | vim /etc/rc.local |
输入:
1 | nohup /root/frp/frps -c /root/frp/frps.ini & |
保险起见给文件加上权限:
1 | sudo chmod +755 /etc/rc.local |
1.2. 配置客户端
在WSL里新建客户端配置文件
1 | vim /frp/frpc.ini |
编辑配置:
1 | [common] |
拉取docker镜像
1 | docker run --restart=always --network host -d -v /frp/frpc.ini:/etc/frp/frpc.ini --name frpc snowdreamtech/frpc |
2. ZeroTier:架设虚拟局域网
ZeroTier架设了一个虚拟的局域网,该网段内的所有设备均可互相访问
2.1. 注册ZeroTier
2.2. 在Networks新建一个网段
记下这个NETWORK-ID
2.3. 在WSL配置zerotier
WSL内运行
1 | docker run \ |
加入网段,【NETWORK-ID】替换为2.2.记下的NETWORK-ID
1 | docker exec zerotier-one zerotier-cli join 【NETWORK-ID】 |
2.4. 在需要连接的地方下载客户端
https://www.zerotier.com/download/
也同样加入那个NETWORK-ID
2.5. 配置权限
在ZeroTier的Networks页面,进入刚刚新建的网段,在Members属性里面,给里面的成员的Auth属性打上勾,设置好别名
- 优点
基本可以说是直连,速度非常非常快.
安全,不暴漏在公网,只有你能连接进来。
- 缺点
必须在同一网段才可以互相访问,没有对公IP,外部无法无配置直接访问