通过VPS自建虚拟局域网
我们在没有内网穿透,本地机器也没有公网IP,同时无法连接服务器,各大虚拟局域网都很卡顿,联机mod无法使用的情况下可以通过自建虚拟局域网来游玩我的世界,同时这个局域网也适用于其他可以局域网联机的游戏。
需要的软硬件
-
方案一:
- 一个有公网IP的服务器
- 使用ZeroTier连接服务器
- ZeroTier服务器
-
方案二:
-
方案三:
- 一个有公网IP的Windows或Linux设备
- 使用方案一或方案二中的Docker方案
前置准备工作
示例使用的系统是Debian12.10的版本,全程都在命令行中运行。
同时别的系统也可以进行同样的操作,只不过是命令有些许不一样。
如果你不知道自己是什么系统,可以通过安装Fastfetch或者前往设置,在系统信息处查看。
参考文档:
- Docker CE 官方安装文档(Linux)
- Docker Desktop 官方安装文档(Windows、Linux、MAC)
基础环境安装
我们执行下面的命令安装一些软件
1 | sudo apt update |
然后安装Docker
设置 Docker 的 apt 存储库
1 | sudo apt-get update |
安装最新版本Docker
1 | sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin |
通过运行 hello-world 镜像来验证安装是否成功:(这一步可能会因为网络问题无法运行成功,判断方法是只要弹出Unable to find image 'hello-world:latest' locally就算Docker安装完成了)
1 | sudo docker run hello-world |
然后配置一下Docker镜像加速
1 | sudo tee /etc/docker/daemon.json <<EOF |
PS:如果你闲得蛋疼的话可以在配置Docker镜像加速以后再运行一遍sudo docker run hello-world
方案一
服务器安装
克隆一下项目的源码
1 | git clone https://ghfast.top/https://github.com/xubiaolin/docker-zerotier-planet.git |
然后进入项目
1 | cd docker-zerotier-planet |
然后运行项目脚本
1 | ./deploy.sh |
随后会弹出这样的界面
1 | 欢迎使用zerotier-planet脚本,请选择需要执行的操作: |
然后输入1进行安装
然后端口默认就可以了。
安装完成以后是这样的:
然后我们复制链接下载planet跟moon文件。
创建网络
访问 http://你的ip:3443 进入controller页面
使用默认账号为:admin
默认密码为:password
登录后点击”Networks”菜单,然后点击”Add Network”按钮创建新网络。
在创建网络页面中,输入一个便于识别的网络名称,其他选项可保持默认。点击”Create Network”按钮完成创建。
创建成功后系统会自动生成一个网络ID,这个ID在后续客户端配置时会用到,点击Network,在网络名称后面括号里就是你的ID
在Network里点击easy setup,然后点击Generate network address,然后点击Submit就可以了。
客户端连接
可以查看ZeroTier官方文档或者查看ZeroTier服务器文档
授权设需要在http://你的ip:3443 的Network里查看并授权。
方案二
服务器安装
我们执行下面的命令:
1 | sudo apt update |
随后执行命令:
1 | vim /etc/headscale/config.yaml |
然后将headscale_url修改为服务器IP。
然后启动handscale
1 | sudo systemctl enable --now headscale |
然后创建一个用户
1 | headscale user create name |
查看用户列表
1 | headscale user list |
客户端连接
可以查看Tailscale 基础教程:Headscale 的部署方法和使用教程或者Headscale文档
连接的过程大概是这样的:
连接服务器:
注册节点:
连接成功:
方案三
方案三的操作步骤其实和一二的差别不大,只不过一个是在服务器部署,一个是在本地部署而已。所以就拿Windows和方案二来进行演示了,因为方案二也有Docker安装的办法,也正好对应了一开始所说的“别的系统也可以进行同样的操作,只不过是命令有些许不一样”
首先我们要确认自己有没有公网IP,如果不知道自己的公网IP是多少,或者不知道自己有没有公网IP,可以win+r然后输入cmd并回车,最后在终端输入下面这个命令查看:
1 | curl cip.cc |
当然了,这个IP也不一定是你自己的,还需要输入下面这个命令查看:
1 | ipconfig |
如果可以看到和curl cip.cc里输出的IP,那就是你有公网IP,反则就是没有。
服务器安装
首先我们去Docker Desktop下载一个Docker,然后去Git下载一个64-bit Git for Windows Setup,将Docker和Git安装完成,
然后新建一个文件夹,然后右键并选择在终端中打开,然后输入下面的命令:
1 | mkdir .\headscale\config |
然后修改headscale_url为你的公网IP或者0.0.0.0
修改 listen_addr 为 0.0.0.0
1 | notepad ./headscale/config/config.yaml |
然后创建一个一个Docker compose文件
1 | notepad docker-compose.yml |
然后输入下面的内容
1 | services: |
然后运行命令:
1 | docker-compose up |
稍等片刻以后出现下面的输出就说明你已经安装完成了。
然后新建一个终端,输入下面的命令:
1 | docker exec -it headscale headscale user create 你的用户名 |

客户端连接
可以查看Tailscale 基础教程:Headscale 的部署方法和使用教程或者Headscale文档
连接的过程大概是这样的:
连接服务器:
注册节点:
连接成功:


