基础网络配置
为视觉组开发环境配置稳定的外网访问,包括代理客户端、TUN 模式、订阅导入、终端代理和连接验证。
在视觉组的日常开发中,你会频繁访问 GitHub,拉取 Docker 镜像和 ROS 依赖,查阅 OpenCV、ROS 的官方文档,也可能使用 OpenCode 等工具调用外部服务。这些操作对网络连接的稳定性有直接要求。
本文只介绍开发环境所需的基础配置,不讨论网络服务的具体运营方式。完成配置后,你应当能够让浏览器和终端分别访问需要的外部资源,并知道如何定位常见的连接问题。
1. 安装代理客户端
1.1 参考官方文档
客户端的安装和初始化步骤应以官方文档为准:
本文不重复官方文档中的图文安装步骤。请先根据自己的操作系统完成安装,再继续阅读配置部分。
1.2 选择适合系统的版本
下载客户端时,应根据系统架构选择安装包,不要只按文件名猜测:
- Windows 通常选择
x64-setup.exe。 - Ubuntu/Linux 的常见开发机通常选择
amd64.deb,也可以使用AppImage。
安装完成后,在 Settings(设置) -> Clash Core 中选择 Meta 内核。不同版本客户端的界面名称可能略有差异;如果找不到该选项,应先确认客户端版本和官方文档说明。
2. 让终端使用代理
代理客户端启动后,浏览器能够打开 Google,并不代表终端已经能够访问 GitHub。浏览器通常会读取系统代理设置,而 git、rosdep、包管理器和 OpenCode CLI 等工具可能使用自己的网络配置。
2.1 优先使用 TUN 模式
如果客户端支持,推荐使用 TUN 模式:
- 在客户端中安装并开启 Service 模式。
- 开启
TUN Mode。 - 用终端测试需要访问的地址。
TUN 模式通过虚拟网卡接管更底层的网络流量,通常不需要为每个终端工具单独设置代理。开启该模式可能需要管理员权限;如果系统提示授权,应确认客户端来自可信来源后再授权。
2.2 使用终端代理环境变量
如果不能使用 TUN 模式,可以在当前终端会话中设置代理环境变量。以下示例假设客户端的混合端口为 7897:
export http_proxy=http://127.0.0.1:7897
export https_proxy=http://127.0.0.1:7897
端口以客户端实际显示的配置为准,不要直接照抄示例。如果希望每次打开终端都自动设置,可以将配置写入当前 Shell 的启动文件,但不建议在尚未确认端口有效前修改启动文件。
需要注意,部分工具还需要单独配置代理。例如 Git 可以使用:
git config --global http.proxy http://127.0.0.1:7897
git config --global https.proxy http://127.0.0.1:7897
如果之后关闭代理客户端,记得取消这些设置,否则 Git 等工具可能继续尝试连接已经不存在的本地代理:
git config --global --unset http.proxy
git config --global --unset https.proxy
3. 获取并导入配置文件
Clash Verge 负责在本地接收和分发流量,但它本身不提供上游节点。要访问外部网络,还需要一个包含节点和规则的配置文件,通常通过订阅 URL 获取。
订阅来源主要有两类:商业订阅和自建服务。选择哪一种取决于个人需求、预算和维护能力。使用第三方服务时,应了解其服务条款和隐私风险,不要通过不可信的代理传输密码、密钥、令牌或未加密的敏感数据。
3.1 商业订阅
商业订阅通常由服务商维护服务器和节点,用户通过一个订阅 URL 获取配置。它的优点是部署简单、节点较多,遇到单个节点不可用时可以切换;缺点是流量会经过第三方基础设施,服务质量、隐私保护和稳定性取决于服务商。
如果你的主要目标是尽快完成开发环境配置,商业订阅通常比自行维护服务器更省时间。不要把某个服务商视为永久可用的基础设施,订阅地址和节点状态都可能变化。
以下链接仅作为选择示例,不代表对服务质量或安全性的保证:
外部平台可能更换域名、暂停服务或调整注册方式。链接无法访问时,不要在搜索结果中随意下载所谓的客户端或配置文件,应先核对服务商的官方渠道。
3.2 自建服务
自建服务需要在海外云服务商处租用 VPS,再通过 SSH 登录服务器,部署 Xray、Sing-box 等服务端软件,并自行处理安全组、证书、更新和故障排查。
它可以提供更直接的控制权,但也意味着你需要负责:
- 服务器的系统更新和账号安全;
- 防火墙、端口和证书配置;
- 服务端故障和 IP 不可用后的迁移;
- 持续产生的服务器费用。
如果你还没有完成当前的视觉开发任务,不建议把自建服务作为入门阶段的额外项目。只有在明确需要自主维护基础设施,并且能够承担维护成本时,才考虑这条路径。
4. 导入订阅并选择策略
拿到订阅 URL 后,按以下步骤导入:
- 打开 Clash Verge,进入
Profiles(配置)。 - 将订阅 URL 粘贴到顶部输入框,点击
Import(导入)。 - 导入完成后,右键点击配置文件,选择
Update(更新)。 - 进入
Proxies(代理),使用测速功能检查节点延迟。 - 在代理组中选择可用节点,并将运行模式设为
Rule(规则)。
Rule(规则) 模式会根据规则决定不同流量的去向,通常更适合日常开发。Global(全局) 模式会让更多流量经过代理,访问国内的软件源、镜像源时可能增加延迟,因此除非确有需要,不建议长期使用。
测速结果只能说明客户端能够与节点建立连接,不代表 GitHub、Docker Registry 或某个 AI 服务一定可用。配置完成后,还应针对实际使用场景进行测试。
5. 验证开发环境
建议依次检查浏览器、基础 HTTPS 请求和实际开发工具:
curl -I https://github.com
git ls-remote https://github.com/torvalds/linux.git HEAD
如果需要拉取 Docker 镜像或安装 ROS 依赖,再分别测试对应命令。出现问题时,按以下顺序排查:
- 客户端是否正在运行,当前配置是否已启用。
- 当前节点是否可用,是否需要切换节点。
- TUN 模式是否开启,或终端环境变量中的端口是否与客户端一致。
- 目标工具是否有独立的代理配置。
- 是否只有某个域名或服务不可用,而不是整个网络配置失效。
不要把“浏览器能打开网页”作为终端配置完成的唯一依据。
6. 代码和凭据安全
使用第三方代理时,网络流量会经过代理服务商。核心代码仓库应使用 SSH 密钥认证或 HTTPS 连接,并妥善保护以下内容:
- GitHub、云服务和服务器的密码;
- SSH 私钥、API Key、访问令牌;
- 未公开的源代码、配置文件和数据集;
- 包含凭据的环境变量文件。
不要把订阅 URL、访问令牌和私钥提交到 Git 仓库,也不要把它们粘贴到公开的 Issue、群聊或 AI 对话中。网络配置解决的是连接问题,不能替代代码仓库和凭据管理。