Mac 配置终端代理

与浏览器不同,Mac 的终端默认并没有开启代理模式,也就是说即使我们电脑使用了代理,在终端中也是没有效果的,所以我们需要单独对终端配置代理。

查看 ip 相关信息

首先也要先说明一下如何快速查看当前的 ip 信息,需要用到 curl 命令:

sh 复制代码
curl ipinfo.io

{
  "city": "Nanjing",
  "region": "Jiangsu",
  "country": "CN",
  "loc": "32.0617,118.7778",
  "org": "AS4134 CHINANET-BACKBONE",
  "timezone": "Asia/Shanghai",
  "readme": "https://ipinfo.io/missingauth"
}                                                                                                  

可以看到即使系统使用了代理,在终端中是无效的。

终端代理配置

要给终端配置代理,需要修改相应 Shell 的配置文件,对于 ZSH,要修改 ~/.zshrc。具体来说,要配置的其实主要是 http_proxyhttps_proxy 这两个环境变量,它们告诉系统或应用程序使用指定的代理服务器。比如:

sh 复制代码
export http_proxy=http://proxy.example.com:8080
export https_proxy=http://proxy.example.com:8080

这样,系统或应用程序在发起 HTTP 或 HTTPS 请求时,会先将请求发送给 http://proxy.example.com:8080,由代理服务器转发请求到目标服务器,然后将响应返回给发起请求的系统或应用程序。由于我使用的工具默认端口号是 7897,所以代理服务器 URL 应该是 socks5://127.0.0.1:7897

为了便捷,可以再使用 alias 来简化操作,在 ~/.zshrc 末尾加上如下内容:

sh 复制代码
alias proxy="export http_proxy=socks5://127.0.0.1:7890;export https_proxy=socks5://127.0.0.1:7890;"
alias unproxy="unset http_proxy;unset https_proxy;"

然后使用 source ~/.zshrc 来更新配置文件,这样在使用 proxy 命令就会设置代理,使用 unproxy 就会解除代理。

下面进行测试:

sh 复制代码
curl ipinfo.io

{
  "city": "Nanjing",
  "region": "Jiangsu",
  "country": "CN",
  "loc": "32.0617,118.7778",
  "org": "AS4134 CHINANET-BACKBONE",
  "timezone": "Asia/Shanghai",
  "readme": "https://ipinfo.io/missingauth"
}

proxy

curl ipinfo.io

{
  "hostname": "172-233-144-7.ip.linodeusercontent.com",
  "city": "Los Angeles",
  "region": "California",
  "country": "US",
  "loc": "34.0522,-118.2437",
  "org": "AS63949 Akamai Connected Cloud",
  "postal": "90009",
  "timezone": "America/Los_Angeles",
  "readme": "https://ipinfo.io/missingauth"
}

unproxy

curl ipinfo.io

{
  "city": "Nanjing",
  "region": "Jiangsu",
  "country": "CN",
  "loc": "32.0617,118.7778",
  "org": "AS4134 CHINANET-BACKBONE",
  "timezone": "Asia/Shanghai",
  "readme": "https://ipinfo.io/missingauth"
}                                                                                                   

可见成功实现了代理的功能。

相关推荐
pe7er1 小时前
Mac 修复「XXXXX已损坏,无法打开」完整方案
mac
rocket v3.5.64 天前
Beyond Compare 永久试用 Pro 功能教程(MacOS 版)
mac·beyond compare·无限试用
Flywith247 天前
开源项目:把本地视频转成 Live Photo 并导入 Apple Photos
app·mac·apple
Irissgwe12 天前
9、数据链路层
linux·网络·mac·ip·数据链路层·arp协议·以太网帧格式
嘿嘻哈呀12 天前
Mac 如何通过 SSH 控制同一 Wi-Fi 下的 Windows 电脑
windows·ssh·mac·局域网·openssh
起个破名想半天了13 天前
OpenClaw保姆级配置教程(适用于Mac)
mac·openclaw·配置教程
我要改名叫嘟嘟14 天前
我新买一台电脑,教育优惠配国补
mac
HashFlag20 天前
配置快捷命令登录远程服务机器
mac
鸿乃江边鸟20 天前
Starrocks BE 在Mac编译以及遇到的问题解决
starrocks·mac·编译