Skip to content

adittq/v2rayN_Dw

v2rayN_Dw

CI Release

v2rayN_Dw 是基于 v2rayN 的 macOS 可运行封装,提供 App 启动方式、本地 .NET 运行时支持、核心资产路径校正,以及系统代理脚本集成,开箱即可运行。

主要特性

  • macOS 应用封装:提供 v2rayN.app,双击即可启动
  • 启动脚本修复:确保工作目录指向 net8.0,避免找不到配置和核心
  • 核心资产校正:自动识别 Xray 所需 geoip.dat/geosite.dat
  • 系统代理脚本:集成 macOS 代理设置与清理脚本,退出时自动清理
  • 运行日志与问题定位:界面误报与核心运行分离,便于快速排查

目录结构

v2rayN/
├─ v2rayN-master/                     上游源码目录
│  ├─ v2rayN/v2rayN.Desktop/          Avalonia 桌面工程
│  ├─ ServiceLib/                     业务与核心管理
│  └─ ...
├─ v2rayN.app/                        macOS 应用封装(本地运行生成)
│  ├─ Contents/MacOS/v2rayN_launcher.sh    启动脚本
│  └─ Contents/Info.plist
├─ .gitignore
└─ README.md

截图

v2rayN

快速开始

  • 方式一:双击运行

    1. 打开 v2rayN.app
    2. 在主界面选择节点并激活
    3. 程序会自动设置系统代理,退出时自动清理
  • 方式二:命令行运行

    1. 进入目录:

      cd bin/Debug/net8.0
    2. 启动:

      dotnet v2rayN.dll

构建与打包

  • 本地构建(.NET 8):

    cd v2rayN-master/v2rayN/v2rayN.Desktop
    dotnet restore
    dotnet build -c Release
  • 发布为 macOS 自包含(示例,按需调整 Runtime Identifier):

    dotnet publish -c Release -r osx-arm64 --self-contained true

下载

下载与安装(平台)

  • Android
    • 在 Releases 下载 v2rayN-android-<版本>.apk
    • 启用“未知来源”,直接安装
    • 校验示例:
      shasum -a 256 v2rayN-android-<版本>.apk
      cat v2rayN-android.sha256
  • iOS 模拟器(iPad 兼容)
    • 在 Releases 下载 v2rayN-ios-simulator-<版本>.zip 并解压
    • 在 macOS 打开 Xcode → Window → Devices and Simulators → 选择 iOS Simulator,运行解压后的模拟器包
  • Windows/Linux/macOS 桌面
    • 下载对应 zip 包并解压,按本 README 的“快速开始/构建与打包”章节运行

系统代理脚本

  • 设置或清理系统代理(macOS):

    # 清理代理(断网时恢复直连)
    ./binConfigs/proxy_set_osx_sh.sh clear
    
    # 设置代理(示例:127.0.0.1:10808)
    ./binConfigs/proxy_set_osx_sh.sh set 127.0.0.1 10808

相关代码参考:

  • ProxySettingOSX.cs
  • SysProxyHandler.cs

常见问题

  • 运行 Core 失败(界面提示)但实际可用:

    • 这是界面层状态检测的误报;若终端或日志显示大量 [socks -> proxy] accepted,说明核心已正常转发。
    • 核心启动与校验逻辑见:
      • CoreManager.cs
  • 延迟始终 -1ms 或无法连接:

    • 检查节点 SNI 是否为有效域名(非备注信息)

    • 清理系统代理后重新启动程序:

      v2rayN-master/v2rayN/v2rayN.Desktop/bin/Debug/net8.0/binConfigs/proxy_set_osx_sh.sh clear
  • 核心资产路径问题:

    • Xray 会使用 geoip.dat/geosite.dat,本封装已放置在 bin/xraybin 根目录,确保可识别。
    • 环境变量参考:XRAY_LOCATION_ASSET(定义见 Global.cs)

部署

  • 仓库地址:https://github.com/adittq/v2rayN_Dw
  • 已针对 GitHub 大文件限制进行清理,建议将打包产物发布到 Releases,而非直接提交到仓库。

iOS 真机安装(可选)

  • 需要 Apple 开发者证书与描述文件,用于签名 IPA
  • 在仓库 Settings → Secrets and variables → Actions 添加:
    • APPLE_P12:Base64 编码的 .p12
    • APPLE_P12_PASSWORD:证书密码
    • APPLE_MOBILEPROVISION:Base64 编码的 .mobileprovision
  • 完成后我将更新工作流生成可安装的 IPA 并发布到 Releases

致谢与许可

  • 上游项目:2dust/v2rayNXTLS/Xray-core
  • 本仓库为运行封装与脚本修复,源代码版权归原作者所有;请遵循上游许可协议在合法合规前提下使用本项目。

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors