V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
1OF7G
V2EX  ›  问与答

终端里如何用 PAC 或类似的实现自动切换代理?

  •  
  •   1OF7G · 2017-11-14 20:15:55 +08:00 · 3707 次点击
    这是一个创建于 2352 天前的主题,其中的信息可能已经有所发展或是发生改变。

    以下方法在终端里只能全局代理,修改为 PAC 的地址也没用。

    export http_proxy=http://127.0.0.1:1087;
    export https_proxy=http://127.0.0.1:1087;
    

    npm 官方源走全局代理比 直接用 taobao 源慢很多,用 taobao 源就不能走代理,而用 taobao 源有时候也会下载 github 等的内容,必须走代理。所以就需要一个切换自动代理的东西。

    希望有尽量简单的解决方法?

    第 1 条附言  ·  2017-12-10 20:32:21 +08:00
    问题已经解决:使用 ss-libev 命令行客户端,开启 acl。然后设置 shell 终端的 HTTP_PROXY 到对应端口即可(可能需要 socks 转 http 代理)。此时 ss-libev 会根据 acl 规则切换代理。
    2 条回复    2017-11-15 08:13:31 +08:00
    Loyalsoldier
        1
    Loyalsoldier  
       2017-11-14 20:20:42 +08:00
    终端不支持 PAC,需要分流的话,这个分流的步骤应该后置到代理软件来做。用 SSR 的“不代理中国 IP ”就能实现啊
    firefox12
        2
    firefox12  
       2017-11-15 08:13:31 +08:00 via iPhone
    写了一个简单的代理 基本 满足了目前的需求

    1 启动了 dns 服务器 谁有请求通过 https 去 dns.google.com 解析 解决 dns 污染问题 带了 client ip 解决了 ip 解析地区问题
    2 下载了 apnic 的 ip 分区 代理以前先查 ip 是国内还是国外 国内直接走 国外走代理
    未解决 国外 ip 可以直接访问的情况 未知好的解决办法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3120 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 00:34 · PVG 08:34 · LAX 17:34 · JFK 20:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.