v2nodePro là backend node cho V2Board, được xây dựng trên nền xray-core đã được chỉnh sửa.
Tên repository là v2nodePro, nhưng tên binary và service hệ thống hiện tại vẫn là v2node.
Project này kết nối node với panel V2Board tương thích, lấy cấu hình node và danh sách người dùng từ panel, sau đó khởi tạo và quản lý tiến trình Xray ở phía máy chủ.
Các chức năng chính:
- Lấy cấu hình node từ API của panel
- Lấy danh sách người dùng và trạng thái online
- Báo cáo lưu lượng và người dùng online về panel
- Tự động reload khi file cấu hình thay đổi
- Hỗ trợ
pprofđể debug khi cần - Có sẵn script cài đặt và quản lý service trên Linux
Theo phần triển khai hiện tại trong code, panel có thể trả về các giao thức sau:
vmessvlesstrojanshadowsockshysteria2tuicanytls
Runtime hiện tại cũng hỗ trợ các thiết lập liên quan đến TLS, Reality và chứng chỉ được điều khiển từ panel.
- Go
1.26+nếu build từ source - Một panel V2Board tương thích
- Máy chủ Linux nếu bạn dùng script cài đặt đi kèm
Lưu ý:
- Project này đang gọi các endpoint như
/api/v2/server/configvà/api/v1/server/UniProxy/* - Vì vậy trên thực tế bạn nên dùng panel tương thích hoặc bản V2Board đã được chỉnh sửa phù hợp với API này
Cài bằng script đi kèm:
wget -N https://raw.githubusercontent.com/fsh2502/v2nodePro/main/script/install.sh && bash install.shwget -N https://raw.githubusercontent.com/fsh2502/v2nodePro/main/script/caidatserver.sh && bash caidatserver.shCài và tạo luôn file cấu hình:
bash install.sh --api-host https://your-panel.example.com --node-id 1 --api-key your_api_keyĐường dẫn cấu hình mặc định sau khi cài đặt:
/etc/v2node/config.jsonVí dụ cấu hình tối thiểu:
{
"Log": {
"Level": "warning",
"Output": "",
"Access": "none"
},
"Nodes": [
{
"ApiHost": "https://your-panel.example.com",
"NodeID": 1,
"ApiKey": "your_api_key",
"Timeout": 15
}
],
"PprofPort": 0
}Giải thích các trường:
Log.Level: mức log nhưdebug,info,warn,errorLog.Output: đường dẫn file log, để trống sẽ ghi ra stdoutLog.Access: access log của Xray, dùngnoneđể tắtNodes: danh sách node cần tải từ panelNodes[].ApiHost: địa chỉ panelNodes[].NodeID: ID node trên panelNodes[].ApiKey: API key của nodeNodes[].Timeout: thời gian timeout request tính bằng giâyPprofPort: cổng debug local, đặt0để tắt
Xem phiên bản:
v2node versionChạy server:
v2node server -c /etc/v2node/config.jsonTắt chế độ theo dõi file cấu hình nếu cần:
v2node server -c /etc/v2node/config.json -w=falseBuild theo đúng module path hiện tại của repository:
GOEXPERIMENT=jsonv2 go build -v -o build_assets/v2node -trimpath -ldflags "-X 'github.com/fsh2502/v2nodePro/cmd.version=$version' -s -w -buildid="Build đơn giản ở local:
GOEXPERIMENT=jsonv2 go build -o v2node .Nếu bạn cài bằng script đi kèm, có thể quản lý nhanh bằng:
v2nodeHoặc thao tác trực tiếp bằng systemd:
systemctl status v2node
systemctl restart v2node
journalctl -u v2node.service -e --no-pager -fcmd/: điểm vào CLIconf/: nạp cấu hình và theo dõi thay đổi fileapi/v2board/: client giao tiếp với panelcore/: khởi tạo runtime Xray và handler độngnode/: logic điều phối nodescript/: script cài đặt và quản lý
- Module path hiện tại là
github.com/fsh2502/v2nodePro - Runtime vẫn gửi
node_type=v2node - Đường dẫn cấu hình mặc định trên môi trường chạy thực tế là
/etc/v2node/config.json
Xem tại LICENSE.