Clash 配置技巧
💡 Clash 配置技巧 为所有节点生成本地 SOCKS5 代理端口 功能说明 通过 Clash 的 JavaScript 预处理脚本,可以将机场的所有节点自动映射为本地的 SOCKS5 代理端口。这样每个节点都有固定的本地端口,方便在 SSH、终端工具或其他应用中直接使用。 使用场景 需要为不同的服务指定不同的代理节点 在 SSH 配置中为不同主机分配独立的代理端口(参考 SSH 走代理) 使用命令行工具时需要指定特定节点的代理 配置脚本 在 Clash 的预处理脚本(Preprocessor Script)中添加以下代码: function main(config) { // 1. 初始化 listeners 数组,添加固定端口的自定义节点 config.listeners = [ { name: "default-111", type: "mixed", // mixed 类型支持 HTTP 和 SOCKS5 port: 12345, address: "127.0.0.1", udp: true, proxy: "xxx-111" // 绑定到指定的节点名称 }, { name: "default-777", type: "mixed", port: 12346, address: "127.0.0.1", udp: true, proxy: "xxx-777" } ]; // 2. 设置动态代理节点的起始端口 const startPort = 20000; // 3. 过滤节点:排除不需要的节点 const filteredProxies = (config.proxies || []).filter(proxy => !(proxy.name.includes("免费") || proxy.name.includes("xxx") || proxy.name.includes("落地") || proxy.name.includes("下载")) ); // 4. 遍历过滤后的节点,为每个节点创建独立的本地代理端口 filteredProxies.forEach((proxy, index) => { config.listeners.push({ name: `mixed-${proxy.name}`, // 使用前缀避免名称冲突 type: "mixed", port: startPort + index, // 端口号递增 proxy: proxy.name, // 强制绑定到该节点 address: "127.0.0.1", udp: true }); }); // 5. 输出日志信息,便于调试 console.log(`过滤完成:排除了"免费"的节点,共生成 ${filteredProxies.length} 个端口。`); return config; } 配置说明 固定节点配置(第 1 步) ...