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"
}                                                                                                   

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

相关推荐
Irissgwe3 天前
9、数据链路层
linux·网络·mac·ip·数据链路层·arp协议·以太网帧格式
嘿嘻哈呀4 天前
Mac 如何通过 SSH 控制同一 Wi-Fi 下的 Windows 电脑
windows·ssh·mac·局域网·openssh
起个破名想半天了4 天前
OpenClaw保姆级配置教程(适用于Mac)
mac·openclaw·配置教程
我要改名叫嘟嘟5 天前
我新买一台电脑,教育优惠配国补
mac
HashFlag12 天前
配置快捷命令登录远程服务机器
mac
鸿乃江边鸟12 天前
Starrocks BE 在Mac编译以及遇到的问题解决
starrocks·mac·编译
带娃的IT创业者14 天前
MLX-VLM:在Mac上解锁视觉语言模型的本地推理与微调能力
人工智能·macos·语言模型·mac·视觉语言模型·mlx·本地推理
新刘海18 天前
MacBook网络已连接却上不了网
mac
Mininglamp_271822 天前
开源端侧 AI Agent 全栈架构解析:Mano-P 模型 + Cider 推理加速 + AFK 自动构建
人工智能·架构·开源·agent·mac·apple silicon·gui agent
代码讲故事25 天前
mac电脑上docker突然无法运行,不停的出现弹框,“com.docker.vmnetd”将对你的电脑造成伤害。附国内不同芯片高速下载地址,下载直接运行。
macos·docker·容器·arm·mac·intel·下载