WWW.YOUINFO.SITE
标签聚合 共存

/tag/共存

LinuxDo 最新话题 · 2026-05-26 10:43:56+08:00 · tech

最开始用 NewAPI 管理中转系统,感觉它的重试功能不太顺手,也有可能是我使用方式不对。后续切换到 Sub2API,又常在 CC-Switch 中遇到 403 报错无法使用。 我尝试把 Sub2API 作为 NewAPI 的后端协同运行,但二者通过 Docker 部署时,会各自新建 PG 和 Redis 实例,不仅体验很差,数据备份也很麻(原本数据库是2个,在docker里备份太不优雅了,在宿主机就方便了直接宝塔定时备份,迁移再也不担心重新开局了)。搜了一圈也没找到宿主机部署数据库的相关方案,便自己动手折腾,把过程记录下来分享给大家。(以上通过豆包润色 ) 以下通过Gemini润色 部署架构说明 基础设施 :宝塔面板(安装有 PostgreSQL 17/18+、Redis 8.x+) New-API :通过 Docker Compose 部署, 不 自带数据库,穿透访问宿主机。 Sub2API :通过官方系统脚本直接安装在宿主机(默认路径 /opt/sub2api ),服务由 systemd 管理。 网络安全 :不暴露 5432 和 6379 到公网,仅内部安全互通。 第一步:准备宝塔宿主机环境 1. 配置宿主机 Redis 宝塔面板 → 软件商店 → Redis → 设置 。 选择 配置文件的文本 ,修改以下两项: 找到 bind 127.0.0.1 ,修改为 bind 0.0.0.0 找到 requirepass ,在后面设置你的强密码(如: MyRedisPass123 )。 保存并 重启 Redis 服务。 2. 创建 PostgreSQL 数据库 宝塔面板 → 软件商店 → 打开 PostgreSQL管理器 。 在 数据库 标签页,点击 添加数据库 ,分别创建两个数据库: 数据库1 :库名 newapi ,用户名 newapi ,设置密码(例如: PassNew123 ), 「访问权限」必须选择「所有人」 。 数据库2 :库名 sub2api ,用户名 sub2api ,设置密码(例如: PassSub123 ), 「访问权限」必须选择「所有人」 。 3. 配置 PostgreSQL 允许 Docker 访问 在 PostgreSQL管理器 设置中,点击 「配置修改」 : 查找 listen_addresses ,确保修改为: listen_addresses = '*' 点击 「pg_hba.conf」 ,在文件的 最末尾另起一行 ,加入以下放行 Docker 大网段的规则: host all all 172.16.0.0/12 md5 保存并在「服务状态」里 重启 PostgreSQL 服务。 第二步:彻底解决 PostgreSQL 高版本 Schema 权限坑 由于 PostgreSQL 15+ 以上版本收紧了安全策略,新创建的用户默认无法在 public 空间建表。我们需要手动在 SSH 终端以管理员身份赋予它们权限: 在服务器 SSH 终端中, 严格按照以下两段顺序执行 : # 1. 解决 newapi 数据库权限 sudo -i -u postgres psql -d newapi GRANT ALL ON SCHEMA public TO newapi; \q # 2. 解决 sub2api 数据库权限 sudo -i -u postgres psql -d sub2api GRANT ALL ON SCHEMA public TO sub2api; \q 第三步:部署 Docker 版 New-API 在服务器上创建目录: mkdir -p /www/wwwroot/new-api && cd /www/wwwroot/new-api 创建 docker-compose.yml 文件,填入以下优化后的精简内容: version: '3.4' services: new-api: image: calciumion/new-api:latest container_name: new-api restart: always command: --log-dir /app/logs ports: - "3000:3000" volumes: - ./data:/data - ./logs:/app/logs environment: - DB_ENGINE=postgres # ⚠️ 必须修改:换成你宝塔实际的 newapi 数据库密码 - SQL_DSN=postgres://newapi:你的newapi库密码@host.docker.internal:5432/newapi?sslmode=disable # ⚠️ 必须修改:换成你宝塔实际的 Redis 密码 (/0 代表使用 Redis 的 0号库) - REDIS_CONN_STRING=redis://:你的Redis密码@host.docker.internal:6379/0 - TZ=Asia/Shanghai - ERROR_LOG_ENABLED=true - BATCH_UPDATE_ENABLED=true - NODE_NAME=new-api-node-1 healthcheck: test: ["CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' || exit 1"] interval: 30s timeout: 10s retries: 3 extra_hosts: - "host.docker.internal:host-gateway" # 🔑 核心:允许容器穿透访问宿主机别名 运行命令启动: docker compose up -d 验证日志:输入 docker logs new-api ,看到最后停在 server started on [::]:3000 即代表成功。 第四步:部署宿主机版 Sub2API 在 SSH 终端任意位置,直接运行官方一键脚本安装: curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/install.sh | sudo bash 启动并设置开机自启: sudo systemctl enable sub2api --now 暂时 不需要 在宝塔或云服务器放行 8080 端口。我们直接去宝塔面板添加一个站点(如 sub.yourdomain.com ),在站点设置里添加一个 反向代理 : 目标URL 填: http://127.0.0.1:8080 在浏览器中访问你的域名 https://sub.yourdomain.com ,会进入网页设置向导,请按下表填写: PostgreSQL 主机 : 127.0.0.1 (因为就在本地,直接填 127 即可) PostgreSQL 端口 : 5432 数据库名/用户名/密码 :输入宝塔创建的 sub2api 数据库的信息。 Redis 主机/端口 : 127.0.0.1 / 6379 Redis 密码 :你的宿主机 Redis 密码 Redis DB : 1 ( 核心:输入 1 ,完美和 New-API 的 0 号库错开,互不干扰) 点击提交,创建管理员账号。 第五步:打通互通链路(New-API 内部调用 Sub2API) 由于 new-api 在 Docker 容器内, sub2api 在宿主机上,当你在 New-API 后台添加 Sub2API 作为渠道或后端时,你有以下两种 最佳调用路径 选择: 推荐方式:走纯内网安全回环(无需暴露端口,速度极快) 在 New-API 后台添加渠道或配置时: 代理/BASE_URL 填写: http://host.docker.internal:8080 原理 :我们在 Docker 中注入的 host.docker.internal 会让 Docker 流量直接打回宿主机的 8080 端口,不经过外网防火墙,安全且延迟低。 备选方式:走标准公网域名访问 在 New-API 后台添加渠道或配置时: 代理/BASE_URL 填写: https://sub.yourdomain.com (你的 Sub2API 域名) 原理 :Docker 容器内的请求会发送到公网/DNS,经过宝塔的 Nginx 反向代理证书解析后,再转给宿主机的 8080 。 第六步:最终网络安全检查(极其重要) 因为我们在宝塔中把 PostgreSQL 和 Redis 的内部监听放宽了,为了防止被黑客扫描: 宝塔面板 → 安全 :检查列表, 千万不要放行 5432 和 6379 。 云服务器控制台(如腾讯云/阿里云安全组) : 千万不要放行 5432 和 6379 。 1 个帖子 - 1 位参与者 阅读完整话题

LinuxDo 最新话题 · 2026-05-21 07:19:05+08:00 · tech

之前被自动更新坑了一次,2.0 直接把我的 IDE 覆盖了。后来我把 2.0 卸载,重新装回了原版 IDE。 现在想单独再装个 2.0,结果卡在两个问题: 1 进度条中断: 运行 2.0 安装包,跑绿色进度条的时候老是中断失败,根本装不上。 2 怕再次覆盖: 听说 2.0 默认路径和 IDE 是一样的。我很怕解决中断问题后,它装完又把我现在好好的 IDE 给覆盖了,那就成死循环了。 目前看了一下系统路径,有两个目录,一个是带 IDE 后缀的,另一个是. Antigravity(应该是 2.0 安装失败留下的)。 想请教一下各位: 进度条老是中断一般是哪里卡住了?2.0 那个残留目录是不是必须得清空才能装?直接删会不会把我的数据记录也搞没了? 怎么操作才能让 2.0 和旧版 IDE 彻底隔离开,互不影响实现双开? 求指点一下具体的安装步骤,感谢! 2 个帖子 - 2 位参与者 阅读完整话题

LinuxDo 最新话题 · 2026-05-13 23:17:51+08:00 · tech

可以采用自定义agentkey就能很简单的让工作流自定义的agent走omo-slim的模型 例如:在ohmyopencode-slim中添加 “trellis-check”: { “model”: “opencodezen/deepseek-v4-flash-free”, “variant”: “max” }, “trellis-implement”: { “model”: “opencodezen/deepseek-v4-flash-free”, “variant”: “max” }, “trellis-research”: { “model”: “opencodezen/deepseek-v4-flash-free”, “variant”: “max” } 这样设置之后就能融合一起了 1 个帖子 - 1 位参与者 阅读完整话题

V2EX - 技术 · 2026-05-12 18:34:53+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 16:47:06+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 16:47:06+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 13:57:03+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 13:37:40+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 11:09:05+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 10:29:31+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 10:29:31+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 10:24:36+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 10:07:13+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 09:47:40+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

V2EX - 技术 · 2026-05-12 09:18:42+08:00 · tech

之前看了个帖子,好多人的手机上要实现 easytier 和 mihomo 共存一直出现问题,现在把看到的方案总结一下,做个记录。我自己试了一下,确实成功了。 一、重重之重, 手机要 root 二、软件: easytier 原因: - p2p 快速方便 - 手机有 magisk 模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy 透明代理。无需 tun 。可分应用。 - 我用的 mihomo ,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开 tun ,直接使用 sock5 即可。 latency_first = true 加快 p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了 ipatables 规则,默认放行局域网 ip 。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的 10.0.0.0/8 这行,重启,完美 p2p

LinuxDo 最新话题 · 2026-05-09 11:18:00+08:00 · tech

手机上easytier和VPN共存的问题,刚好今天解决了这个问题,留下此贴共享网友,顺便做个记录,避免以后忘了。 一、重重之重, 手机要root 二、软件: easytier 原因: - p2p 快速方便 - 手机有magisk模块 - 不用模块也可以。 boxformagisk 原因: - 手机无感,耗电低。 - tproxy透明代理。无需tun。可分应用。 - 我用的mihomo,其他可自选,都一样原理。 三、配置: easytier 重点添加: socks5_proxy = "socks5://0.0.0.0:8889" [flags] latency_first = true no_tun = true 不需要开tun,直接使用sock5即可。 latency_first = true 加快p2p 2. boxformagisk proxies: - name: "et-socks5" type: socks5 server: 127.0.0.1 port: 8889 proxy-groups: - { name: ET, type: select, proxies: [et-socks5, DIRECT] } rules: - IP-CIDR,10.126.126.0/24,ET,no-resolve ## 放到最前 重点来了。最重要的一步,之前一直不成功,因为内置了ipatables规则,默认放行局域网ip。找到/data/adb/box/scripts/box.iptables 文件 intranet=( 0.0.0.0/8 10.0.0.0/8 100.64.0.0/10 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.0.0.0/24 192.0.2.0/24 192.88.99.0/24 192.168.0.0/16 198.51.100.0/24 203.0.113.0/24 224.0.0.0/4 240.0.0.0/4 255.0.0.0/4 255.255.255.0/24 255.255.255.255/32 ) 删掉上面的10.0.0.0/8 这行,重启,完美p2p 四、可能的问题解答: 1. 为啥一定root 隐私安全。方便,不用看着头顶的vpn图标。太多其他功能。 2. 为啥不用tailscale,手机上没easytier方便。应该一样,看重点,就可以共存。 3. 其他问题,等你们问。 如果对你有用,请点赞收藏吧。 1 个帖子 - 1 位参与者 阅读完整话题

v2ex · 2026-05-06 23:48:50+08:00 · tech

CC Switch 的问题 用 Claude Code / Codex 的人大多知道 CC Switch ,它能管理 Skills 和 MCP 配置,但 Provider 切换这块有几个痛点: 全局控制 :CC Switch 的 Provider 是全局生效的,切了就是切了,所有项目一起变。但实际场景是——项目 A 在用某个中转站跑长任务,项目 B 想临时换个便宜的通道试试,两边需求不一样。 GUI 切换打断心流 :每次切换要打开界面、点选、确认,对于一天要在多个项目间来回跳的人来说,这个操作频率太高了,每次都打断终端里的工作节奏。 不同项目不同阶段用不同通道 :写代码用快的,review 用便宜的,跑大任务用稳定的——这种按场景灵活切换的需求,全局 GUI 切换根本应付不来。 我之前的解法:一堆 shell 脚本 最早的办法是在项目目录下放启动脚本,每个中转站一个: unset ANTHROPIC_AUTH_TOKEN unset ANTHROPIC_API_KEY unset ANTHROPIC_BASE_URL export ANTHROPIC_BASE_URL=https://relay.example.com export ANTHROPIC_API_KEY=sk-xxx export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 claude "$@" 十来个脚本散落各处。能用,但问题也很明显: 中转站换 Key 、换 URL 的时候,得把所有项目里的脚本都改一遍 换分组通道(比如从普通组切到高速组)也是同样的批量修改 Codex 的脚本还得单独处理 OPENAI_* 变量,模板不一样,更乱 cl:集中配置 + 命令行灵活切换 所以写了 cl 这个工具。核心思路很简单: 所有中转站配置集中在一个 YAML 文件里,改一处全局生效 在任意项目目录下,一条命令指定 profile 启动,不同终端窗口可以用不同 profile 命令行上下键翻历史, cl relay-a 、 cl relay-b 随手切,不打断心流 cl # 用默认 profile 启动 cl relay-a # 指定 profile cl relay-a -r # 透传参数给 claude cl codex-relay # 启动 Codex 配置文件 ~/.cl/profiles.yaml ,一个文件管所有: default: relay-a defaults: env: CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: "1" profiles: relay-a: name: Relay A base_url: https://relay-a.example.com api_key: sk-xxx model: claude-opus-4-6 env: {} relay-b: name: Relay B (Auth Token) base_url: https://relay-b.example.com auth_token: sk-xxx env: API_TIMEOUT_MS: "600000" relay-c: name: Relay C base_url: https://relay-c.example.com api_key: sk-xxx model: custom-model-name small_fast_model: custom-fast-model env: {} codex-relay: name: Codex via Relay cli: codex base_url: https://codex-relay.example.com api_key: sk-xxx model: gpt-5.5 env: CODEX_CONFIG_DIR: ~/.codex-envs/relay 中转站换 Key ?改这一个文件,所有项目立刻生效。换分组通道?改 base_url 一行,完事。 和 CC Switch 的关系 两者完全独立,各管各的: CC Switch cl Skills 管理 ✅ ❌ MCP 服务器配置 ✅ ❌ Provider 认证 ❌ ✅ 启动 CLI ❌ ✅ cl 只通过环境变量注入认证,不动 ~/.claude/settings.json 。CC Switch 配置的 MCP 和 Skills 完全不受影响。 我自己的用法是: CC Switch 专门用来管理 MCP 和 Skills——它能在 Claude Code 和 Codex 之间共享 Skills ,而且可以很可视化地开关,非常方便。 至于里面的 Provider 配置,我无论 Claude Code 还是 Codex 都始终设置成 default ,这样就不会污染配置信息。 Provider 的事全交给 cl 在命令行解决。每次需要管理 Skills 和 MCP 了,才打开 CC Switch 配一下,配完退出,不需要常驻占据系统托盘。 安装 brew install unliu/tap/cl 或者用 Go: go install github.com/unliu/cl-launcher@latest 仓库 github.com/unliu/cl-launcher Golang 编写,单二进制,零依赖。欢迎试用/反馈~