虚拟局域网
目录
简介
起因是公司两个隔得很远的房间的两个电脑需要在同一个局域网. 公司很多条独立的宽带. 而走线麻烦还丑. 是一个临时需求. 所以就想起来了有虚拟局域网.
有的几个方案:
- ntop/n2n: Peer-to-peer VPN (github.com)
- Tailscale
- ZeroTier | Global Area Networking
- fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. (github.com)
现阶段我简单对比了一下, ZeroTier
是比较简答直观的. 所以就它了
ZeroTier 搭建
部署
ZeroTier
并没有自带 UI 界面. 而有第三方做了集成的镜像. 官方文档和代码 在这里
# 密码123456
docker run --restart=always -d --name ztncui -v /data/ztncui:/opt/key-networks/ztncui/etc -v /data/zt1:/var/lib/zerotier-one -e HTTP_PORT=4000 -e HTTP_ALL_INTERFACES=yes -e ZTNCUI_PASSWD=123456 -p 4000:4000 keynetworks/ztncui
nginx 代理配置
server {
listen 80;
server_name ztncui.kentxxq.com;
return 301 https://$server_name$request_uri;
include /usr/local/nginx/conf/options/normal.conf;
access_log /usr/local/nginx/conf/hosts/logs/ztncui.kentxxq.com.log k-json;
}
server {
http2 on;
listen 443 ssl;
server_name ztncui.kentxxq.com;
include /usr/local/nginx/conf/options/ssl_kentxxq_com.conf;
access_log /usr/local/nginx/conf/hosts/logs/ztncui.kentxxq.com.log k-json;
location / {
proxy_set_header Host $host;
proxy_pass http://10.0.1.152:4000;
}
}
UI 操作
add network
网络名为kentxxq
.- 进入 network, 添加
routes
.target
为10.11.12.0/24
,Gateway
为10.11.12.1
- 下载客户端
- 客户端
join new network
,填入Network kentxxq ID
号8e197f4ce6c0bxxx
- 服务器端: 勾选
Authorized
通过认证. - 给机器指定一个固定 ip. 点击
member id
对应的IP assignment
按钮, 加入 ip10.11.12.100
.
示例如下: