Skip to content

Instantly share code, notes, and snippets.

@soffchen
Last active August 10, 2023 13:56
Show Gist options
  • Star 51 You must be signed in to star a gist
  • Fork 10 You must be signed in to fork a gist
  • Save soffchen/05bc0f017a10486eb646 to your computer and use it in GitHub Desktop.
Save soffchen/05bc0f017a10486eb646 to your computer and use it in GitHub Desktop.
Surge

Feature

  • 替代 PAC,实现根据规则区分选择代理线路
  • 支持 SOCKS5 和 Shadowsocks 协议
  • 完整支持所有的 Shadowsocks 加密方式 (table, rc4-md5, salsa20, chacha20, aes-256-cfb, aes-192-cfb, aes-128-cfb, bf-cfb, cast5-cfb, des-cfb, rc2-cfb, rc4, seed-cfb)
  • 全面支持双向 HTTP Keep-Alvie
  • 快,各种黑科技加速
  • 直接临时修改某个域名的访问规则 (暂时仅 Mac 版本)
  • 支持使用 GeoIP 规则决定线路

Usage

  • 需要 OS X 10.10 / iOS 9.0 以上版本

Configuration

  • General 部分的 interface 和 port 设置仅供 Mac 版本使用
  • Proxy 部分支持两种代理
    • ProxyA=shadowsocks,127.0.0.1,3120,rc4-md5,Password
    • ProxyB=socks5,127.0.0.1,3129
  • Rule 部分支持以下 4 种规则,对于每个域名规则会按照顺序去尝试匹配
    • DOMAIN-SUFFIX 域名后缀匹配
    • DOMAIN-KEYWORD 域名关键字匹配,用于 google 或者 youtube 这种有无数个国家后缀的服务
    • GEOIP 根据 IP 归属地匹配,当遇到这项规则时会使用当前的 DNS 去解析域名,所以可能会受到 GFW 污染影响,对于会被污染的域名请在 GEOIP 规则之前使用匹配规则
    • FINAL 结束匹配,一般在最后使用,指定默认线路

Known Issues

  • 不支持 HTTP pipelining,目前暂时没有发现哪个应用默认启用了
  • 不支持多个代理同时使用 Shadosocks 的 table 加密模式(其余模式不受影响)
  • 对某些不是很遵守 HTTP 规范的服务器支持会有问题
  • 应用必须遵从系统代理设置,且暂时不支持 UDP 应用,目前已知的不支持的应用有
    • 官方 Twitter.app
    • QQ 和微信的聊天功能 (不受代理控制但是能正常使用)
    • 各种在线游戏 (不受代理控制但是能正常使用)

Roadmap

  • 更多 GUI 功能
  • DIRECT 模式支持指定某个 interface
  • 支持 HTTP/HTTPS 代理
  • 支持自定义 IP 段规则
  • 支持正则表达式规则
  • 支持根据 URL 设置规则
@X-G
Copy link

X-G commented Dec 14, 2015

Mac版出了?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment