Proxylink — Xrayノードリンク解析ツール (Go実装)

Tool

概要

Proxylinkは、Xray系の「ノードリンク」を解析・生成・変換するための軽量なGo製コマンドラインツールです。リンク(URI)やWireGuardの.conf、あるいはサブスクライブURLから複数のノードを一括で解析し、内部表現(ProfileItem)を経由して別のURIやXray/Hysteria2形式のJSON設定ファイルを出力できます。パイプ/ファイル/サブスクライブの多様な入力に対応しており、簡単な変換作業や自動化スクリプトに組み込みやすい点が特徴です。

GitHub

リポジトリの統計情報

  • スター数: 2
  • フォーク数: 0
  • ウォッチャー数: 2
  • コミット数: 2
  • ファイル数: 3
  • メインの言語: Go

主な特徴

  • 8種のプロトコル対応:VMess / VLESS / Shadowsocks / Trojan / Socks / HTTP / WireGuard / Hysteria2
  • WireGuardの.confファイル解析とURI/JSONへの変換をサポート
  • ProfileItemという中間表現を介してURI生成、Xray/Hysteria2 JSON生成が可能
  • CLIはパイプ/ファイル/サブスクライブURLなど複数入力形態に対応し、バッチ処理に適する

技術的なポイント

Proxylinkは、各種プロキシスキームのURIパースと構成生成を主眼に置き、共通の内部データモデル(ProfileItem)にパース結果を正規化する設計を採用しています。これにより、入力がVMessのURIでもWireGuardの.confでも同一の中間表現に変換でき、そこから別形式の出力(URI/Xray JSON/Hysteria2 JSON)へ容易にマッピングできます。Goで実装されているため、標準ライブラリのJSON処理やネットワーク関連機能を活用した実装が素直に行えて、単一バイナリの配布やクロスコンパイル(例:Linux/ARM64)も簡単です。CLIはストリーム(stdin/stdout)とファイル、サブスクライブURLの取得を組み合わせられるため、CIやスクリプト、Android向けビルドとの連携にも向きます。WireGuardの.conf解析やHysteria2といった比較的新しいプロトコルへの対応は、モダンなプロキシ環境での互換性と運用の柔軟性を高めます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • LICENSE: file
  • Proxylink: dir
    • (Goソース群、URIパーサーや出力ジェネレータ、CLI処理を含む想定)
  • README.md: file

READMEからの抜粋によれば、コンパイル手順も明示されており、Windows/Linux/macOS向けのビルドやGOOS/GOARCH指定によるクロスコンパイル例が記載されています。実行可能な単一バイナリを生成して、さまざまな環境へ配布可能です。

使いどころと運用上の注意

  • 個別ノードの検査やサブスクライブの一括変換を手早く行いたい場合に有用です。たとえば、複数のサブスクライブURLを取得して一括でXray互換JSONへ変換し、プロキシ管理システムへ投入するフローが組めます。
  • WireGuard設定を解析して他プロトコルの表現へ変換する用途にも対応しているため、環境統合や移行作業の補助として役立ちます。
  • セキュリティ上、扱うノード情報や認証情報は慎重に取り扱ってください。また公開リポジトリのため、運用用途での採用前にコードレビューやテストを行うことを推奨します。

まとめ

Xray系リンクの解析・変換を手軽に行えるGo製CLIツール。

リポジトリ情報:

READMEの抜粋:

Proxylink - 代理链接解析器

将 Xray 的节点链接解析用 Go 语言实现。

功能特性

  • 链接解析: 支持 8 种协议 (VMess/VLESS/SS/Trojan/Socks/HTTP/WireGuard/Hysteria2)
  • 配置文件: 支持解析 WireGuard 配置文件 (.conf)
  • 链接生成: ProfileItem → URI
  • 配置生成: ProfileItem → Xray JSON / Hysteria2 JSON
  • 订阅转换: 订阅 URL → 批量解析
  • 命令行工具: 支持管道、文件、订阅等多种输入方式

编译

# Windows
go build -o proxylink.exe .

# Linux/macOS
go build -o proxylink .

# 交叉编译 Linux ARM64 (适合 Android)
GOOS=linux GOARCH=arm64 go build -o proxylink-arm64 .