MacOS代理分为桌面应用代理设置&Terminal代理设置,使用代理软件默认只会开启桌面应用代理,Terminal代理需要单独配置
 
桌面应用代理设置
Terminal查看桌面应用代理设置情况
scutil --proxy
返回内容(0表示未开启,1表示已开启,ExceptionsList 表示无需代理的地址列表)
<dictionary> {
HTTPEnable : 0
HTTPSEnable : 0
ProxyAutoConfigEnable : 0
SOCKSEnable : 0
}
 
<dictionary> {
ExceptionsList : <array> {
0 : 127.0.0.1
}
SOCKSEnable : 1
SOCKSPort : 1086
SOCKSProxy : 127.0.0.1
}
 
 图形界面设置

Terminal代理设置(端口地址请根据实际情况修改)
 
临时使用代理(仅针对当前打开的Terminal窗口)
export http_proxy="http://127.0.0.1:1080"
export https_proxy="http://127.0.0.1:1080"
export all_proxy="socks5://127.0.0.1:1086"
 
永久使用代理(针对所有打开的Terminal窗口)
 
bash(配置~/.bash_profile)
在~/.bash_profile追加代理参数配置
echo export http_proxy="http://127.0.0.1:1080" >> ~/.bash_profile
echo export https_proxy="http://127.0.0.1:1080" >> ~/.bash_profile
echo export all_proxy="socks5://127.0.0.1:1086" >> ~/.bash_profile
使代理参数配置立即生效
source ~/.bash_profile
 
zsh(配置~/.zshrc)
在~/.zshrc追加代理参数配置
echo export http_proxy="http://127.0.0.1:1080" >> ~/.zshrc
echo export https_proxy="http://127.0.0.1:1080" >> ~/.zshrc
echo export all_proxy="socks5://127.0.0.1:1086" >> ~/.zshrc
使代理参数配置立即生效
source ~/.zshrc
 
测试代理是否成功(不能通过ping检测,ping不会走代理)
代理成功输出内容包含
status: 200 OK
代理失败输出内容
curl: (7) Failed to connect to 127.0.0.1 port 1080: Connection refused
 
查看当前代理参数配置
echo $http_proxy;
echo $https_proxy;
echo $all_proxy;
 
全局代理下自动设置Terminal脚本(注意:一定要先打开代理模式,而且必须是全局代理模式,再打开Terminal)
在~/.zshrc添加下列内容
export http_proxy=`scutil --proxy | awk '\
/HTTPEnable/ { enabled = $3; } \
/HTTPProxy/ { server = $3; } \
/HTTPPort/ { port = $3; } \
END { if (enabled == "1") { print "http://" server ":" port; } }'`
export http_proxy="${http_proxy}"
 
export all_proxy=`scutil --proxy | awk '\
/SOCKSEnable/ { enabled = $3; } \
/SOCKSProxy/ { server = $3; } \
/SOCKSPort/ { port = $3; } \
END { if (enabled == "1") { print "socks5://" server ":" port; } }'`
export all_proxy="${all_proxy}"
使配置立即生效
source ~/.zshrc
 
参考链接
https://www.cnblogs.com/DeviLeo/p/5798255.html(MacOS X Terminal中设置代理)
https://blog.kelu.org/tech/2017/06/19/setting-socks5-proxy.html(设置 socks5/http 代理,可用于git和shell终端)
https://www.hi-linux.com/posts/48321.html(通过 ProxyChains-NG 实现终端下任意应用代理)
http://www.voidcn.com/article/p-xtdshbdf-mc.html(Mac 为 Homebrew 设置代理)
 
 
 
 
 

MacOS代理设置(桌面应用代理设置&Terminal代理设置)的更多相关文章

  1. HttpWebRequest提高效率之连接数,代理,自动跳转,gzip请求等设置问题

    先设置4个: [csharp] webrequest.ServicePoint.Expect100Continue = false; //是否使用 Nagle 不使用 提高效率 webrequest. ...

  2. 如果nginx 中worker_connections 值设置是1024,worker_processes 值设置是4,按反向代理模式下最大连接数的理论计算公式: 最大连接数 = worker_processes * worker_connections/4

    如果nginx 中worker_connections 值设置是1024,worker_processes 值设置是4,按反向代理模式下最大连接数的理论计算公式: 最大连接数 = worker_pro ...

  3. 写了一个Mac快速设置、打开和关闭Web代理的Shell命令

    缘由(痛点) 每次在Mac上设置Web代理,都需要点开"系统偏好设置 -- 网络 -- 高级 -- 代理",然后分别设置Web代理(HTTP)和安全Web代理(HTTPS),设置完 ...

  4. [Fedora 20] 设置Terminal快捷键 + 设置桌面快捷方式 + Terminal透明解决方案

    一.设置Terminal快捷键 刚安装Fedora的时候,习惯性的按Ctrl+Alt+T可是终端怎么都不出来,这才意识到Fedora和Ubuntu是不一样的,于是自己设置快捷键 1.进入All set ...

  5. SqlServer 更改复制代理配置文件参数及两种冲突策略设置

    原文:SqlServer 更改复制代理配置文件参数及两种冲突策略设置 由于经常需要同步测试并更改代理配置文件属性,所以总结成脚本,方便测试. 可更新订阅的冲突策略有两种情况:一是在发布中冲突,即订阅数 ...

  6. Win10家庭版设置桌面右键更换桌面壁纸

    Win10家庭版设置桌面右键更换桌面壁纸.. ------------------------- 这是设置之前的右键快捷菜单.. ------------------------- 开始设置:右键桌面 ...

  7. macos下mongoDB 3.4.5 添加用户、设置权限

    macos下mongoDB 3.4.5 添加用户.设置权限   在项目中需要根据项目运行环境访问,以不同的身份访问各自的db,所以研究了一下MongoDB的 需求: 给MongoDB添加两个用户分别用 ...

  8. win10 常用设置 桌面出来计算机图标,固定桌面摆好的图标设置方法,电脑设备ID方法

    win10 常用设置 桌面出来计算机图标,固定桌面摆好的图标设置方法 桌面右键-->显示设置-->桌面图标设置 电脑设备ID:xxx查看方法:桌面右键-->显示设置-->关于

  9. python实现抓取必应图片设置桌面

    源码参考https://github.com/vbirds/pyWallpaper,代码风格不错 本人只是将其适配到python3.5,并消除一些bug,源代码中桌面地址未使用绝对路径导致win10 ...

随机推荐

  1. Redis源码解析:30发布和订阅

    Redis的发布与订阅功能,由SUBSCRIBE,PSUBSCRIBE,UNSUBSCRIBE,PUNSUBSCRIBE,以及PUBLISH等命令实现. 通过执行SUBSCRIBE命令,客户端可以订阅 ...

  2. PHP学习1.5-预定义超全局数组变量

    1.PHP 预定义的超全局变量数组 特性: a.特殊的数组,操作方式没有区别 b.不用声明,php脚本中默认存在,因为在php中不用定义,所以在自定义变量是应避免和预定的全局变量同名 c.在全局范围内 ...

  3. Zigbee安全入门(一)—— 技术介绍和安全策略

    么是Zigbee? Zigbee说白了就是类似wifi.蓝牙的一种交换数据的方式,学术点说就是低成本.用于低功耗嵌入式设备(无线电系统),用以促进机器与机器之间高效且有效通信(通常相距10-100米) ...

  4. JS高级---学习roadmap---5 parts

    JS高级---学习roadmap---5 parts part 1-3 part 4-5

  5. python禁止函数修改列表的实现方法

    python禁止函数修改列表的实现方法 有时候,需要禁止函数修改列表.例如要对裂变进行修改操作,也要保留原来的未打印的设计列表,以供备案.为解决这个问题,可向函数传递列表的副本而不是原件:这样函数所做 ...

  6. id生成器

  7. [jnhs]未完待续HttpServletRequest示例

    uri: /kaihu/showip.html method: GET QueryString: null Parameters: Headers: Name: host Value: localho ...

  8. 洛谷P1311 [NOIP2011提高组Day1T2]选择客栈

    P1311 选择客栈 题目描述 丽江河边有n 家很有特色的客栈,客栈按照其位置顺序从 1 到n 编号.每家客栈都按照某一种色调进行装饰(总共 k 种,用整数 0 ~ k-1 表示),且每家客栈都设有一 ...

  9. 从0开始学习 GitHub 系列之「05.Git 进阶」

    关于 Git 相信大家看了之前一系列的文章已经初步会使用了, 但是关于Git还有很多知识与技巧是你不知道的,今天就来给大家介绍下一些 Git 进阶的知识. 1. 用户名和邮箱 我们知道我们进行的每一次 ...

  10. go struct 工厂