{"repo":"sower-proxy/sower","free":true,"listed":false,"github":"https://github.com/sower-proxy/sower","clone":"git clone https://github.com/sower-proxy/sower.git","description":"Sower is a cross-platform intelligent transparent proxy solution.","language":"Go","stars":459,"topics":["cross-platform","router","sower","dns","trojan","proxy","sock5"],"license":"MIT","category":"networking-infra","readme_excerpt":"sower Sower 是一个跨平台的智能分流代理工具。 它可以同时提供： - DNS 分流：客户端先问 Sower 域名怎么解析，Sower 根据规则决定直连还是代理。 - HTTP/HTTPS 透明代理：DNS 模式下，Sower 可以接住被导向自己的 80/443 流量，再按规则转发。 - SOCKS5 代理：把 Sower 当成一个普通的 socks5h 代理使用，也能享受同一套分流规则。 如果你已经有机场、VPS、Clash、V2Ray、SSR 或其它 SOCKS5 上游，推荐先把 Sower 当成“内网智能分流节点”使用，不一定要部署 sowerd 。 推荐用法一：Tailscale + Sower 节点 对新手来说，最省事的方式是：选一台常开的设备运行 sower ，让它加入 Tailscale，其它手机、电脑、平板也加入同一个 Tailscale 网络。 这个方案的核心思路很简单： 1. Tailscale 负责组网、身份认证和加密通道。 2. Sower 节点负责 DNS、SOCKS5 和智能分流。 3. 普通客户端不用暴露在公网里，只需要连上同一个 Tailscale 网络。 4. 国内网站按规则直连，国外网站按规则走上游代理。 适合谁 - 你有多台设备，不想在每台设备上单独维护复杂代理规则。 - 你已经有一个可用的上游代理，只想让 Sower 统一分流。 - 你不想把代理入口直接暴露到公网，只想在自己的 Tailscale 网络里使用。 工作方式 推荐同时使用两种入口： - DNS 入口：客户端 DNS 指向 Tailscale 的 MagicDNS 地址 100.100.100.100 ，Tailscale 再把 DNS 请求转给 Sower 节点。 - SOCKS5 入口：需要手动设置代理的软件，直接使用 socks5h:// :1080 。 DNS 模式下，Sower 会这样处理域名： - 命中直连规则：返回真实 IP，客户端直接访问目标网站。 - 命中代理规则：返回 Sower 节点自己的 IP，客户端访问该 IP 的 80/443 ，Sower 再根据域名或 TLS SNI 转发到上游代理。 - 命中阻断规则：直接返回 DNS 错误。 SOCKS5 模式下，客户端把请求交给 Sower，Sower 再根据同一套路由规则决定直连或代理。 Sower 节点配置 先复制示例配置： 然后重点修改这几处： 说明： - 如果上游代理就在同一台机器上，例如 Clash 本地 SOCKS5 是 127.0.0.1:7890 ，就按上面这样写。 - 如果上游代理在另一台机器上，把 remote.addr 改成对应的 host:port 。 - 如果你使用的是 sowerd 上游，把 remote.type 改成 sower ，并按你的服务端信息填写 remote.addr 和 remote.password 。 - remote.password 与 sowerd 的 password 按字面值传输，不做任何编解码（旧版本会把恰好是合法 base64 的密码当 base64 解码，导致认证失败；该行为已移除）。不要在配置文件里用编码“隐藏”密码，文件权限才是正确的手段。 - dns.serve 会同时决定 Sower 的 DNS 入口，以及 DNS 模式下 HTTP/HTTPS 透明代理监听的 IP。 启动： sower 通常需要 root 权限，因为 DNS 模式会监听 53/udp 、 80/tcp 和 443/tcp 。SOC","default_branch":null,"files":null,"tree":[],"storefront":"/r/sower-proxy","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/sower-proxy/sower/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}