一种解决全局代理在终端不生效的方法

本文涉及到的背景、演示环境均为 mac,其它操作系统或环境不保证 100% 兼容,有类似需求可参考 mac 思路或与博主联系

今日在浏览大数据前沿技术时,偶然看到一篇推文介绍实时流式 sql 平台 proton 时,其官网的 Quickstart 也贴心的附上了 mac 用户的安装方式

brew tap timeplus-io/timeplus
brew install proton

当我满怀期待的准备一探究竟时我却遇到了下面的问题 添加代理

下载速度极慢,14% 的进度几乎耗费了半个小时。让我产生疑惑的是我的 mac 梯子始终开启着全局代理,尝试在浏览器或者直接点击终端的 download 链接都是可以以极快的速度进行下载,偏偏在终端中龟速。当我查看代理工具日志时并没有发现来自 github 的连接

image-20240506143939989

因此产生这种问题的原因就是:终端使用的网络配置与系统的全局代理设置是分开的。

知道问题的原因解决起来就方便多了,通过代理工具查看本地代理的端口,发现同时支持 socket5 和 http 协议 image-20240506144257214

因此只需要在终端中执行

export ALL_PROXY=socks5://127.0.0.1:7890

为了方便可以将其配置在环境变量中如:.bash_profile.bashrc.zshrc

但是结合我实际使用代理的方式,可能存在打开终端时全局代理并没有开启情况,也就是说在我的使用习惯下我需要终端使用全局代理的时机完全被我控制,不需要打开终端时默认加载。因此只需要将上述配置封装成 alias 即可,将下面的配置添加到环境变量文件中

# 添加代理
alias add_proxy='echo "添加代理"; export ALL_PROXY=socks5://127.0.0.1:7890'
# 移除代理
alias remove_proxy='echo "移除代理"; unset ALL_PROXY'

当我需要终端使用全局代理时执行 add_proxy,移除时只需要 remove_proxy

再次尝试下载时可以从代理工具的日志中看到,且下载速率直线上升 image-20240506145454439

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小王是个弟弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值