V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dogechai
V2EX  ›  macOS

brew 用全局代理仍然下载奇慢

  •  
  •   dogechai · 2023-09-02 14:22:32 +08:00 · 3920 次点击
    这是一个创建于 444 天前的主题,其中的信息可能已经有所发展或是发生改变。
    大佬们抱歉占用资源了,我在终端配置好了 proxy ,全部改用
    -------------------------------------------------------------------------------
    function proxy_on() {
    export http_proxy=http://127.0.0.1:7890
    export https_proxy=\$http_proxy
    echo -e "终端代理已开启。"
    }

    function proxy_off(){
    unset http_proxy https_proxy
    echo -e "终端代理已关闭。"
    }
    ---------------------------------------------------------------------------------
    并且设置好了之后测试
    curl cip.cc
    测试结果如下:
    ------------------------------
    IP : xxx.xxx.xxx.xx
    地址 : 美国 美国
    数据二 : 北美地区
    数据三 : 美国
    URL : http://www.cip.cc/xxx.xxx.xxx.xx
    -------------------------------
    从测试结果看,全局已连接。如果访问 netflix 和 gpt 等,节点速度也没有问题。但是 brew install zbar 的时候,仍然慢的要死。下载速度几 k/s 都没达到。请问如何处理?

    看过不少大佬的帖子,也没有解决我的问题。brew 是 4.1.7 版本的。
    56 条回复    2023-09-05 00:26:17 +08:00
    zhy0216
        1
    zhy0216  
       2023-09-02 14:25:37 +08:00 via Android
    换源 国内的源
    dogechai
        2
    dogechai  
    OP
       2023-09-02 14:26:07 +08:00
    @zhy0216 不想换源,因为感觉治标不治本。我一般都直接用全局代理了。
    sblid
        3
    sblid  
       2023-09-02 14:27:24 +08:00   ❤️ 1
    不换源那就忍着慢速呗,哪有既要又要还要。
    dogechai
        4
    dogechai  
    OP
       2023-09-02 14:27:47 +08:00
    @sblid 按道理来说全局模式,速度不会存在问题。我看了好几个大佬,问题也都解决了。
    dogechai
        5
    dogechai  
    OP
       2023-09-02 14:28:51 +08:00
    我的 clashX 的设置中,socks5 代理是 7891 ,混合代理端口是 7890 ,但是在 http 代理端口是 0 。
    不知道是不是这个问题,一般 http 也不会说是 0 的呀?
    1423
        6
    1423  
       2023-09-02 14:30:58 +08:00
    接付费远程排查
    YGHMXFAL
        7
    YGHMXFAL  
       2023-09-02 14:33:10 +08:00
    brew 吃这几个环境变量吗?你这看起来 brew 根本没走代理端口

    curl 是吃这几个环境变量的,所以它的测试结果符合你预期
    julyclyde
        8
    julyclyde  
       2023-09-02 14:33:47 +08:00
    @dogechai 换源怎么就不治本了
    dogechai
        9
    dogechai  
    OP
       2023-09-02 14:42:57 +08:00
    @YGHMXFAL 请问具体如何操作呢?
    dogechai
        10
    dogechai  
    OP
       2023-09-02 14:43:09 +08:00
    @julyclyde 经常国内国外跑,国外怎么用源?
    julyclyde
        11
    julyclyde  
       2023-09-02 14:45:28 +08:00
    @dogechai 你既然都有 function proxy_on 了,不如开一个 function brew_china
    xlsepiphone
        12
    xlsepiphone  
       2023-09-02 14:47:44 +08:00
    只有隧道级别的代理才有用,所以我用网关代理,从来不在本机上搞这些配置,因为真不好用。。。
    rsy
        13
    rsy  
       2023-09-02 14:56:05 +08:00 via Android
    用 ClashX 开增强模式就可以了,不需要在终端配置代理,省时省心
    atomshadows
        14
    atomshadows  
       2023-09-02 14:57:18 +08:00
    试试 proxychains-ng
    neiltroyer849
        15
    neiltroyer849  
       2023-09-02 14:59:07 +08:00
    可能是节点的问题。有些时候我的梯子用香港节点很慢,但换日本的就好了。不知道为什么
    yeziqing
        16
    yeziqing  
       2023-09-02 15:01:47 +08:00
    @dogechai clash 有开启增强模式吗,没的话开启试试
    sblid
        17
    sblid  
       2023-09-02 15:02:31 +08:00
    @dogechai clash 的 enhanced mode 可以解决,但用 vpn 的速度远比不上国内本地源的体验。
    如果你两头跑的话,可以自己写个 script 做一键换源,比折腾 vpn 简单多了。
    sickoo
        18
    sickoo  
       2023-09-02 15:18:32 +08:00
    本地源,有时候挺省心的。
    ixcode
        19
    ixcode  
       2023-09-02 15:20:10 +08:00
    目测 brew 没有走你的代理,可以试试增强模式,或者用 proxifier 了`这类工具代理所有请求
    huijiewei
        20
    huijiewei  
       2023-09-02 15:33:52 +08:00
    我都是设置 curl 的代理的

    编辑当前用户文件

    vim ~/.curlrc
    加入

    #socks5
    socks5 = "127.0.0.1:1080"
    #或者 HTTP 代理
    proxy = "127.0.0.1:9999"
    jas0n2k
        21
    jas0n2k  
       2023-09-02 15:35:35 +08:00 via Android
    mac 上 ClashX 开启增强模式就好了吧
    234ygg
        22
    234ygg  
       2023-09-02 16:05:31 +08:00
    terminal 大概率压根没被代理,得设置网关代理(通常简称增强模式)。
    Dart
        23
    Dart  
       2023-09-02 16:09:54 +08:00
    我的方案是 -》 肉身翻墙
    OneKings
        24
    OneKings  
       2023-09-02 16:24:16 +08:00
    两个方案:
    一是把源全部换成国内的,下面的源选一个加入系统配置文件就行:
    # 使用阿里源安装 Homebrew / Linuxbrew 设置环境变量:
    export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/brew.git"
    export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/homebrew-core.git"
    export HOMEBREW_CASK_GIT_REMOTE="https://mirrors.aliyun.com/homebrew/homebrew-cask.git"
    export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.aliyun.com/homebrew/homebrew-bottles"
    export HOMEBREW_API_DOMAIN="https://mirrors.aliyun.com/homebrew/homebrew-bottles/api"

    # 使用清华源安装 Homebrew / Linuxbrew 设置环境变量:
    export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git"
    export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git"
    export HOMEBREW_CASK_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git"
    export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"
    export HOMEBREW_API_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api"

    # 使用科大源安装 Homebrew / Linuxbrew 设置环境变量:
    export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git"
    export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git"
    export HOMEBREW_CASK_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-cask.git"
    export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles"
    export HOMEBREW_API_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles/api"

    一个就是配置代理快捷键,每次起动 brew 之前需要起动代理,在系统配置文件中加入一下代码:
    #代理设置(设置 7890 端口为代理监控端口)
    alias proxy5='export all_proxy=socks5://127.0.0.1:7890'
    alias proxyhttp='export all_proxy=http://127.0.0.1:7890'
    alias unproxy='unset all_proxy'
    alias gip='curl ipinfo.io'

    设置 Socks5 代理输入"proxy5"
    设置 http 代理输入"proxyhttp"
    取消代理输入"unproxy"
    检测代理输入"gip"
    cwbsw
        25
    cwbsw  
       2023-09-02 16:27:38 +08:00
    brew 是认 https_proxy 的,有没有可能你的代理不是 http 代理,而是 socks 代理?
    AEDaydreamer
        26
    AEDaydreamer  
       2023-09-02 16:41:13 +08:00
    我用 clash pro 的增强模式速度还不错
    lazywen
        27
    lazywen  
       2023-09-02 16:47:38 +08:00 via Android
    brew 走 https_proxy ,我一直这样设置的,下载奇快
    我看是你脚本写错了,改成这样
    https_proxy="$http_proxy"
    zhongjun96
        28
    zhongjun96  
       2023-09-02 16:50:30 +08:00
    用 `brew config` 看你到底走没走代理
    我是用 `export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890` 开的代理
    Yc1992
        29
    Yc1992  
       2023-09-02 16:55:49 +08:00
    弄个软路由吧,很多软件不走环境变量,或者不走 socks 协议层之上的代理
    dcsuibian
        30
    dcsuibian  
       2023-09-02 16:58:33 +08:00
    你这 export https_proxy=\$http_proxy 的\是干嘛用的?
    先 echo $https_proxy 看看
    bclerdx
        31
    bclerdx  
       2023-09-02 17:13:17 +08:00 via Android
    @neiltroyer849 因为网络问题。
    bclerdx
        32
    bclerdx  
       2023-09-02 17:15:49 +08:00 via Android
    @Yc1992 有的不走是软件设计的问题嘛?
    haozhang
        33
    haozhang  
       2023-09-02 17:34:07 +08:00 via iPhone
    设置 all_proxy
    YGHMXFAL
        34
    YGHMXFAL  
       2023-09-02 17:51:09 +08:00
    @dogechai #9

    楼上几个老哥都说了,brew 是吃 https_proxy 这个环境变量的,你 clash 暴露一个 http 代理端口出来就行了

    #32 这几个环境变量只是一个大家都`约定俗成地默契`而已,并不是一个强制标准,是否吃这些环境变量取决于具体地开发者
    cluulzz
        35
    cluulzz  
       2023-09-02 18:09:42 +08:00 via iPhone
    clash 不是有个个复制终端代理命令吗
    kokutou
        36
    kokutou  
       2023-09-02 18:44:15 +08:00 via Android
    看 brew 的时候的 clash 流量,不是看你的 curl 。。。
    dogechai
        37
    dogechai  
    OP
       2023-09-02 19:07:26 +08:00   ❤️ 1
    @YGHMXFAL @cwbsw 已经解决了,brew 吃的是 socks5 的流量,我按照之前的设置了 socks5 就解决了~谢谢老哥们的回答。

    @dcsuibian @lazywen 感谢,我的确 https_proxy="$http_proxy"这里写错了,但是我额外设置了 socks5 就可以下载了(虽然最后 socks5 在 brew config 没有看到,只有 http 和 https
    @zhongjun96 谢谢老哥,我解决了,因为没设置 socks5.
    @rsy @yeziqing 有增强模式的嘛?你是 clashX pro ??

    顺便感谢其他的老哥,回复太多了,艾特不过来了!!
    rsy
        38
    rsy  
       2023-09-02 19:17:31 +08:00
    @dogechai 在 AppCenter 免费下载 ClashX Pro 版本,支持增强模式以及更多 Clash Premium Core 特性。
    https://github.com/yichengchen/clashX

    不过 Pro 版并不开源,介意这个就没办法了
    Yc1992
        39
    Yc1992  
       2023-09-02 19:57:50 +08:00
    @bclerdx #32 比如 signal discord 这种聊天软件,就没有 proxy 的配置接口,telegram 就有。还有就是有些软件是 tcp 协议层的,用 socks 这些 proxy 也没用
    jiangliuli
        40
    jiangliuli  
       2023-09-02 20:04:40 +08:00 via Android
    clash for windows 开 tunnel 模式表示无压力
    qiaobeier
        41
    qiaobeier  
       2023-09-02 20:21:21 +08:00
    上路由端全局代理
    JensenQian
        42
    JensenQian  
       2023-09-02 20:25:13 +08:00 via Android
    前面加个 openwrt 路由器,上面挂代理
    IvanLi127
        43
    IvanLi127  
       2023-09-02 20:25:52 +08:00 via Android
    路由器开代理能一劳永逸
    niji
        44
    niji  
       2023-09-02 21:33:17 +08:00
    clash x pro 开增强模式
    hhylx1950
        45
    hhylx1950  
       2023-09-02 21:47:14 +08:00
    半年前我问过一样的问题...简直昨日重现啊
    callmesmc
        46
    callmesmc  
       2023-09-02 22:13:59 +08:00 via iPhone
    为啥我用 Qx 能代理到终端,系统设置里那个 vpn 是全局代理不?
    s7964926
        47
    s7964926  
       2023-09-02 22:50:03 +08:00
    Surge 开 增强模式
    exploreexe
        48
    exploreexe  
       2023-09-03 03:30:13 +08:00
    你应该考虑用一下 clash 的增强模式,别傻傻的搞配置了

    只能说你方法不对
    jaoyina
        49
    jaoyina  
       2023-09-03 10:05:47 +08:00
    @exploreexe 对的,我就是用这种,速度很快。也没改过什么源。
    weeei
        50
    weeei  
       2023-09-03 12:08:44 +08:00
    brew 用的是 GitHub ,普通模式下你应该设置 git 的代理:

    git config --global http.proxy http://127.0.0.1:7890
    git config --global https.proxy https://127.0.0.1:7890
    ostrichb
        51
    ostrichb  
       2023-09-04 00:14:31 +08:00 via iPhone
    你都開 clash 了,不用 TUN ?
    ostrichb
        52
    ostrichb  
       2023-09-04 00:19:18 +08:00 via iPhone
    如果你能開 TUN ,只需要加入一堆 GitHub 及 brew 的網域到代理清單中,跟本不需要設定一堆代理變數
    bjfane
        53
    bjfane  
       2023-09-04 10:18:19 +08:00
    我都是从 clash 复制出来命令 `export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890`,一直好用,如果 unset 就直接关了 开一个新的。
    Outshine
        54
    Outshine  
       2023-09-04 10:59:55 +08:00
    alias fuck-net='export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890'
    wulili
        55
    wulili  
       2023-09-04 15:19:37 +08:00
    显然是没走代理
    别搞这些乱七八糟的配置了,麻烦不说,还不一定靠谱
    也别考虑换源了,都会翻墙了,还换源干啥,那不纯属给自己挖坑吗
    直接用 ClashX Pro 版本 https://install.appcenter.ms/users/clashx/apps/clashx-pro/distribution_groups/public ,打开增强模式即可
    jevonszmx
        56
    jevonszmx  
       2023-09-05 00:26:17 +08:00
    直接使用代理,export ALL_PROXY=socks5://127.0.0.1:7890
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5795 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 01:47 · PVG 09:47 · LAX 17:47 · JFK 20:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.