一切皆留「轨迹」

VNT-点对点P2P组局域网

Mar 06,2026
21
0

VNT :一个简单、高效、能快速组建虚拟局域网的工具

VNT 官网:https://rustvnt.com/

服务端项目地址:https://github.com/vnt-dev/vnts/releases

客户端项目地址:https://github.com/vnt-dev/vnt/releases

图形化客户端项目地址:https://github.com/vnt-dev/VntApp/releases/

自建资源下载链接:https://gsm.guiji20.top/sharing/6DD1pFpP5

(iOS端使用WireGuard客户端接入VNT网络)

一键安装脚本:

bash -c "$(curl -sSL https://f.guiji20.top/res/vnt/quick_start.sh | tr -d '\r')"

(可选)(Linux)服务器安装中继服务器

(VNT默认使用VNT开发者提供的中继服务器,若需要可以自己按照以下内容搭建自己的中继服务器,需要有个能公网IP访问的服务器)

1 准备一台电脑做中继服务器

2 下载文件:vnts-x86_64-unknown-linux-musl-v1.2.12.tar.gz

3 上传文件至中继服务器自定义目录,以/root/vnt目录为例

4 执行命令:

cd /root/vnt

tar -vxzf vnts-x86_64-unknown-linux-musl-v1.2.12.tar.gz

5 创建开机启动和systemctl管理执行以下命令:

vi /etc/systemd/system/vnts.service

按i进入输入模式

输入以下内容:

[Unit]

Description=VNT Server

After=network.target

[Service]

Type=simple

WorkingDirectory=/root/vnt

ExecStart=/root/vnt/vnts --port 8080 --gateway 10.10.10.1 --log-path /dev/null

Restart=always

RestartSec=10

User=root

[Install]

WantedBy=multi-user.target

按ESC退出编辑

再输入:wq!保存并退出

其中ExecStart运行命令后的可选配置说明:

Options:
  -p, --port <PORT>                指定端口,默认29872
  -w, --white-token <WHITE_TOKEN>  token白名单,例如 --white-token 1234 --white-token 123
  -g, --gateway <GATEWAY>          网关,例如 --gateway 10.10.10.1 客户端设置自动IP的时候就会用这个网段
  -m, --netmask <NETMASK>          子网掩码,例如 --netmask 255.255.255.0
  -f, --finger                     开启指纹校验,开启后只会转发指纹正确的客户端数据包,增强安全性,这会损失一部分性能
  -l, --log-path <LOG_PATH>        log路径,默认为当前程序路径,为/dev/null时表示不输出log
      --wg <WG_SECRET_KEY>         wg私钥,使用base64编码
  -h, --help                       Print help information
  -V, --version                    Print version information

6 开启vnc中继服务,添加开机启动 等命令

# 重新加载 systemd 配置

systemctl daemon-reload

# 设置开机自启

systemctl enable vnts.service

# 启动服务

systemctl start vnts.service

# 查看运行状态

systemctl status vnts.service

7 防火墙开放vnt服务的端口8080

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=8080/udp --permanent
firewall-cmd --reload

8 (可选)WEB查看中继服务器组网信息,访问:http://中继服务器IP:29870 (若不能访问去检测端口是否开放)默认账密:admin/admin

VNT客户端使用和配置

1 编辑配置文件config.yml:

server_address: 192.168.1.6:8086 #中继服务器地址
token: xxxx #组网token 同一token在同一局域网
device_id: xxxx #当前设备id 各个设备的设备ID不能重复
name: xxxx #当前设备名称
password: xxxx #密码 自定义一个密码,多个设备都设这一个密码才能通信
ip: 10.10.0.11 #指定虚拟ip
mtu: 1350 #客户端加密用1410 不加密默认1450, 建议使用1350解决访问WEB服务一直加载不出来的问题
server_encrypt: true #服务端加密
finger: false #关闭数据指纹
cmd: false #关闭控制台输入
disable_stats: false # 为true表示关闭统计
allow_wire_guard: false # 为true则表示允许接入wg

2 下载文件:

Windows 下载vntApp-windows-1.2.13.zip

Android 下载:vntApp-android-1.2.13.apk

Linux 下载:vnt-x86_64-unknown-linux-musl-v1.2.17.tar.gz

(Windows/Android 有图形化界面不过多解说)

3 Linux系统使用VNT客户端,上传vnt-x86_64-unknown-linux-musl-v1.2.17.tar.gz和解压文件, 以/root/vnt目录为例:

cd /root/vnt
tar -zxvf vnt-x86_64-unknown-linux-musl-v1.2.17.tar.gz

4 设置开机启动和systemctl管理:

vi /etc/systemd/system/vnt-client.service

按i进入输入模式,输入以下内容:

[Unit]

Description=VNT Client - P2P VPN

After=network.target

Wants=network.target

[Service]

Type=simple

WorkingDirectory=/root/vnt

ExecStart=/root/vnt/vnt-cli -f config.yml

Restart=always

RestartSec=10

User=root

Group=root

# 日志限制

StandardOutput=journal

StandardError=journal

LimitNOFILE=65536

[Install]

WantedBy=multi-user.target

按ESC退出编辑

再输入:wq!保存并退出

5 上传配置好的config.yml文件到/root/vnt目录

6 运行和添加开机启动

# 重新加载 systemd 配置

systemctl daemon-reload

# 设置开机自启

systemctl enable vnt-client

# 启动服务

systemctl start vnt-client

# 查看运行状态

systemctl status vnt-client